cancel
Showing results for 
Search instead for 
Did you mean: 

Unable to post idoc with proper control records

Former Member
0 Kudos

Hi all,

I have a problem with IDoc posting in to SAP system.

the scenario is SOAP --> PO(single stack)-->SAP,when message trying to post in sap idoc filling with wrong control records, if I map correct control records in mapping level it will different from each system like dev,qua,prd so could you please advise how to manage control records and idoc receiver channel settings.

Thanks!

Naveen.

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi Naveen,

> If you want to send data based on system level, the use the below udf to get the corresponding PO system name. Then you can use fix value mapping to populate right field.

String sysName = System.getProperty("SAPSYSTEMNAME");

return sysName;

With the above approach you need select IDOC recv channel with Advanced tab --> Advance option (check box for Apply control records from payload)

> Next Method is disable all EDIDC Mandatroy Fields mapping and Then select Outbound Processing in ICO with Header Mapping --> Sender Communication Component as "INTEGRATION_ENGINE_JAVA_SID"

For this condition (DON'Tcheck for Apply control records from payload) receiver channel.

Thanks,
Himanshu

apu_das2
Active Contributor
0 Kudos

Hi Naveen,

There are 2 possibilities -

1) As Raghu said - if you uncheck apply values from payload then data will be taken from SLD and control data will be created automatically.

2) Check apply values from payload in CC and write one simple UDF to handle control data in different environments.

i.e. Take sender system as input. Now depending on that pitting if else condition hardcode your control data from DEV/Q!/PROD.

Thanks,
Apu

former_member186851
Active Contributor
0 Kudos

Hello Naveen,

Control record will applied from adapter specific attributes if you uncheck apply values from payload.

your ASA values are properly maintained?