Trading Networks 10.3 | Administering and Monitoring B2B Transactions | webMethods Module for EDI | Optional Inbound Processing When Using Trading Networks | Validating Inbound Control Numbers | Valid Control Numbers
 
Valid Control Numbers
Module for EDI considers the control number of an inbound EDI document to be valid when it matches the next expected control number in the EDIControlNumber table entry. How this process works depends on the EDI standard in use:
*For VDA documents. Unlike other EDI standards, the VDA message has two control number fields at the envelope level: the old control number and the new control number. (For this reason, no control number incrementing occurs.) If validation is turned on, Module for EDI extracts the old control number from the document and matches it against the one stored in the database. Then the module updates the EDIControlNumber table with the value of the new control number field so that the next document's old control number field can be validated against the current document's new one.
For the ordering of VDA documents exchanged between trading partners, the first document must have 00000 as the old control number, and the new control number must be any positive number. For subsequent exchanges, the old control number of that message must match the new control number fields of the previous message.
If the new control number field for the inbound document is greater than the control number maximum, Module for EDI sets the value of the next expected control number as the control number minimum.
*For all other standards. Non-VDA documents contain a single control number, which Module for EDI uses to compare with the control number entry in the EDIControlNumber table. When Module for EDI determines a control number is valid, it calculates the next expected control number, saves it in the EDIControlNumber table, and continues processing the EDI document.
To determine the next expected control number, Module for EDI adds the control number increment to the valid control number. If the result is greater than the control number maximum, the module sets the next expected control number as the control number minimum.