Many folks in the SAP and EDI space do not use this technique but it's a very valuable piece of functionality... You can leverage configuration in SAP to help make the decision on which map is used to map an outbound IDoc to an EDI message. Let's take a look at an example.
The above IDoc control record (table EDIDC) shows, in the "EDI details" tab, that there are 3 fields related to EDI. These are the fields we will leverage in outbound processing.
X = EDIDC-STD : This refers to the EDI standard we would use. X would be for X12.
005010 = EDIDC-STDVRS : This is the EDI version of the map to use. Version 5010.
810 = EDIDC-STDMES : This is the related EDI X12 message that the IDoc relates to. This is an INVOIC IDoc and as such, relates to an X12 810 message.
So how did these 3 values get populated? Let's check out the partner profile.
The partner profile is used to determine the technical attributes on the IDoc. Check out the "EDI standard" tab in the outbound partner profile. You can see that for this INVOIC IDoc we have X set as the EDI Standard, 810 as the Message Type and 005010 as the version. This matches up with what you saw in the IDoc EDIDC control record described above.
Now let's take a look at the Gentran NT (EDI mapping tool) partner profile. In this partner profile we take the IDoc data and based on the control record we determine which map to use in order to process the IDoc in to an EDI X12 810 v5010 message.
Gentran evaluates the following 3 fields of the IDoc EDIDC record to determine the relevant map to use. In this example the map is “o810v5010_walmart”
The X from EDIDC-STD relates to “Standard-X12” in the diagram above
Version: 005010 comes directly from EDIDC-STDVRS
Transaction Set: 810 comes directly from EDIDC-STDMES
These 3 fields, together with the release are the keys to the applicable map to use. That's the link... That's how you can use SAP to drive the choice on which map to use.
Think about that a while...
NOTE: If a customer needs a 5030 version instead of the 5010 then you can change the partner profile to reflect 5030 version and it will drive a new map selection in Gentran. You just need to make sure there is an applicable INVOIC -> 810 v5030 mapping done.