cancel
Showing results for 
Search instead for 
Did you mean: 

Multi Mapping in SAP PI JDBC adapter

Former Member
0 Kudos

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


Accepted Solutions (0)

Answers (2)

Answers (2)

apu_das2
Active Contributor
0 Kudos

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

arunneerolil
Contributor
0 Kudos

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