---
title: "DataSync Application for Salesforce Features"
canonical: "https://docs.perspectium.com/space/Krypton/721206/DataSync%20Application%20for%20Salesforce%20Features"
format: markdown
---
After following the steps to configure your DataSync application for Salesforce, you can then configure the application to share data out of your Salesforce org. The DataSync application has the following tabs to give you access to its features. Contact  support@perspectium.com  with any questions. Shares The  Shares  tab contains the different options to share data out of your Salesforce org: Dynamic Share A  dynamic share  allows for real-time sharing of Salesforce records as they are created, updated, and/or deleted. In other words, dynamic shares are caused by some triggering event (such as when cases are created, updated, or deleted). The data is shared to a subscriber, which can be the DataSync Agent, or any number of the other applications that Perspectium can integrate with. When selecting the Dynamic Share option you are presented with the following options: Create New Dynamic Share  so you can create a new dynamic share to share out records real time for a selected table (SObject). View Dynamic Shares  to see the dynamic shares you previously created and so you can update and delete them. When creating or editing a dynamic share, do the following to ensure the dynamic share is set up correctly: Click  Save  to first save the dynamic share configuration. After you save, the dynamic share show a preview of the Apex trigger that will be created to capture real time changes. Click  Save Trigger  to save the Apex trigger. Repeat these steps anytime you make changes to the dynamic share. If you prefer, you can modify the trigger directly by doing the following: Since Apex triggers are considered code that requires  test coverage , you will need to have a test class for your Apex trigger to deploy it into production. See the following for an example Apex trigger test class. Bulk Share A  bulk share  is a job that sends out bulk records from your Salesforce org as a pre-filtered range of data, at a point in time all at once. The data is shared to a subscriber, which can be the DataSync Agent, or any number of the other applications that Perspectium can integrate with. When selecting the Bulk Share option you are presented with the following options: Create New Bulk Share  to create a new bulk share to share out records at a point in time for a selected table (SObject). View Bulk Shares  allows you to see the bulk shares you previously created and so you can re-execute them. When creating a bulk share, you can  Save  the bulk share to save the bulk share or click  Execute Now  to save and execute the bulk share. Once a bulk has been executed, the bulk share's configurations cannot be changed but it can be executed again by clicking the  Execute Now  option again. Some notable features for bulk shares: Preview  - The Preview button will allow you to get a preview of how records the bulk share will share out when executed. Clone  - To create a copy of this bulk share. This is useful if you have a current bulk share that's been executed and you want to use it with changes to some of the configurations without having to create a brand new bulk share and reconfigure from scratch. Enable Confirmation  - To have the DataSync Agent validate that it has received all the records shared out as part of this bulk share execution. The bulk share will send out  compare  messages that the Agent will use to validate records were received. If the Agent finds that a record is missing (by verifying the record exists when querying for it by the record's Id), it will send back a  reshare  message telling the Perspectium application in Salesforce to reshare those records. The application will create a new reshare bulk share (named Reshare <Bulk Share Name> Datetime i.e.  Reshare AccountShare 2024-02-07 19:29:03 ) to share out the missing records and another compare message so the Agent can confirm its receive these records. This will repeat until the Agent has confirmed the records are all received. Share Updates Since Then  - To share records only since the last time this bulk share was executed. After the first run (in which all records will be shared based on any filter conditions you enter), the bulk share will then only share any records that were updated since the last time the bulk share executed (using the bulk share's  Started  time as the last time it executed). This is useful if you set up the bulk share in a scheduled bulk share to share out only changes on a scheduled basis. Table Map  - To specify a table map for transforming how records will be shared out.   NOTE :  The  Table Map  and  Fields to Share  options are not compatible with each other. Scheduled Bulk Share Schedule one or more bulk shares to run at a scheduled interval you choose. After creating a bulk share, you can add the created bulk configuration as a child record to be run under the schedule specified within your scheduled bulk configuration. When selecting the Scheduled Bulk Share option you are presented with the following options: Create New Scheduled Bulk Share  to create a new scheduled bulk share and select which bulk shares to be run and at what intervals. View Scheduled Bulk Shares  allows you to see the scheduled bulk shares you previously created and modify their configurations When creating a new scheduled bulk share (or modifying a current one), you can do the following: Select a date and time in the  Scheduled Date Time  field for when to start bulk sharing records, and the  Days   and  Hours   to repeat the process in the  Repeat Interval   field.  In the  Available Bulk Shares , select which bulk shares you want to schedule.  Check the  Active   box to activate the scheduled bulk share.  Click  Save  to save your changes. Queues The  Queues  tab contain the queues in the Perspectium Integration Mesh you use to share out data from your Salesforce org and to subscribe to data into org. For sharing data out of your Salesforce org, you specify a  Shared Queue  where data will be saved into in the Perspectium Integration Mesh to be consumed by a target (such as the DataSync Agent consuming messages to save records into a target database). For subscribing to data into your org (i.e. you want to consume messages from the Integration Mesh that was shared by a different source system), you specify a  Subscribed Queue  in the Integration Mesh you will be consuming messages from.   NOTE :  To work with the  Enable Confirmation   bulk share feature, you will need to create a subscribed queue in the format of  psp.out.salesforce.<instance>.<organization_name>  in lower case and replacing spaces with  _  so the Agent can send back messages for any missing records. The Instance and Organization Name can be found in  Company Information :  For example, in the above screenshot where the Organization Name is  PSP DS  and the Instance is  NA244 , you would create a subscribed queue named  psp.out.salesforce.na244.psp_ds . Some notable features when creating a new queue (or editing a current queue):  Direction  - The direction of the queue, if its for sharing data out of your org ( Share ) or to subscribe to data into your org ( Subscribe ). Alias  - A name as a reference to the queue. Alias are used to give a "name" to a queue so your dynamic share Apex trigger created in your sandbox org can be deployed in your production org. When migrating your Apex trigger from sandbox to production using change sets, the Apex trigger code  cannot  be changed. So using the same alias name when creating a queue in sandbox and creating a queue in production allows you to specify different queues in your sandbox and production orgs that can use the same Apex trigger. Queue Encryption Key  - (Optional) Enter an encryption key for any shares/subscribes that use this queue.   If not entered, the default key entered in Properties will be used .   To ensure compatibility with all encryption methods,   you will have to  enter an encryption key of at least 32 characters.   NOTE :  Because of how Salesforce encrypts sensitive information fields, the  Queue Password  and  Queue Encryption Key  will not be populated when you edit an existing queue.  You do not have to re-enter these values when editing a queue unless you want to change their values.  Leaving them blank when editing a queue and clicking  Save  will retain the current values. Once you've created a queue and saved it for the first time, you can come back to the Queue's form and the following options will be available: Get Queue Status  - To check how many messages are currently in the queue in the Perspectium Integration Mesh. This will allow you to verify if your queue credentials are valid. Show Encryption Key  - To see the encryption key set for this queue. If an encryption was not entered, the message  No encryption key set for this queue  will be shown (in which case the default encryption key will be used). Tools Click  here  to learn more about the different tools available for the Perspectium application. Messages The  Messages  tab contain the messages being sent to and received from the Perspectium Integration Mesh. Outbound Messages  contains records that are queued to be sent to the Perspectium Integration Mesh. Once the messages have been sent their status will update to  Sent .    NOTE : If the  Status  is at "Ready", the  Time Processed  field will be blank. Once the status is "Sent", you will be able to see how long it took for the outbound message to be sent.   In the list view of  Outbound Messages  you will see the following options: Delete All -  To delete all messages in Outbound Messages.  Delete replicator   messages  - To delete all messages in Outbound Messages with a topic of  replicator. Delete non-replicator   messages  - To delete all messages in Outbound Messages that do not have a topic of  replicator.   NOTE : The above delete options only delete messages in the Outbound Messages table in the Perspectium application in Salesforce to help quickly clean up data in this table. This does not affect the messages in the queues in the Integration Mesh. Inbound Messages  contains records that were shared to this Salesforce instance by other sources. The data flowing into this table will insert or update their respective tables and record once they are processed.  When clicking on a message (both inbound and outbound), you will see a  Decrypt Value  option. This option will decrypt the message's value field (using the encryption key from the queue or the default key if a key wasn't set in the queue) so you can see the encrypted content that was sent/received from the Integration Mesh. Dashboard The  Dashboard  tab contain an overview of your data exchanges with the Perspectium application in your Salesforce org. The Dashboard shows the following information: Queues -  A list of the queues you have currently configured. You can toggle between seeing all queues, shared queues and subscribed queues. Messages -  A list of outbound messages. You can toggle between seeing all messages, those that have a status of  Error  (to troubleshoot issues further), those that have a status of  Ready  (messages ready to be sent to the Integration Mesh) and  Sent  (messages that have already been sent to the Integration Mesh). Bulk Share History chart  - A bar chart showing how much data you've bulk shared by date. If you have not executed any bulk shares, the chart will show the message  No bulk share execution history found. Run some bulk shares to show history here.    NOTE :  Salesforce's charting capabilities will reflect an empty chart if you share a similar amount of data for all days (since it will appear as a line at the bottom of the chart). Once your bulk sharing levels start to differentiate, then the chart will show bars properly. Bulk Shares -  A list of the bulk shares you have currently configured. Dynamic Shares -  A list of the dynamic shares you have currently configured.