Once you have installed and configured DataSync for ServiceNow, and have successfully set up a dynamic share and understand how it works, there are various optional dynamic share settings that you can configure. These optional features can help you customize your DataSync experience and leverage DataSync's robust capabilities to make your organization's integration processes more powerful and streamlined.

What's on this page?

Explore all of these available features below! 




Data Alignment

Data Alignment provides conflict avoidance to minimize the possibility of records becoming out of sync. For example, Instance A updates a record at the same time Instance B updates the same record—you now have the risk of conflicting records. Data Alignment (using dynamic share), is designed to minimize that risk. 

There are two connected features to achieve data alignment (enable them in the following order):

Immediately post dynamic share outbound messages

This feature is enabled in the queue record. If a dynamic share is targeting a queue that has this property enabled, it will cause their messages to be posted immediately, rather than waiting to have the multioutput processor post these messages on a scheduled basis. If the outbound message is unable to be posted immediately, it will be put into the ready state and then sent along with other outbound messages during the next execution of the multioutput processor job.

Here's how to enable the post immediately feature in a dynamic share:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and select the dynamic share for which you want to enable the feature.

  3. Under General Settings, next to the Target queue, click the (info) icon to preview the record. Then, in the resulting Queues window, click Open Record



  4. In the record's page, check the Post Immediately box.



↑ Go to top of page

Skip delayed updates

Using polling intervals for publish/subscribe messaging creates a potential issue for records to become out of sync if they are updated at the same time. By posting outbound messages immediately, the time frame for this issue is decreased. To further mitigate this potential issue from occurring, the subscribing system will check if the local record has been updated more recently when receiving an update. If so, the update is ignored. 

In order to enable this feature, you need to create a create a subscribe record and enable the post immediately feature outlined in the previous section.

Then, follow these instructions to ignore delayed updates:

  1. In your ServiceNow instance, enter u_psp_properties.list in the Filter navigator on the left.

  2. On the resulting PSP Properties page, under the Name column, enter com.perspectium.skip_delayed_updates in the search bar.

  3. Click the name of the property.

  4. On the resulting property page, in the Value field, enter true.



  5. Click Update.

  6. (Optional!) You can also choose to skip delayed target field updates. This will only work if the table being shared is audited since this will check if the target field has been updated more recently than the subscribed update. To enable this, return to step 2, and search for com.perspectium.skip_delayed_field_updatesClick the property and set Value to true. Then, click update. It is best not to enable this property if there are high volume dynamic shares, as this may impact performance.


↑ Go to top of page




Scheduled sync up

This feature sets up a recurring “catch up” job that incrementally bulk shares out a previous interval of created, updated, or deleted records. Enable this option to capture dynamic record creates, updates, or deletes that may have been missed (if business rules are bypassed programmatically (e.g., via setWorkflow('false');) or automation does not trigger business rules).

A scheduled sync up can be run with or without trigger conditions set up on your dynamic share. If your dynamic share has trigger conditions, records will be shared both out in real time and on the scheduled interval you select. If your dynamic share does not have trigger conditions, records will be shared out on the scheduled interval only.

  • Scheduled sync uses the sys_created_on and sys_updated_on column. This column should be indexed for best performance with scheduled sync up. Find more information on indexing columns here.
  • If you want to capture deletes, verify that the Delete Recovery plugin is activated.

Here's how to enable the feature:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to configure a scheduled sync up for.

  3. In the resulting dynamic share page, click the Scheduled Sync Up tab. To capture only creates and updates, check the Activate sync box. To capture only deletes, check the Activate delete sync box. To capture all creates, updates, and deletes, check both boxes.

  4. (Optional) Use the Run as field to find and select another user to run the sync as another user.

  5. From the Interval dropdown, select the interval at which you want to run the sync up—this interval indicates how frequently a bulk "catch up" share will run for this dynamic share.

  6. Click Update


↑ Go to top of page




Configure business rule timing and order

This feature allows you to specify when business rules should run for dynamic shares. Dynamic shares can replicate data before an action is taken on the record or after an action is taken. These before and after values can be specified in the Business Rule When dropdown of a dynamic share.

Business Rule Before

Dynamic sharing a record using the before option allows you to share the record with journal fields as part of the record's XML. For example, if you share an incident record and specify “before”, the record will come with both the comments and work notes in the incident record's XML. Additionally, using the before option will cause the record to be shared before any after business rules are run. For example, if you have an after business rule that runs to update the record's state based on a specific condition, the after option will share the record out with the updated state, whereas the before option will share it with the previous state.

Business Rule After

If you dynamic share a record using the after option, the comments and work notes will not be part of the record's XML but instead will be records in the sys_journal_field table (upon saving a record into the database, ServiceNow will separate journal fields from the record and save them into the sys_journal_field and sys_audit tables which is why you want to subscribe to the sys_journal_field and sys_audit tables when subscribing on a ServiceNow instance).

Business Rule Async

When running as async, records will be sent out as .bulk, since the records are shared in the background and we will not be able to determine if the record was an insert or update at that point. Also, there is no dependency on “current” or “previous” in the Before Share script (such as checking for a condition where a field “changes”) and the “sequence” of other records being replicated cannot be guaranteed. So a change created when an incident is created where both have dynamic shares may result in the change being shared out before the incident is).

Selecting the async option will cause the trigger condition Update or Insert to be activated and the Delete trigger condition to be deactivated.

Here's how to configure business rule timing for a dynamic share:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to configure business rule timing for.

  3. In the resulting dynamic share page, under General Settings, select your choice from the Business Rule When dropdown.

  4. Click Update



↑ Go to top of page




Dynamic share on non-interactive updates

By default, dynamic shares have a setting that causes data to be shared out only when interactive actions are performed (for example, if a user comments on or resolves an incident), and not when non-interactive actions occur (for example, if a ServiceNow job closes resolved incidents after 7 days or an email engine creates records). 

If you want to enable dynamic sharing of non-interactive updates, here's how:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to share non-interactive updates for.

  3. In the resulting dynamic share page, in the Runtime Settings tab, under Triggers, uncheck the Interactive only box.

  4. Click Update


↑ Go to top of page




Share historical data

Historical data fields refer to fields that were created or updated prior to running your initial dynamic share. You can use this feature to allow for the sharing of the following historical data fields to other ServiceNow instances:

Here'w how:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to share historical for.

  3. In the resulting dynamic share page, in the Runtime Settings tab, under Additional Records, check the Share historical data box.

  4. Click Update


↑ Go to top of page




Share only updated fields on updated records

This feature allows you to dynamic share only the fields of a record that have been updated, instead of resending the entire record. This can be useful when your sharing instance is updated frequently and your subscribing instance(s) is relatively static. Here's how:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to share only updated fields for.

  3. In the resulting dynamic share page, in the Data Enrichment tab, check the Share only updated fields box.

  4. (Optional) Check the Share system fields box to share out the following fields along with the updated fields in the same outbound message:

    • sys_created_by
    • sys_created_on
    • sys_mod_count
    • sys_updated_by
    • sys_updated_on

      You can also use the Select ID dropdown to choose an ID field that will always be dynamic shared out along with your updated field(s). If you don't choose a field from this dropdown, the default ID field that will be dynamic shared out is sys_id.

  5. Click Update.


MySQL error may occur when using Share system fields. When that error is received on the agent, the database will still recover and save the record. However, each record that follows will replace one another since the primary key is altered and not defined

↑ Go to top of page




Share ServiceNow attachments with specified file extensions

This feature allows you share only specific attachment file types (such as .xlsx, .jpg, .csv). If you want to share all attachments with your dynamic share, see ServiceNow attachments.

Here's how to enable the sharing of specific attachments only:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to enable this feature on.

  3. On the resulting dynamic share page, in the Miscellaneous tab, check the Advanced box. This will cause an Advanced tab to appear.

  4. In the new Advanced tab, under the Runtime Settings section, use the Share attachments with these file extensions only field to list your desired file extensions. Your list of extensions must be separated by commas and include no dots or spaces. 

  5. Click Update


↑ Go to top of page




Share previously uploaded ServiceNow attachments

This feature allows you to share out attachments that were updated before your dynamic share was created. You will likely want to use this feature if you have already set up your dynamic share to share out all existing ServiceNow attachments, but also want to share out any previously uploaded attachments. Here's how:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to enable this feature on.

  3. On the resulting dynamic share page, in the Miscellaneous tab, check the Advanced box. This will cause an Advanced tab to appear.

  4. In the new Advanced tab, under the Runtime Settings section, check the Share pending attachments box.

  5. Click Update


↑ Go to top of page




View business rules before a dynamic share runs

This feature allows you to view any business rules that may have an impact on the dynamic share actions that occur (inserts, updates, and/or deletes). This is useful to view since the business rules that run before a dynamic share is executed often have an impact on the order of dynamic share execution. Here's how to view:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to view business rules for.

  3. At the bottom of the dynamic share form, under Related Links, click View Business Rules Before This Share. You will automatically be redirected to a list of Business Rules that will run before dynamic share actions occur.


↑ Go to top of page




View dynamic share domain

On domain-separated ServiceNow instances, dynamic shares are defined in ServiceNow's domain picker, and data will only be dynamic shared within that selected domain.

Here's how to view the domain for a dynamic share's business rules:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to view the domain for.

  3. On the resulting dynamic share page, in the Overview tab, you can see the domain for your dynamic share's business rules next to the Application field. 


↑ Go to top of page




Use audit delete listener

If you're using dynamic share on deletes, this feature ensures that records which may have bypassed the ordinary delete business rule are included in your dynamic share. 

  • You need an admin role to enable this feature.
  • The table you will select for your dynamic share must have auditing turned on—the feature will not appear otherwise. 
  • Delete business rules are often bypassed if a business rule that calls setWorkflow('false') or cascade deletes runs.

Here's how to use the audit delete listener:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to use the audit delete listener for.

  3. On the resulting dynamic share page, under General Settings, check the Delete box. 

  4. Then, in the Runtime Settings tab, under Triggers, check the Use delete recovery listener box (it will only appear if you check the Delete box in step 3.


↑ Go to top of page




Use delete recovery listener

If choosing to dynamic share on deletes, you may want to enable the Use Delete Recovery Listener feature. This feature will ensure that records that may have bypassed the ordinary delete business rule are included in your dynamic share. Unlike the Use Audit Delete Listener feature, this option will always appear regardless of the table being audited or not.

  • You need an admin role to enable this feature.
  • Delete business rules are often bypassed if a business rule that calls setWorkflow('false') or cascade deletes runs.
  • Verify that the Delete Recovery plugin is activated. 

Here's how to use the delete recovery listener:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to use the delete recovery listener for.

  3. On the resulting dynamic share page, under General Settings, check the Delete box. 

  4. Then, in the Runtime Settings tab, under Triggers, check the Use audit delete listener box (it will only appear if you check the Delete box in step 3.


↑ Go to top of page




Share or ignore on specified field updates

These features allow you to either enable or disable dynamic share of your records when specific fields are updated. Here's how:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to choose field/column updates to ignore or share on.

  3. On the resulting dynamic share page, in the Runtime Settings tab, under Triggerscheck the Select column updates to share on or the Select column updates to ignore box.

  4. At the bottom of the page, click the Updated Columns to Ignore or Share On tab, and then click New. If using Google Chrome, you may see a popup asking if you want to leave the site—click Leave.



  5. On the resulting page, from the Column Name dropdown, choose the column/field whose updates you want to share on/ignore from.

  6. Click Submit.

  7. (Optional!) Repeat steps 5 an 6 for additional columns as needed. 

  8. Once you've added all columns, click Update on the dynamic share page to save the changes. 


↑ Go to top of page




Share only selected fields

This feature allows you to include only specific fields in a dynamic share when it is triggered. This can be useful when you don't want to or don't have permission to view names.

Alternatively, you can enable the sharing of selected fields only for ALL ServiceNow dynamic shares in your instance by navigating to Perspectium Control and Configuration > Properties > DataSync Settings and checking the Share fields that belong to the selected table only option.

Here's how to share only selected fields for a specific dynamic share:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to choose specific fields to share for.

  3. On the resulting dynamic share page, in the Data Enrichment tab, check the Share only selected fields box. 

  4. At the bottom of the page, click the Share Selected Fields tab, and then click New. If using Google Chrome, you may see a popup asking if you want to leave the site—click Leave.

  5. On the resulting page, from the Field dropdown, choose the field that you want to dynamic share.

  6. Click Submit.

  7. (Optional!) Repeat steps 5 an 6 for additional fields as needed. 

  8. Once you've added all fields, click Update on the dynamic share page to save the changes. 


↑ Go to top of page




Run a bulk share (on the dynamic share's table)

This feature allows you to schedule a bulk share to run for this table. This may be useful for when you create a dynamic share and want to initially seed the subscriber (another instance or database) with the table's data. This will save the dynamic share and schedule a bulk share to be run. The bulk share will honor the dynamic share's configurations where relevant such as include journal fields, include attachments and filter conditions. The bulk share will be related to this dynamic share so you can see it in the dynamic share's related list.

Here's how:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to run as a bulk share.

  3. On the resulting dynamic share page, click Run a Bulk Share in the top right.

  4. In the resulting popup, click the calendar icon (next to the empty Schedule to run at field) to select the date and time to schedule the bulk share. To run the bulk share right away, leave the field empty. 

  5. Click OK


The dynamic share will save at its current state. For example, if the active box is selected, the dynamic share will save as activated. 

↑ Go to top of page




Share on updated display values

This feature allows you to set up a dynamic share to share out records when the display value changes for a referenced field. This is useful because it ensures that the record has the latest display value field. 

For example, consider a dynamic share for the incident table, where this feature is enabled and the assigned_to reference field is set to share on updated display value field. In this case, if the display value of a sys_user record changes, incident records matching the dynamic share conditions with this updated user in the assigned_to field will be shared out with the dv_assigned_to value updated to the new display value.

Here's how to enable this feature:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to share updated display values on.

  3. On the resulting dynamic share page, in the Runtime Settings tab, under Triggers, check the Share on updated display values box. 

    When you manually set all fields in a table to not be a display field, no records will be shared for updated display values for that table immediately or after that. This is for cases of choosing a display field and after disabling the old display field in a short amount of time. The share will turn on again once a field is selected to be a display field.

  4. At the bottom of the page, click the Display Fields tab, and then click New. If using Google Chrome, you may see a popup asking if you want to leave the site—click Leave.

  5. On the resulting page, from the Field dropdown, choose the field that you want to trigger the share.

  6. Click Submit.

  7. (Optional!) Repeat steps 5 an 6 for additional fields as needed. Alternatively, you can click Add all display value fields, and then remove undesired fields. 

  8. Once you've added all fields, click Update on the dynamic share page to save the changes. 
  • You will have to specify each of the reference fields you want to share, since a dynamic share business rule is added to each reference table in order to trigger and share out the dynamic share table's record.
  • This feature would create two business rules in the sys_dictionary table to share related records when a display field is changed.

↑ Go to top of page




Limit shared child tables

This feature allows you to limits which specific child records are shared when dynamic sharing to another instance. This is useful if you want to share some child records but not others. Here's how:

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to limit shared child tables on.

  3. On the resulting dynamic share page, under General Settings, in the Sharing setup dropdown, select Share all table records and child records or Share the last descending child of each table record

  4. At the bottom of the page, click the Share Child Tables tab—it should be filled with the child records included in that table. If not, you may need to click Update if you had changed the setting in step 2. From here, you can choose which child records you want to share by setting the Value of each record to false to exclude the record (a value set to false will include the record). 

  5. Click Update.

If you have created a new table since creating the dynamic share, the new table will not appear in the Table dropdown. If this is the case, you will have to create a new dynamic share and follow the above instructions during that creation.

↑ Go to top of page




Share deleted attachment

This is an advanced feature! For more information or assistance, contact Perspectium Support. 


If you are bonding your ServiceNow instance to another ServiceNow instance using 
Common Documents, you have the option to share deleted attachments. This feature enables deleted attachments to be captured and sent to the subscribing instance to delete the same attachments. 

Prerequisites

Instructions

  1. In your sharing ServiceNow instance, go to Perspectium > Perspectium Core Shares > Dynamic Share > View Dynamic Shares.

  2. Find and click into the dynamic share that you want to enable this feature on.

  3. On the resulting dynamic share page, in the Miscellaneous tab, check the Advanced box. This will cause an Advanced tab to appear.

  4. In the new Advanced tab, check the box labeled Share Attachment Delete as Common Document Messages.

  5. Click Update


↑ Go to top of page




Share table map

This feature allows you to create table maps for:

  • Attachments
  • Audit logs
  • Journal fields
  • Reference field records (requires additional setup)

To enable the feature, you need to configure your dynamic share to display the PSP Share Table Map related list. Here's how:

  1. Go to Perspectium Perspectium Core Shares Dynamic Share View Dynamic Shares and click into the dynamic share that you want to enable this feature on. OR create a new dynamic share

  2. In the dynamic share, select the menu icon (≡), followed by Configure, and then Related Lists.

  3. On the resulting Related Lists page, find and select the PSP Share Table Map→Parent list from the Available table and click the right arrow (>) to move it into the Selected table.

  4. Click Save

  5. Scroll down and go to the PSP Share Table Map tab. *This is to enable sharing of attachments, audit logs, and journal fields. To enable sharing of referenced field records, skip to step 10.

  6. Click New, and in the resulting form, fill out the following fields like so:

  7. Back in the dynamic share record, go to the Additional Settings tab. 

  8. Select the records that you want to share (include journal fields, include attachments, include referenced field records, and/or include audit log - if you select the last one, a new checkbox will appear that allows you to set specific filters for the audit log, if you wish). Click Update

  9. Click Submit

  10. To enable sharing of referenced field records, go the Referenced Field Records tab.

  11. Click New, and in the resulting form, select the field that you want to target from the Field dropdown. Do not check the Share only selected fields box - this will disable the feature you are trying to enable. For example, you can select caller as the referenced field. 

  12. Click Submit

  13. Now that the referenced field has been set, you need to set the PSP Share Table Maps for the selected table. Following the example above, the caller field points to the Sys User table. As a result, the table map should be pointing to the sys_user table. Go back to the PSP Share Table Maps tab and create a new map, selecting the Table and Table Map fields to correspond with your referenced field (for the caller field, you would select the fields as follows:

Want to validate that your dynamic shares are being shared out correctly? Read how to do so here.


↑ Go to top of page