Skip to Content
Technical Articles
Author's profile photo Deepak MP

How to Fetch Delta Record from Successfactors using CPI Successfactors Soap Adapter

About the Author:

I work as a Developer in Cloud Platform Integration and work predominantly in building and maintaining CPI adapters. Adapters are used to integrate systems with different platform. I specialize in CPI Successfactors Adapter, which is used to integrate systems with Successfactors.

Why This Article:

We found users of CPI Successafctors adapter finding it difficult to understand how to fetch delta records from Successafctors system.

So i thought it would be good if i write a step by step instructions explaining how to do the same.

What to expect in this article:

In this article we will explain how to configure CPI successafctors Adapter to fetch Delta records from Successfactors System.

What are Delta Records:

Delta in mathematical term mean Change or Difference.

So a Delta on database records equates to records that have changes.

How does it work:

When a Query operation is performed with Delta, CPI Successfactors adapter fetches all the records in the first run and in the second run it fetches only those records that are modified after the first run.

How to configure Delta in CPI Successfactors Soap adapter:

Lets configure the CPI Successfactors adapter to perform delta query operation.

1.Create a Integration Project

In this example we are fetching delta records from Successfactors Soap adapter and the records are sent to SFTP server.

2. Model Delta Query operation

Enter Successfactors connection details and click on Select.

Model operation requires you to connect to the Successfactors system. Enter the Successfactors connection details and click on Connect.

In the Entity Selection dialog, Select the table that needs to be queried. In our scenario we are querying User table.

Select the Columns that needs to be fetched from User table.

┬áSelect the Filter tab and under “Filter by” column select the filed from the User table, using which Delta operation will be performed. The filed that is selected should be of DateTime type, no other filed is eligible for Delta operation.

In our example we have selected “Lastmodified” column, whose value will be used to determine the Delta operation.

Under “Operator” column select “>”

Under “Input Type” column select “Delta Sync”, the value column will be auto populated with “maxDateFromLastRun”.

Now click on Ok.

Your final query will look like this.

SELECT jobTitle, keyPosition, lastModified FROM User WHERE lastModified > to_datetime('${deltasync.maxDateFromLastRun}')

Save the changes and deploy the iflow.

In the first run you will be getting all the records, from the second run onwards you will be getting only Delta records.

Conclusion:

In this article we understood how to configure CPI Successfactors Soap adapter to fetch Delta records from Successfactors system.

Assigned tags

      6 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Venkat P
      Venkat P

      Hi Deepak,

      Thanks for detailed explanation.

       

      Thanks,

      Venkat.

      Author's profile photo Victor Joseph
      Victor Joseph

      hmm cool

      Author's profile photo Victor Joseph
      Victor Joseph

      Welcome to the ONLY and comprehensive Technical course on Successfactors. More Information over the below link: SAP Successfactors Technical Course OData API and SFAPI API

      Author's profile photo Victor Joseph
      Victor Joseph

      For any kind of integration with SAP Successfactors , this is the must have course.
      The course Details at: https://www.youtube.com/watch?v=1OtUTsHi_jE

      Such a comprehensive course and taught in from the scratch, just the one I would recommend for any integration consultant and architect; its made available with money back guarantee , like it or money will be returned in 30 days.
      Following is the course content, wherein more than 90% of the sessions are having hands on practical sessions and not only involving ppt slides:
      Section 1: Introduction
      1. Introduction
      Section 2: SFAPI : Successfactors SFAPI URI and wsdl
      2. What is the Data Center URL
      3. Data Center URL significance
      4. Gathering Data Center URL
      5. Gathering Data Center URL continuation
      6.* Further Steps , SFAPI URL and others
      7. Formulation of SFAPI URL
      8. SFAPI wsdl
      9. SFAPI Enabled?
      Section 3: Soap UI Set Up
      10. SOAP UI Download and Install
      11. SOAP UI Configuration changes, in view of Successfactors' TLS v1.0 disablement
      Section 4*: Creating an API User ID to make SFAPI call
      12. Creating an User ID for the SFAPI calls
      13. Creating User IDs via Option 1(Provisioning)
      14. Creating API User IDs via Option 2.1 (Successfactors Application UI)
      15. Creating API User IDs Option 2.2 (Import Employee via SFSF Application UI)
      Section 5*: Setting the Password for the API User
      16. Setting the Passwords for the API User IDs created above
      17. Setting the Password for the API User - Option 1.1
      18. Setting the Password for the API User - Option 1.2
      19. Setting the Password for the API User - Option 2
      20. Setting Password for the User - Option 3 and 4
      21. Considerations when SSO is enabled
      22. Considerations for SSO - Enabling the loginMethod field
      23. Making First SFAPI call !
      Section 6: SFAPI Methods And Parameters
      24. SFAPI Methods
      25. Understanding SFAPI wsdl
      26. Preparation for the Hands ON Sessions on API calls
      27. Setting API User login exception
      28. Making the call to SFSF to retrieve the List of the SFAPI SFObjects
      29. Making the SFAPI Call for Session Management and MetaData Inspection methods
      30. SFAPI call for Data Query Category (query and queryMore)
      31. SFAPI call for Data Manipulation Category (upsert call)
      32. SFAPI Call for Asynchronous Operations
      Section 7: OData : Tools to make the OData call
      33. Postman Set Up
      34. SOAPUI : Making Rest Calls from SoapUI
      35. Advanced Rest Client from Chrome
      36. Chrome/FireFox Browser
      Section 8: Odata Basics (with relation to Successfactors Odata service)
      37. Odata Introduction and Structure Components
      38. OData Basics : Service Document vs. Service Metadata Document
      39. OData Basics : Entity Metadata Document-comparison with other documents
      40. OData Basics : How to gather Service Document , Service and Entity Metadata Docs
      41. OData Basics : Understanding Service Metadata Document - EntitySets , EntityType
      42. OData Basics : Understanding Service Metadata Document - AssociationSet and Type
      43. OData Basics : Understanding Service Metadata Document - Navigation Property
      44. OData Basics : Understanding Service Metadata Document - Function Imports
      45. OData Basics : Understanding Entity Metadata Document
      Section 9: OData URI
      46. OData URI : Introduction and How to gather the service root uri for Odata calls
      47. OData URI : URI and its components - All components
      48. OData URI : URI and its components - Resource Path -part I
      49. OData URI : URI and its components - Resource Path -part II
      50. OData URI : URI and its components - Query Options
      Section 10: OData Query Options
      51. OData Query Options: $orderby
      52. OData Query Options: $top and $skip
      53. OData Query Options: $top + $skip combined with $orderby
      54. OData Query Options: $filter - Introduction
      55. OData Query Options: $filter-supported Logical Operators
      56. OData Query Options: $filter-supported Arithematic Operators
      57. OData Query Options: $filter-supported Grouping ,Customized & String Operators
      58. DateTime and DateTimeOffset DataType fields
      59. OData Query Options: $filter - supported DateTime Operators -Part I
      60. Time DataType fields
      61. OData Query Options: $filter-supported DateTime Operators -Part II
      62. OData Query Options: $filter-supported Numeric Datatypes
      63. OData Query Options: $filter-supported Boolean Datatype
      64. OData Query Options: $expand
      65. OData Query Options: $format
      66. OData Query Options: $select
      67. OData Query Options: $inlinecount
      Section 11: OData API User Permissions
      68. OData : creating an API user and assigning the password
      Section 12: Effective Dated Entities
      69. Effective Dated Entities - What are They?
      70. Effective Dated Entities - How are they defined?
      71. Effective Dated Entities - The Concept
      72. Effective Dated Entities - Advanced Concept
      73. Different Modes in which Data can be entered in Successfactors
      74. Concept of fromDate, toDate and asOfDate for Effective Dated Entities
      75. Concept of fromDate, toDate and asOfDate for Advanced Effective Dated Entities
      76. Initial data entry : Impact on effective dated objects
      77. Correction Mode data entry : Impact on effective dated objects
      78. Edit Mode data entry : Impact on effective dated objects
      79. Insert and Delete Mode data entry :Impact on effective dated objects
      Section 13: Effective Dated Entities behavior with Navigation
      80. Effective Dated Entities behavior with Navigation : Rules
      81. Effective Dated Entities behavior with Navigation : Advanced navigation concepts
      Section 14: Effective Dated Entities : How can they be queried
      82. Effective Date Entities: multiple parameters available to query 'em
      83. Effective Dated Entities: Querying involving from/to/asOfDate
      84. Effective Dated Entities: Querying involving start/endDate
      85. Effective Dated Entities: Logic system follows when from/to/asOfDate are present
      86. Effective Dated Entities: lastModifiedOn\DateTime parameters Rules
      87. Effective Dated Entities-filter by lastModifiedDateTime scenarios Part-I
      88. Effective Dated Entities-filter by lastModifiedDateTime scenarios Part-II
      89. Effective Dated Entities-filter by lastModifiedDateTime scenarios Part-III
      90. Effective Date Entities-filter by lastModifiedDateTime - Final Algorithm
      Section 15: Effective Date Entities - Behavior with $expand
      91. Effective Dated Entities behavior with $expand - Rules
      92. Effective Dated Entities behavior with $expand - Further understanding - partI
      93. Effective Dated Entities behavior with $expand - Further understanding - partII
      Section 16: OData APIs : Push Operations
      94. OData APIs : Push Operations : Overview
      Section 17: OData APIs : Push Operations : INSERT
      95. Section Overview : OData APIs : INSERT
      96. INSERT : Is the operation supported by entity, required fields, URI, HTTP Verb
      97. INSERT : Request Body : Are all fields supported for the operation?
      98. INSERT : Allowable Field Values - Data Types and MaxLength
      99. INSERT : Allowable Field Values - PickLists
      100. INSERT : Allowable Field Values - MDF Objects
      101. INSERT : Allowable Field Values - Navigation Links
      102. INSERT : Allowable Field Values - OptionId or ExternalCode (PickList values)
      103. INSERT : Perform Insert on the Entity via OData API
      104. INSERT : Can Multiple Calls be posted in one OData Call
      Section 18: OData APIs : Operations on Links
      105. OData APIs : Links Overview
      106. OData APIs : Query Operation On Links/Navigation
      107. OData APIs : Create Operation on Links
      108. OData APIs : Delete Operation On Links
      109. OData APIs : Update Operation On Links
      Section 19: OData APIs : Push Operations: UPDATE
      110. UPDATE : Perform Update on the Entity via OData API
      111. UPDATE : Perform a Replace Operation
      112. UPDATE : Perform a Merge Operation
      113. UPDATE : Some additional differences between Replace and Update Operation
      Section 20: OData APIs : Push Operations : UPSERT
      114. UPSERT : Introduction and initial call
      115. UPSERT : Demystifying User and PerPerson relationship - a specific challenge
      116. UPSERT : Further discussion over Upsert
      117. UPSERT : processing parameter purgeType (full)
      118. UPSERT : Which all entities support purgeType=full
      119. UPSERT : processing parameter purgeType (incremental)
      120. UPSERT : purgeType behavior with NO_OVERWRITE property of Entity
      121. UPSERT : Understanding the EmpGlobalAssignment Object
      122. UPSERT : processing parameter suppressUpdateOfIdenticalData
      123. UPSERT : processing parameter fileLocale
      124. UPSERT : Multiple Requests in one call
      125. UPSERT : Multiple Inline Entity Types in one call -Part 1
      126. UPSERT : Multiple Inline Entity Types in one call -Part 2
      127. UPSERT : Avenue for Performance Improvement of Upsert call
      Section 21: OData APIs : Operation : DELETE
      128. DELETE : Deleting the entities

      129. Use Case : Creating and Querying PickList entries
      130. Use Case : Function Import : Add or remove users from the Static Group

      Author's profile photo Jonas Costa
      Jonas Costa

      Hi @Deepak

       

      Thanks for your explain.

      But, when I have a current integration running on CPI with a standard API, like Employee Central to HCM employment informations, how can I change for this integration to work on delta sync mode?

       

      Thank you!

      Author's profile photo Manoj Kumar Pothuganti
      Manoj Kumar Pothuganti

      Hi Deepak

      Can you please help me with below query:

      Will This return Effective Dated records as well ?
      Case:
      Record edited today, to a future dated effective date.

      Will the record returned in current delta run or in the delta run when changes get effective ?