Skip to Content
avatar image
Former Member

HCI: Concatenate multiple SF tables

Hi experts,

I am doing a scenario where SF is the sender. We are extracting information from SF using oData. We have to pull data from SF with multiple tables. Since the SF adapter can only pull from one tabe/entitySet per each adapter, how can I do this if I need to pull data from 3 tables? I have read regarding request-reply, is this what I need for this requirement?

Thanks.

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

7 Answers

  • Best Answer
    Jul 12, 2017 at 06:31 AM

    Hello Raye,

    Please find the below details.

    You can query from first entity and then later on enrich it with other entities using combine option [ If all the 3 entity calls are independent of each other ]

    You can right click on Request Reply and then switch it Content Enricher [ With Aggregation Algorithm Combine ].Output after last content enricher would be combined output from all the 3 entities query [You can use Message Mapping and transform it ].

    Regards,

    Sriprasad Shivaram Bhat

    Add comment
    10|10000 characters needed characters exceeded

  • Aug 27, 2018 at 05:46 PM

    Hello Andrea,

    Could you please create new thread with error details from ljs trace file if below didnt help you.

    https://launchpad.support.sap.com/#/notes/0002656227

    Regards,

    Sriprasad Shivaram Bhat

    Add comment
    10|10000 characters needed characters exceeded

  • Aug 27, 2018 at 04:14 PM

    Hello Sriprasad,

    I have a similar requirement in HCI because I have to enrich Position data coming from SF OData "Position" with Employee data coming from different SF OData sources ("EmpJob", "EmpCompensation","EmpPayCompNonRecurring","PerPerson").

    I tried to use the same scenario you described but I have an issue when calling the first content enricher and I get this error that I don't know how to solve:

    com.sap.gateway.core.ip.component.odata.exception.OsciException: Bad Request : 400 : HTTP/1.1

    OData Method : GET_FEED Request URI : GET https://api012.successfactors.eu/odata/v2/EmpJob?$expand=contractTypeNav,costCenterNav,employeeClassNav,customString4Nav,customString5Nav,customString6Nav,emplStatusNav,jobCodeNav&$select=seqNumber,startDate,userId,businessUnit,countryOfCompany,costCenter,company,managerId,event,division,department,emplStatus,endDate,fte,position,contractTypeNav/externalCode,costCenterNav/cust_HFM,costCenterNav/cust_DescrHFM,costCenterNav/cust_Region,costCenterNav/cust_Typology,costCenterNav/name_defaultValue,employeeClassNav/externalCode,customString4Nav/externalCode,customString5Nav/externalCode,customString6Nav/externalCode,emplStatusNav/externalCode,jobCodeNav/name_defaultValue,jobCode&$top=200&$skip=0 HTTP/1.1 Request Headers : Accept : application/atom+xml Content-Type : xml

    This is the integration flow I developed till now:

    Could you please help me to solve the issue?

    Thank you

    Regards,

    Andrea

    Add comment
    10|10000 characters needed characters exceeded

  • Sep 10, 2018 at 04:15 AM

    Hi Andrea, Where you able to solve this?

    I have the same issue!


    Thanks

    Alex

    Add comment
    10|10000 characters needed characters exceeded

    • Hi Alejandro,

      no, unfortunately I still have the same issue and I didn't find any documentation that talk about how to solve it

      Any suggestions from your side are appreciated

      Thank you

      Samuele

  • Nov 24, 2018 at 04:17 AM

    Hello Andrea,

    Add a content modifiier just before content enricher and delete all headers then it should work.

    Refer below blog,

    Clear headers

    Regards,

    Sriprasad Bhat

    Add comment
    10|10000 characters needed characters exceeded

    • Hi Sriprasad,

      I am trying to enrich EmpPayCompRecurring with User entity. Please check my enricher snapshot. enricher.jpg

      I have followed your comments and tried removing the headers but in my case I only get the payload from EmpPayCompRecurring and not the enriched content with fields from User entity.

      Please suggest something.

      enricher.jpg (48.0 kB)
  • Dec 07, 2018 at 04:29 AM

    Hi Andrea,

    I userd JOIN and Gather.

    Try that and let me know.


    Cheers,

    Alex

    Add comment
    10|10000 characters needed characters exceeded

  • Jan 17 at 01:46 PM

    Hello Rishab,

    FirstName is not key element in User Entity.Use userId instead it works.

    Regards,

    Sriprasad Shivaram Bhat

    Add comment
    10|10000 characters needed characters exceeded

    • Thanks for a quick reply Sri.

      I have used 'UserId' as key element but it still doesn't work. It still gives me data from only the first entity.

      Scenario: I want to combine the fields from the User entity with EmpPayComRecurring entity fields

      User entity fields (query):

      {

      $select=userId,dateOfBirth,defaultFullName,department,division,email,empId,firstName,gender,jobTitle,location,nationality,payGrade,workerOfPaymentInformationV3Nav/toPaymentInformationDetailV3/PaymentInformationV3_worker,workerOfPaymentInformationV3Nav/toPaymentInformationDetailV3/accountNumber,workerOfPaymentInformationV3Nav/toPaymentInformationDetailV3/accountOwner,workerOfPaymentInformationV3Nav/toPaymentInformationDetailV3/bank,workerOfPaymentInformationV3Nav/toPaymentInformationDetailV3/cust_toPaymentInformationDetailIND/externalName&$expand=workerOfPaymentInformationV3Nav/toPaymentInformationDetailV3,workerOfPaymentInformationV3Nav,workerOfPaymentInformationV3Nav/toPaymentInformationDetailV3/cust_toPaymentInformationDetailIND&$top=2

      }

      EmpPayComRecurring entity fields (query)

      {

      $select=payComponent,startDate,userId,currencyCode,endDate,frequency,createdOn,paycompvalue,payComponentNav/description,payComponentNav/isEarning,payComponentNav/unitOfMeasure&$expand=payComponentNav

      }

      Both of them has 'UserId' and I am using it as a key element for both original message and lookup message. Please have a look at the snip.enricher2.png

      It still gives me Data only from the original message and not enriched one.

      Please suggest.

      Thanks & regards,

      Rishabh Sharma

      enricher2.png (23.0 kB)