IDOC Control Segment EDI_DC40 – Mandatory fields for IDoc_AAE Adapter
The IDOC adapter, or IDOC_AAE, in SAP Process Orchestration is much more restrictive on the validation and requirements of a IDoc message.
The Control segment EDI_DC40 is mandatory for the sender IDoc_AAE adapter, and if you use for the receiver side (which is recommended); these are the fields you must map.
EDI_DC40 Field | Example |
Description |
---|---|---|
@SEGMENT | 1 | Always = 1 |
TABNAM |
EDI_DC40 | Value is arbitrary, but EDI_DC40 is the standard |
DIRECT |
1 |
2=Inbound 1=Outbound |
IDOCTY |
DELVRY07 | IDoc basic Type |
CIMTYP |
IDOC Extension, it must be blank if the Idoc is not extended | |
MESTYP |
DESADV | IDOC Message |
SNDPOR |
SNDCLNT800 |
It must match the Adapter-Specific Identifier of the Sender Business Component or Business System use in the ICO. In the integration directory open the sender communication component. Go to Menu: Communication Component->Adapter-Specific Identifiers Check the value of: IDOC Adapter->Logical system |
SNDPRT |
LS |
LS=Logical System, KU=Customer, LF=Vendor, etc Must match the configured partner profile type in the back-end t-code: we20 |
SNDPRN |
SENDER |
Sender Partner number, must match Must match the configured partner profile in the backend t-code: we20 |
RCVPOR |
SAPID3 | Receiver Partner number, arbitrary value recommended SAP<sys-id> |
RCVPRT |
LS | Receiver Partner Type, arbitrary value recommended LS |
RCVPRN | ID3CLNT800 | Receiver Partner number, arbitrary value recommended <sys-id>CLNT<client number> |
Tip:
You can use the Override IDoc control Header in the receiver Communication channel to have more control from the configuration side.
Nice weblog!!
Thanks
Sandeep Maurya.
Hi, Thanks for the blog.
Can you please confirm if the value "SNDCLNT800" can be assigned dynamically from payload for SNDPRN. I know we have option to do this with option "apply control record from payload". I am looking to override ARCKEY field using the above blog option dynamically using payload data.
Thanks,
Binod
Â
Hi Binod ,
Did you get any solution for your query.
How to override ARCKEY field dynamically using payload data.
Thanks
Hi,
has anyone found a way yet to override ARCKEY field dynamically using payload data??
Thanks,
Martin
Hi,
It cannot be done in SAP PO, however you may change in SAP system in exit.
THanks,
Binod
I know this question is half a year old already but I'm curious - why would you want to do that? By overwriting the field, you throw away the GUID, which is the single most convenient way to link your IDoc back to the original PI/PO message. I would need a real killer reason to give that up 🙂
Hi,
is there a way to fill @Segment so that the idoc is not created after filling in information.
We tried it with a blank constant but it does not seem to work.
If we create another  idoc in the same process right after the one with the blank constant in it,
the idoc with the blank constant gets created instead.
Is there any way to solve this problem?
Kind Regards,
Johannes
The segment value should be always "1"
The easiest way if you have a lot of IDOC mappings programs would be an XSLT afterburner mapping. Â where you can apply a template to the segment attribute with value "1" and just copy all other segments.
If you need to solve it in Message mapping you might be missing a UseOneAsMany Pattern.
Br,
Juan
Hi
Could you provide the transaction code to override the IDOC control header please?
Thank you
Sergio
Hello experts!
We have a channel (that belongs to more than one scenario) in production correctly configured. We have setting “Idoc Control Header” in order to send IDOCs to R/3
the problem occurs when we transport some scenario that contain the same channel again, this “IDOC Control Header” parameters are overwriting with data from development environment.
Is there any way to avoid this overwriting??
Is there any other way to configure Idoc control data that works?
Thanks
Gaby