Skip to Content

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.

/wp-content/uploads/2014/10/00001_570257.png

To report this post you need to login first.

8 Comments

You must be Logged on to comment or reply to a post.

    1. Binod Mondal

      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

      (0) 
          1. Patrick Weber

            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 🙂

            (0) 
  1. Johannes Schneider

    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

    (0) 
    1. Juan Francisco Zurita Duque Duque Post author

      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

       

      (0) 

Leave a Reply