SAP Knowledge Base Article - Public

3082922 - How to configure an integration with an XML output file to query all records of one-to-many associations in Integration Center - SAP SuccessFactors

Symptom

In Integration Center, with simple CSV file output integrations, it's not possible to get information of all child records when there's a one-to-many association between entities.

For that purpose, you must use one of these types of integration outputs, since they present data in a structured and hierarchical way:

  • JSON
  • XML
  • EDI/Stacked

In this KBA, we'll show a sample configuration of the XML output type.

Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental.

Environment

  • SAP SuccessFactors HCM Suite
    • Integration Center

Resolution

Let's say we want to export compensation information of employees in our instance, and we want to include information about the pay components associated to the compensation records as well. The API entity corresponding to compensation information is EmpCompensation, and the one corresponding to recurring pay component is EmpPayCompRecurring.

EmpCompensation has a one-to-many relationship to EmpPayCompRecurring, meaning that one compensation information record may have multiple pay component records associated to it.

Initial setup and simple field mapping

Go to Integration Center -> My Integrations -> Create and select the XML output type:

On the Configure Fields tab, we'll see a 'ROOT' element, which you can rename to the root entity's name (in the case of our example EmpCompensation) or any other name which you prefer:

Now, select the root element, click on the '+' button and finally on 'Add Child Element':

We should include at this step all the fields from the root entity that we want, by clicking on the child element and selecting 'Change Association' to define the field's mapping. Here I chose the 'startDate' field:

Mapping one-to-many associations/navigations to child records

Now comes the part where we add the association to the pay components. First, add another element under the root element which will correspond to the associated child records. I've named it 'EmpPayCompRecurring' for the sake of clarity. Then, select it and click on 'Add Child Element':

I've renamed the new element to 'payComponent', which is one of the fields in the EmpPayCompRecurring entity that I want to extract:

Mapping the 'EmpPayCompRecurring' element to the 'empPayCompRecurringNav' field via 'Change Association':

Mapping the 'payComponent' element (child of EmpPayCompRecurring) to the 'payComponent' field:

On the right we can see some sample output records:

See Also

How to create EDI stack integration for one to Many object relationship

Integration Center Handbook

Keywords

create, extract, export, integration, center, job, one, to, many, child, parent, record, fetch, query, entity, navigation , KBA , LOD-SF-INT-INC , Integration Center , LOD-SF-INT , Integrations , LOD-SF-INT-INC-ODATA , ODATA API In Integration Center , How To

Product

SAP SuccessFactors HCM Suite all versions

Attachments

image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png