Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AssertionError #73

Open
alexvkaam opened this issue Aug 28, 2024 · 1 comment
Open

AssertionError #73

alexvkaam opened this issue Aug 28, 2024 · 1 comment

Comments

@alexvkaam
Copy link

hi

first of all, thank you for this library, it is briliant :)
I ran into 1 issue, sometimes I get several messages wrapped together into 1 file, so like this:

UNB
UNH
UNT
UNZ
UNB
UNH
UNT
UNZ

which works fine however sometimes these bundles also contain the UNA, now 1 UNA at the top is fine but if i'ts pure/raw messages that get bundled then I see an UNA infront of each UNB

UNA
UNB
UNH
UNT
UNZ
UNA
UNB
UNH
UNT
UNZ

and that will cause an AssertionError.

it’s easily fixed by removing them before loading in or splitting them per UNA but it took me some time to figure out why some files worked and some did not. So I figured I mention it.

Regards,

@nerdoc
Copy link
Member

nerdoc commented Sep 2, 2024

Hm. While it may ba "easy" to fix, I'm not sure if this is concern of pydifact. Because the specification says that one UNA header must be present.
If you wipe out the UNA header of a concatenated second message, the separator characters could be different from the ones the first message uses.

Yes I know, almost all messages worldwide use the same characters - but that's the problem of deduction: Just because you never saw a black swan, it doesn't mean they don't exist.

So it would be really bad to just "ignore" all following UNAs and skip them.

The only way I could think of solving this, is: let pydifact accept concatenated EDIFACTs - and treat each one as separate one.

And, just to ask, why do you get more than one messages wrapped into one file? Who does this? ;-)
Wouldn't it be better to fix the real bug and stop him doing this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants