kputnam / stupidedi

Ruby API for parsing and generating ASC X12 EDI transactions
BSD 3-Clause "New" or "Revised" License
262 stars 137 forks source link

value 091 is not allowed in element DTM01 Date/Time Qualifier #257

Closed vsrboth closed 1 year ago

vsrboth commented 1 year ago

From the 820 documents of CRA, it said that DTM01 accepts '091', however, using the gem to generate DTM, it keeps saying not allowed.

does anyone come across this error? I am trying to look for a list of available values. Still no luck. Appreciate if anyone can help out. Thanks

kputnam commented 1 year ago

Hi and thanks for the bug report. Could you provide some steps to reproduce this? You can find the list of allowed values in one of two places: the transaction set implementations (see lib/stupidedi/transaction_sets) or in the SegmentDef + ElementDef (see lib/stupidedi/versions).

Based on the 820 transaction sets we have wired up here, you must be using either X12 version 003010 or 005010. We only have the "standard" definition of those transaction sets, not the "implementation" which has more details and is a subset of the standard.

That means you can find the allowed values by looking of the segment definition for DTM. There you can see the first element is E374, which does show "091" as an allowed value. Perhaps you are using 003010 then, which has this definition?

kputnam commented 1 year ago

Closing due to lack of response. Feel free to re-open if you can provide additional input