EDI Headers - 为什么 ISA12 和 GS8 都有版本号?

EDI Headers - Why would ISA12 and GS8 both have a version number?

那么其实为什么ISA和GSheaders都有一个版本呢?

Microsoft Biztalk 文档中说:

The ISA12 and GS8 fields (for X12 interchanges) and the UNH2 field (for EDIFACT interchanges) contain version information that is required for schema discovery.

一个ISA可以有多个GS。那么每个 GS 不能有不同的版本吗?如果是这样,我们是把ISA12的版本放上去的吗?

我们在生产中有一个客户端文件,它具有 ISA12=00401 和 GS8=005010。 在我看来它不对,我们正在从一个版本的 BizTalk 升级到另一个版本。一方面,我们想把事情清理干净并改正,但如果客户希望这样,我们可能会保持原样。

ISA 段中的版本或多或少无关紧要,因为它指的是 ISA 本身(或一般的控制段)。那里的版本是向后兼容的,你可以安全地忽略它们。

GS 中的版本很重要,BizTalk 使用它来解析正确的架构。因此,在您的示例中,您的客户端正在发送版本为 005010.

的交易(在功能组中批处理,GS\GE 块)

有趣的是,您还可以在事务级别本身设置版本号,即 ST 段,BizTalk 本身为确认设置不同的版本号。 ST 中的版本优先,功能组的有效性,当 GS 和 ST 版本不匹配时,是另一回事。