English 中文(简体)
EDI File to pipe delimited flat file
原标题:

I m looking for any helpful links or advice on translating an incoming EDI 940 (X12) to a (|) Pipe delimited flat file in c#.net

最佳回答

My technique might seem quite heavy for a one shot translation, but here it is:

Step #1: X12 ------------- [Pre-Parsing Program] ---> X12 syntax XML

Step #2: X12 syntax XML--> [940 Parsing XSLT] ------> 940 XML

Step #3: 940 XML --------> [Mapping XSLT] ----------> your FF XML

Step #4: your FF XML ----> [Serialising XLST] ------> your FF

Step #1: The "X12 syntax XML" is a very simple grammar showing only the SYNTAX of X12, thus the [Pre-Parsing Program] is extremely simple, and can be used for any X12.

Step #2: The "940 XML" has a grammar which fully explicit the structure of the 940. The [940 Parsing XSLT] is where you express the specific structure of an 940.

Step #3: The [Mapping XSLT] transforms the 940 structure into the structure of your FF, expressed in XML.

Step #4: Finally, the [Serialising XLST] creates your FF based on its XML-ized version.

The main advantage of this architecture is its (1) openness - main parts are in XSLT that can be performed with any programming language using a variety of XML/XLST library, and its (2) scalability, at the end, you transform any format into any format ;-)

If you could upload somewhere a simple sample instance of a 940 message AND its translation into your FF structure - that you should do manually with Notepad ;-) - I might have the time to illustrate my technique - at least giving you the 3 XLST scripts needed ;-)

问题回答

Converting an EDI message to a flat file is a bad idea, you are probably going to loose data and message meaning. That s why EDI exists in the first place

Some ideas for parsing EDI

http://www.codeproject.com/KB/XML/edix.aspx

http://www.edidev.com/index.htm

Or Microsoft BizTalk has connectors for this too





相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

NSArray s, Primitive types and Boxing Oh My!

I m pretty new to the Objective-C world and I have a long history with .net/C# so naturally I m inclined to use my C# wits. Now here s the question: I feel really inclined to create some type of ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

How to Use Ghostscript DLL to convert PDF to PDF/A

How to user GhostScript DLL to convert PDF to PDF/A. I know I kind of have to call the exported function of gsdll32.dll whose name is gsapi_init_with_args, but how do i pass the right arguments? BTW, ...

Linqy no matchy

Maybe it s something I m doing wrong. I m just learning Linq because I m bored. And so far so good. I made a little program and it basically just outputs all matches (foreach) into a label control. ...

热门标签