You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The issue that I am facing is that there are two consecutive segment groups: GRP1: "TDT", "LOC", "DTM", "RFF", "FTX" GRP2: "LOC", "GID", GDS", "FTX", "MEA", "DIM, "TMP", "RNG", "LOC," RFF"
Since the first segment group contains a mandatory LOC segment, a conflict arises once the next segment group is encountered, as that starts with LOC.
I have defined the segment-group segments like this: [EdiSegmentGroup("TDT", "LOC", "DTM", "RFF", "FTX")]
And here is an example of the EDIFACT file:
UNB+UNOA:1+XXX+8194-8195+250117:0526+39447142'
UNH+1+BAPLIE:D:95B:UN:SMDG22'
BGM++XXX+9'
DTM+137:2501170526:201'
---
See from below this line for segment group 1:
---
TDT+20+XXXX+1++XXX:172+++XXX:103::XXX'
LOC+5+XXXXX:139:6+XXX'
DTM+132:2501161400:201'
DTM+133:2501170730:201'
---
See from below this line for segment group 2:
---
LOC+147+0140586::5'
MEA+WT++XXX:8566'
When debugging the EdiSerializer, I can see that the segment-group level is not closed until MEA is encountered, since the 2nd encounter of LOC is still considered to be part of the first segment-group.
From what I can tell this issue occurs because the EdiSerializer doesn't consider ordering of the segments within a group, but I might be wrong in this observation.
Question: Is there any way to force the serializer to respect the segment-groups above with the current built-in toolkit? I am still very new to the codebase, so I haven't investigated all of the capabilities of structuring POCO's to force the structure.
The text was updated successfully, but these errors were encountered:
Hello there 👋,
First and foremost I would like to say that you've done a great job with the development of this library.
I have encountered one issue with parsing EDIFACT files of the BAPLIE template, specifically to the version D95B: https://www.truugo.com/edifact/d95b/baplie/
The issue that I am facing is that there are two consecutive segment groups:
GRP1: "TDT", "LOC", "DTM", "RFF", "FTX"
GRP2: "LOC", "GID", GDS", "FTX", "MEA", "DIM, "TMP", "RNG", "LOC," RFF"
Since the first segment group contains a mandatory
LOC
segment, a conflict arises once the next segment group is encountered, as that starts withLOC
.I have defined the segment-group segments like this:
[EdiSegmentGroup("TDT", "LOC", "DTM", "RFF", "FTX")]
And here is an example of the EDIFACT file:
When debugging the
EdiSerializer
, I can see that the segment-group level is not closed untilMEA
is encountered, since the 2nd encounter ofLOC
is still considered to be part of the first segment-group.From what I can tell this issue occurs because the
EdiSerializer
doesn't consider ordering of the segments within a group, but I might be wrong in this observation.Question: Is there any way to force the serializer to respect the segment-groups above with the current built-in toolkit? I am still very new to the codebase, so I haven't investigated all of the capabilities of structuring POCO's to force the structure.
The text was updated successfully, but these errors were encountered: