From: [email protected]
[mailto:[email protected]] On Behalf Of Norman Bauer
Sent: Friday, June 12, 2009 6:25 AM
To: U2 Users List
Subject: [U2] How do you do EDI?
We have a very painful, labor intensive way that we do EDI. From
the way we create the X12 documents to our users inputing information to
be sent in an EDI message. I would like to start evaluating alternative
methods to our current practices. All suggestions welcome.
Norm
---
We used to do EDI the traditional way through a VAN, but abandoned it in
favor of direct ftp transactions with our trading partners around 5
years ago. We came up with our own form definitions based on the
standards (810, 850, 997, etc.), but eliminated a lot of the extraneous
data that doesn't apply to our industry. Since we only sell one type of
product, this worked well for us as well as our trading partners. The
forms are exchanged as delimited (we use "~") flat text files. We can
accept data dropped off on our own ftp server, or pick it up from a
partner's server, depending on their preference. On our end, the form
creation and transimission or pickup is all handled automatically behind
the scenes. There is no end-user data entry required other than what
they would normally enter in their applications (eg: P.O. entry).
There are a couple of key issues to consider when exchanging data via
ftp:
1) Data loss and/or duplication
When we're picking up from a partner's server, there are 2 steps to the
process. The form has to be picked up, then after a check to make sure
it's complete, it has to be deleted from the remote server. The forms
are designed with a total of all prior lines on the last line of the
file. If the total's missing or doesn't add up, we know we have to
retry the transfer. Otherwise we can delete the remote file so it's not
picked up again on the next run.
2) Timing
There has to be an agreed upon mechanism that each side uses to make
sure a file is not being picked up by one side while the other side is
still writing to it. There are a couple of ways I know of to handle
this. One is to use linux "mv" to rename the file with a new extension
when it's done. This only renames the file rather than changing it's
location on disk, so we know the whole file is immediately available
when the correct extension shows up. The other option is to write a
second empty file with a the same name but a different extension (we use
".done") to indicate the data file is complete.
There was a fair amount of intial UV programming to do when we first
implemented this, as well as some linux shell scripting to handle the
ftp transmissions. Once the core applications were written, though,
adding new trading partners has required only minor customization.
-John
_______________________________________________
U2-Users mailing list
[email protected]
http://listserver.u2ug.org/mailman/listinfo/u2-users