Skip to Content

Multi Mapping in SAP PI JDBC adapter

Hi Experts,

I am using SAP PI 7.4. I am implementing one scenario for MDM-->PI--> Teradata.

Source structure:

<MT_Employee>

     <Record>

          <Details>

               <Name/>

               <Age/>

               <Educational_Details>

                    <College/>

                    <Department/>

               </Educational_Details>

               <Professional_Details>

                     <Company>

                     <Total_Experience>

               </Professional_Details>

               <Hobby>

           </Details>

     </Record>

</MT_Employee>

The requirement is: Sorce details (Name, Age, Hobby)  will go to target "DT_Employee" table. Source "Educational_details" will go to target "DT_EduDeatis" table. Source "Professional_Details" will go to "DT_ProfDetails" table. If the source file contains one record, then I am able to achieve this. But if the source file contaibs multiple record, then only one record (first record) is getting generated in the target table. Please advise how to achieve the multiple record load if the source file contains multiple records.

Note:  I have created the target structure as below-

<StatementName1>

     <DT_Employee action="INSERT">

          <table>DT_Employee</table>

          <access>

               <Name/>

               <Age/>

               <Hobby/>

          </access>

     </DT_Employee>

</StatementName1>

<StatementName2>

     <DT_EduDetails action="INSERT">

          <table>DT_EduDetails</table>

          <access>

               <College/>

               <Department/>

          </access>

     </DT_Edu_Details>

</StatementName2>

<StatementName3>

<DT_ProfDetails action="INSERT"> 

          <table>DT_ProfDetails</table>

          <access>

               <Company/>

               <Total_Experience/>

          </access>

     </DT_ProfDetails>

</StatementName3>

Mapping Logic: Detail-->StatementName1 (Occ:1..Unbounded)

                              Educational_Details-->Exists-->CreateIf-->StatementName2 (Occ: 0..Unbounded)

                              professional_Details-->Exists-->CraeteIf-->StatementName3 (Occ: 0..Unbounded)

Thanks & Regards,

Moumita


Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

2 Answers

  • Aug 21, 2015 at 01:29 PM

    Moumita,

    Are you sure that the mapping output has multiple records under the respective statement names ?

    Activate in logging as per Note 801367 for further analysis.

    JDBC Receiver Adapter Parameters 1. Parameter name : logSQLStatement Parameter type : Boolean Possible Parameter Values : true (OR) false Parameter value default : false Category : 2

    regards, Arun

    Add comment
    10|10000 characters needed characters exceeded

  • Aug 21, 2015 at 04:33 PM

    Just check your mapping .. Simply its a problem of occurrence ... Look into the mapping properly try to map with record once.

    Just concentrate on mapping it will solve your problem ...All other things are fine.

    Thanks,

    Apu

    Add comment
    10|10000 characters needed characters exceeded