Auto-Completion Rules
This topic provides information about auto-completion rules that apply to various EDI standards. When generating EDI files, MapForce may automatically create certain fields or values, using the auto-completion rules described below. To disable this behavior, clear the Auto-complete missing fields check box in the EDI Component Settings.
Auto-completion rules for UN/EDIFACT
Depending on the type of UN/EDIFACT messages, MapForce may automatically create certain fields or values, using the auto-completion rules described below.
Standard EDIFACT messages
MapForce checks whether the following segments exist:
•UNB and UNZ
•UNG or UNE
•UNH and UNT
•UNB/S001. If it does not contain data, the syntax level and syntax version number from the user-defined settings are used (see the setting Extended | Syntax version number of the EDI Component Settings).
•UNB/S002 and UNB/S003
•UNB/S004. If it does not contain data, the current date/time in EDI format is inserted.
•UNZ/0036. If it does not contain data, the number of functional groups or messages is calculated and inserted.
•UNZ/0020. If it does not contain data, the value from UNB/0020 is copied.
Note: | Any fields not mentioned here are not inserted and not created. If a parent element in the target EDI component has child elements, one of which is mandatory, the parent element will only be created in the output file if the mandatory child element has been mapped in the target component. |
Functional groups
For functional groups, MapForce checks whether the following segments exist:
•UNG/0038. If it does not contain data, the name of the message is inserted.
•UNG/S006 and UNG/S007
•UNG/S004. If it does not contain data, the current date/time in EDI format is inserted.
•UNG/0051. If it does not contain data, the first two characters of the controlling agency from the user-defined settings are inserted (see the setting Extended | Controlling agency of the EDI Component Settings).
•UNE/0060. If it does not contain data, the number of messages in the group is calculated and inserted.
•UNE/0048. If it does not contain a value, the value from UNG/0048 is copied.
Messages
For messages, MapForce checks whether the following segments exist:
•UNH/S009/0065. If it does not contain data, the name of the message is inserted.
•UNH/S009/0052 and UNH/S009/0054
•UNH/S009/0051. If it does not contain data, the first two characters of the controlling agency from the user-defined settings are inserted (see the setting Extended | Controlling agency of the EDI Component Settings).
•UNT/0074. If it does not contain data, the number of segments in the message is calculated and inserted.
•UNT/0062. If it does not contain data, the value from UNH/0062 is copied.
•UNH/0062. If it does not contain data, the value from UNT/0062 is copied. If only the trailer segment number is mapped, then the corresponding field in the header segment is supplied with the same value.
Interactive EDIFACT messages
The following auto-completion rules apply components with interactive EDIFACT messages:
•UIB/S001/F0001 is filled with the code of the controlling agency and the syntax version number.
•UIB/S001/F0002 is filled with the syntax version number.
•UIB/S002/F0004 is filled with the Sender identification.
•UIB/S003/F0010 is filled with the Recipient identification.
•UIZ/S302/* is filled with UIB/S302/*.
•UIZ/F0036 is filled with the message count.
•UIH/S302/* is filled with UIB/S302/* if UIB and UIB/S302 are present.
•UIH/S306/F0065 is filled with the message type.
•UIH/S306/F0052 is filled with the message version number from the configuration files.
•UIH/S306/F0054 is filled with the message release number from the configuration files.
•UIT/F0340 is filled with UIH/F0340 (this is an optional field but it will be filled anyway).
•UIT/F0074 is filled with the number of segments in the message (this is an optional field but it will be filled anyway).
ASC X12 auto-completion rules
For ASC X12 files, MapForce checks whether the following segments exist:
•ISA/IEA pair at interchange level
•GS or GE
•At least one ST/SE pair at message level
•ISA/I01 and ISA/I03. If they do not contain data, 00 is inserted.
•ISA/I02 and ISA/I04. If they do not contain data, ten spaces are inserted.
•Both ISA/I05 segments. If they do not contain data, ZZ is inserted.
•ISA/I08. If it does not contain data, the current date in EDI format is inserted.
•ISA/I09. If it does not contain data, the current time in EDI format is inserted.
•ISA/I65. If it does not contain data, the repetition separator is inserted.
•ISA/I11. If it does not contain data, the interchange control version number from the user-defined settings is inserted (see the setting Extended | Interchange control version-number of the EDI Component Settings).
•ISA/I12
•ISA/I13. If it does not contain data, the request acknowledgment setting is used (see the setting Extended | Request Acknowledgement of the EDI Component Settings).
•ISA/I14. If it does not contain data, P is inserted.
•ISA/I15. If it does not contain data, the composite separator from the user-defined settings is inserted (see the setting Composite Separator of the EDI Component Settings).
•IEA/I16. If it does not contain data, the number of functional groups in the interchange is inserted.
•IEA/I12. If it does not contain data, the value of ISA/I12 is copied.
Any fields not mentioned here are not inserted and not created. Example: If a parent element A in the target EDI component has child nodes X, Y, and Z, where Y is mandatory, the parent element A will only be created in the output file if the mandatory child node Y is connected to a source node.
For functional groups, MapForce checks if the following segments exist:
•GS/373. If it does not contain data, the current date in EDI format is inserted.
•GS/337. If it does not contain data, the current time in EDI format is inserted.
•GE/97. If it does not contain data, the number of messages in the function group is inserted.
•GE/28. If it does not contain data, the value from GS/28 is copied.
For messages, MapForce checks if the following segments exist:
•ST/143. If it does not contain data, the name of the message is inserted.
•SE/96. If it does not contain data, the number of segments in the message is inserted.
•ST/329 and SE/329. If SE/329 does not contain data, the value from ST/329 is copied.
NCPDP SCRIPT
When generating an NCPDP SCRIPT file, MapForce may automatically create certain fields or values, using the auto-completion rules described below. The list of fields that will automatically be completed is given below.
Interchange Header
•UIB/S001/F0001 = controlling agency + syntax version number = "UNOA"
•UIB/S001/F0002 = syntax version number = "0"
•UIB/S002/F0004 = "Sender"
•UIB/S003/F0010 = "Recipient"
•UIB/S300/F0017 = current date
•UIB/S300/F0114 = current time
Message Header
•UIH/S306/F0329 = "SCRIPT", message type
•UIH/S306/F0316 = "010" for 10.6, message version number from configuration files.
•UIH/S306/F0318 = "006" for 10.6, message release number from configuration files.
•UIH/S306/F0326 = message function (or message type from a MapForce perspective)
•UIH/F0062 = "0", message reference number
Message Trailer
•UIT/F0062 = UIH/F0062
•UIT/F0074 = number of segments in the message.
Interchange Trailer
•UIZ/F0036 = message count
TRADACOMS
For information about TRADACOMS auto-completion rules, see Standard-Specific Validation.