MyRapidi
MyRapidi

Search our Wiki

Source Control with Salesforce com [Deprecated]

Reading only changed data from Salesforce.com

 

When reading from Salesforce.com we have for a long time supported reading only the data (accounts or other objects) that was changed or created since the last transfer of data. This is done when you specify or select the field "DBSourceControl" in the field "Source Control Field" under Source Control on a Transfer. This will trigger some additional functionality in the Rapidi central service that uses the SFDC getUpdated method to retrieve a list of all the Ids of objects changed in a specified time interval. We get the Starting time from the RTI entry for this Transfer and the Ending time is the current SFDC server timestamp.

 

So to use the Source Control feature when reading from SFDC, just specify DBSourceControl in the Source Control Field.

 

Getting changes from SFDC faster (but risk transferring changes multiple times)

 

However the getUpdated method only takes into account the date, the hour and the minute (and ignores the seconds). This means that the last changes done in SFDC within the last minute might not be returned by the call to getUpdated (but would be returned next time the transfer runs).

In some time critical transfers and specially in combination with the SFDCScheduleTrigger feature, this could result in a delay of transferring the data which might not be acceptable.

 

We have now added an option that the central service will automatically add one minute to the current timestamp when doing the getUpdated call to SFDC. This will ensure that all changes also from the last minute also get transferred right away. But it will also most likely result in reading some records again next time the transfer is run (as we are forced to save the SourceControl as the current server Timestamp value from Salesforce - without the added minute, to avoid missing some records later). This means that when opting to use this feature, you need to check that your transfers will have no problem if records are transferred more than one time !

 

The feature is enabled using a server side parameter (on your Rapidi Central service) called "SForceSCAddMinuteToLast" - default value is 0 and to enable the feature it needs to be set to 1. You need to be on central version 3.2.92b or later to use this. Please contact our support to enable this feature. If enabled, the feature will be enabled for all transfers.