首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从PHP到XML再到X12 EDI的转换

从PHP到XML再到X12 EDI的转换
EN

Stack Overflow用户
提问于 2013-10-08 17:30:44
回答 3查看 4.7K关注 0票数 0

我已经写了PHP代码来计算运费为埃斯蒂斯承运人,现在我需要使EDI文件发送给承运人公司。我没有EDI代码的知识。我研究了大约204辆汽车载重招标,但没有更多的帮助。我是否需要先将我的PHP代码转换成XML,然后再转换成x12 EDI格式?多么?

EN

回答 3

Stack Overflow用户

发布于 2014-12-02 14:06:16

要将数据输出为EDI,您需要格式化数据,使其具有以下EDI结构:

ISA -交换标头-包含常规发送方和接收方信息

GS -功能组头-单据类型信息

ST - Transaction set header -表示事务集合的开始和事务标识符

..。

..。根据您的事务集,ST和SE之间会有不同的区段。

..。

SE -事务集尾部-指示事务结束

GE -功能组尾部

IEA -交换预告片

段包含多个元素,元素包含多条数据。

以下是EDI214示例,其中段用~分隔,元素用*分隔

代码语言:javascript
复制
 ISA*00* *00* *08*9251750000 *08*1234567890 *030627*1304*U*00401*000001403*0*P*>~
 GS*QM*8019721193*1234567890*20030627*1304*1403*X*004010~
 ST*214*8101~
 B10*5896152*5896152*XX~
 N1*SH*BAW PLASTICS INCORPORATED~
 N3*CENTURY IBUSINES CTR*2148 CENTURY DRIVE~
 N4*JEFERSON HILS*PA*15025~
 G62*86*2050812~
 N1*CN*FINSH LINE~
 N3*308 NMITOEFER OAD*~
 N4*INDIANAPOLIS*IN*46235~
 G62*17*2050816~
 LX*1~
 AT7*D1*NS*2050815*132*LT~
 MS1*INDIANAPOLIS*IN*USA~
 MS2*CWCE*04937~
 Q7*DCAS*1~
 AT8*GL*41923~
 SE*18*48101~
 GE*1*1403~
 IEA*1*000001403~

您将需要遵循x12标准来构造或解析EDI。

下面是标准EDI文档类型的列表:http://www.edibasics.com/edi-resources/document-standards/ansi/

我只是在谷歌上搜索EDI规范,以了解如何布局我的数据,例如,以下是EDI214的规范:http://ffportal.freightforce.com/technology/edi/EDI214.pdf

票数 3
EN

Stack Overflow用户

发布于 2013-10-09 00:12:01

您不需要首先将其转换为XML。这是一个浪费的步骤(IMHO)。您应该能够编写代码从DB ->电子数据交换。

EDI只是一个遵循标准的文本文档。这些标准已经发布(不是免费的),但是需要204的人应该能够为您提供实施指南(IG)。此IG将按照您需要发送的顺序告诉您需要发送的内容。如果IG不可用,您可以在Google上搜索样例并开始构建。在测试文档时,合作伙伴会告诉您需要更改的内容。

将会有像Segment、Element、delimiter、terminator这样的术语。创建文本文件时,您需要创建段(N1、REF)作为示例。您还需要在文件中放置适当的分隔符,并使用正确的段结束符(通常在合作伙伴之间达成一致,但常见的结束符是:*,^,~。IG可能没有信封(ISA和GS段)。您需要将它们放入文件中,并正确地递增控制计数器。

我通常的标准答案仍然适用:我确信预算中没有翻译的$$。这将是最好的方法,而不是用PHP代码重新发明轮子。翻译器内置了语法检查、拖放映射、数据建模。减少了一些学习曲线。

票数 0
EN

Stack Overflow用户

发布于 2013-10-09 05:09:52

大多数edi设置如下所示:

  • 您可以从应用程序中生成导出文件。例如xml,csv,固定记录等(在电子数据交换中这被称为‘内部文件’)
  • 一个电子数据交换翻译器将其翻译成x12
  • communication.

反向接收x12 :通信->翻译->导入

在您的应用程序中专注于良好的导入/导出,而不是x12;这就是翻译人员要做的。

有很多很好的开源翻译器,比如http://bots.sourceforge.net,但还有更多(谷歌!)。有些只能使用xml作为内部格式;如果您愿意,则必须将导出编写为xml。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19243987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档