This tutorial is to show how to use the new feature Change Data Control (CDC) for handling data changes in Salesforce. With this brand new feature coming out in SKYVVA Spring 17 Release you can customize the data changes of any sObject and sent out the client. It supports an asynchronous mode to collect changed data which we call the change pointer and sent out to the client. The main difference to the streaming API of Salesforce is that data can be bulk as large data. Furthermore customer can freely schedule when the data should be sent e.g. every 5 minutes, 30 minutes etc... With this feature customer don't need to develop such an app to collect data change and sent out to the client. Just use SKYVVA CDC.
With CDC we provide an ability to record all data changes you create on any business object. It will be automatically push to your external system at any time you scheduled. In comparison to the streaming API, you can overcome the limit of sending changes record by record. Here we can bulk and collect changes to be callout in packages meaning that you leverage the best usage of your Salesforce resources. Don’t disturb your online business user while operation hours. Use CDC Scheduler to schedule data changes to be send out at a time.
CDC is made up of two components, the CDD and the CDT. CDC is stand for Change Data Detection and CDT is stand for Change Data Transfer. These two components has different functionality. CDD is a scheduler which is running to call batch Apex in order to collect data change and save all those data into Change Pointer Object. CDT is another scheduler which is running to collect the records from the Change Pointer Object and sent to the external System such as SAP … etc. The Schedule will executes callout as parallel of future, queueable, batch based on priority, integration resource and interface group type (EO/EOIO).
2.1 Create Adapter
This is for an example of creating new Adapter. There are many types of Adapter, but you are going to create Adapter with type as SFDC2SAPPI.
2.2 How to create Adapter Properties
After you created Adapter, you will see a section name Property.
Click on New Property -> select Name: endpoint -> Value: copies the link and paste where you want to transfer your records to. See screenshot below:
This is an example of creating Remote Site Setting:
– Remote Site URL: Paste the same link as in the Property Value that you have just created a moment ago.
In this section, we create Outbound Interface and do Mapping normally.
Step1: You have to configure CDC for an Interface. In order to configure CDC for an Interface you have to open an Interface and checkbox “Use Skyvva Outbound Scheduler”.
Note: “Use Skyvva Outbound Scheduler”: When you checkbox this flag it’s mean that you activate CDC. This flag is used to activate both CDC and CDD.
Step 2: you have to configure CDD. Open an Interface and specifies the parameters as
LastRun is the date from where you define the changed data to be collected.
Open Integration Admin Tap -> Scheduler Tap. Then start the scheduler on an outbound section and set the time as you prefer.
Enter Integration Admin Tap -> CDC Tap -> Integration name -> Interface Name -> Status -> Search
Enter Integration Admin Tab -> Scheduler Tab -> Start the Schedule -> set the minute as you wish
The following screenshots shows how to monitor CDT:
Clicks on Setup -> Jobs -> Apex Jobs
Enter Apex Jobs Monitoring to see CDT workers:
- Future/Queueable process
- Worker (Batch) Process
As a Result:
Checks Message Monitoring Board, it could be any error.