寻找工具/库将XML转换为X12(270 - 医疗资格请求),然后将X12响应(271 - 资格响应)转换回XML。这将嵌入在服务器应用程序中(将考虑任何目标语言)。我已经想到了编写自己的X12解析器和生成器的想法,但是这个项目很可能会扩展到其他X12事务,我想找到一个可扩展的解决方案。
答案 0 :(得分:10)
我遇到了这个: OopFactory X12 Parser - https://x12parser.codeplex.com/releases/view/106524
难以置信。源代码结构良好,所有内容都是在首次打开时构建的,甚至还有单元测试。
拉入我的项目,它转换了我尝试过的所有文件。
它包含一个有效的命令行exe - 但作为一个.Net的人,这个库确实令人印象深刻。
-Update -
简短版本可归结为以下内容:
var fstream = new FileStream(fileName, FileMode.Open, FileAccess.Read);
var parser = new X12Parser();
var interchange = parser.ParseMultiple(fstream).First();
var x12Xml = interchange.Serialize();
答案 1 :(得分:7)
我最终创建了自己的XML< - > x12转换工具。我遇到了一些商业产品(其中一个,来自EtaSoft,值得检查他们的精美文档)但最终本土解决方案的优势太大了。
我确实使用了来自X12::Parser的配置文件作为X12解析器的基础,实质上是将配置文件转换为代码并消除了管理配置文件的开销和错误处理,理论上这些文件理论上几乎不会改变。 / p>
答案 2 :(得分:3)
我可以说的一件你应该不惜一切代价避免的产品是EcMap。我现在已经在EDI部门工作了大约一年的经验,我可以说我很少看到设计界面设计较差的应用程序(Lotus Notes除外),用户文档更加混乱,绝对荒谬发牌计划。它基本上是按CPU许可的(通过CPU它们意味着核心,所以如果你有一个新的四核CPU,你真的很好),而且我听到的最后一个引用的每个许可证超过10K。
答案 3 :(得分:1)
答案 4 :(得分:0)
以下是使用pyx12写入XML文件的示例
import pyx12.x12n_document
fd_source = "/path/to/edi/file"
output_file = "result.xml"
with open(output_file, 'w') as fd_xml:
result = pyx12.x12n_document.x12n_document(param=param, src_file=fd_source,
fd_997=None, fd_html=None, fd_xmldoc=fd_xml, xslt_files=None)