Monday, June 29, 2009

Adding a special instruction/ Note to an EDI document

EDI document provides a place holder to provide special instruction or a Note as part of EDI document. This enables the trading partners to add special instructions as part of the actual document. This particular element has been reformed from V3010 to V4010.

In the case of V 3010, it is available as part of NTE element

NTE01     363     Note Reference Code
NTE02     3     Free Form Message


In the case of V 4010, it has been moved as part of Advertising Demographic Information.

MTX01     363     Note Reference Code
MTX02     1551     Message Text



Sample list of qualifiers are :
PUR Purchasing
ADD Additional Information
CAI General Business Description
....

Tuesday, April 14, 2009

A Retail Usecase using X12



1. The Seller expects the buyer/customer to sent a Request for Quotation (840) for the product.

a. Send the Functional Acknowledgement (997) (optional)

2. The seller replies with a Response to Request for Quotation (843), providing prices and shipping details for the item(s) requested.

Alternatively, user can also send the Inventory Inquiry/Advice (846) instead of the above 2 steps

a. Send the Functional Acknowledgement (997) (optional)

3. Upon the satisfaction of response, the buyer/customer sends a Purchase Order (850)

a. Send the Functional Acknowledgement (997) (optional)

4. Also, receives either a Purchase Order Acknowledgment (855)

a. Send the Functional Acknowledgement (997) (optional)

Optionally,

5. Buyer/Customer sends Purchase Order Change Request (860) - Seller Initiated message in response.

a. Send the Functional Acknowledgement (997) (optional)

6. Seller initiates a Purchase Order Change Acknowledgment/Request (865)

a. Send the Functional Acknowledgement (997) (optional)

7. Once the goods are delivered, seller initiates the Invoice (810)

a. Send the Functional Acknowledgement (997) (optional)


8. Finally, there would be a Payment Order/Remittance Advice (820) from the buyer/customer to the seller.

a. Send the Functional Acknowledgement (997) (optional)

Tuesday, March 31, 2009

Significance of ISA11 from V4020 onwards in X12

There has been numerous changes happened between 4010 and 4020 revision of x12 standard. One such change is in the segment ISA 11.

In 4010 version, ISA 11 used to hold the "Interchange Control Standards Identifier", which means, the Code to identify the agency responsible for the control standard used by the message that is enclosed by the interchange header and trailer

e.g :
ISA*00*          *00*          *ZZ*GlobalChips    *ZZ*Acme           *080630*0350*U*00401*110000001*0*P*\~GS*PO*GlobalChips*Acme*20080630*0350*1101*X*004010

Here ISA 11 holds the value "U", indicating "U.S. EDI Community of ASC X12, TDCC, and UCS"

After 4020 Onwards, ISA11 is used as the repetition separator. This is a delimiter and not a data element.
This field provides the delimiter used to separate repeated occurrences of a simple data element or a composite data structure. The value has to be different from any of the data element separator or component element separator or the segment terminator

e.g:

ISA*00*          *00*          *ZZ*Acme           *ZZ*GlobalChips    *081217*0634*^*00404*100000001*0*P*\~GS*PR*Acme*GlobalChips*20081217*0634*1001*X*004040~ST*855*1001

In the above example the ISA11 holds ^ as delimiter

Repetition seperator : ^ (ISA 11)
Data Element Separator = “*” (Character no.4 of ISA)

Note: keeping "U" as a value at ISA11 (repetition separator) as like in 4010, might not be a good option as the character "U" will be used at many places in a payload.
For example: currenecy holds the value as "CUR" in the payload and by using "U" as a repetition separator, the message will not process as expected.

Wednesday, February 18, 2009

Date time field in an EDI Message

An EDI message has 3 parts, i.e Interchange, group and transactionset, to which the message comply to. Each of these sections has a date time field.

Why does an EDI message has Date and time field in Interchange, group as well as the transaction set?

All the three date/time elements are having specific purpose in an EDI message and are used to intepret at various levels

1. The Interchange date is the date of envelop creation date. Ideally this would be the latest date among all.

2. Group is optional element, it is used to group various transaction sets depending on the business requirement.

3. The Transactionset date is the date in which the particular EDI message was created. In the case of batching, the messages might get created at varied intervals and the transaction set date/time will hold this value.

Friday, January 30, 2009

APERAK Vs CONTRL in EDIFACT

APERAK stands for application error and acknowledgement message. Along with acknowledging the sender about the receipt of the message, it also indicates the sender about the rejection due to errors encountered during the processing of message in an application.

CONTRL message used to indicate the syntactical correctness of the message. Along with acknowledging the sende about the receipt of the message, it also acknowledges on the acceptance or the rejection of the message based on the syntactical check done

Sunday, December 28, 2008

Significance of UNA segment in EDIFACT

This segment explains the list of delimiters used to parse the various elements of EDIFACT message. The list of delimiters used in the EDIFACT message is indicated using this UNA segment. This is the first segment of the native payload and it is optional. The UNA segment is followed by the six unique delimiters used in the EDI payload and is shown below.


UNA:+.? '

In this,
: (colon)Sub-elementseparator
+ (plus sign)Element Separator
. (period)Decimal Notation
? (question mark) Release Indicator
(space)Repetition Separator
' (single quote)Segment Terminator.

These are the default delimiters. It is also possible to override the above default delimiters. In case, if the delimiters are non-default, and UNA segment is missing, the EDIFACT message becomes invalid

Example:

UNA:+.? 'UNB+UNOB:1+GlobalChips:ZZZ+Acme:ZZZ+080630:0432+5002'UNG

In this example,
1. The elements UNB and UNOB are separated by +
2. The date time element as 2 sub elements i.e date and time, which is separated by :
080630:0432
3. The UNB and UNG segments are separated by '