本主题介绍了 EDI 消息响应程序,并解释了此类型消息响应程序的特定配置选项。

本章包含:

关于 EDI 消息响应程序

EDI 消息响应程序是一个消息响应程序,它允许使用 XML,从而简化 EDI(EDI 通常很难阅读)的使用。你可以将 EDI 响应负载作为 XML 文档来建模;然后响应程序在发送消息之前自动将 XML 转换为 EDI。如果响应程序接收到一条 EDI 消息,则响应程序会将消息转化为 XML,以便使用 XPaths 或附加工具定义消息关联。消息响应程序与协议无关。在 PVA 的部署配置中定义了访问响应程序的传输协议或 API。



你可以直接从添加响应程序(Add Responder)向导中创建一个 EDI 消息响应程序。 


EDI 格式要求启用消息包许可证功能。消息包许可证功能支持 EDI 客户机的 EDI 格式和 XML 转换器。

关于 EDI 格式

Parasoft 的 EDI 格式支持涵盖以下标准:

关于支持每个标准中的哪些版本和消息类型的更多详情,请查阅 EDI 支持细节。

基础 EDIFACT 支持

基础 EDIFACT 支持不要求消息包许可证。它支持消息包许可证覆盖的方言子集和版本。例如,EDIFACT 是唯一可用方言,并且只支持版本 10B, 96B, S3, S4, 和 S41。 

注意,基础 EDIFACT 和 EDI 转换生成相同 EDI 数据的不同 XML 表示。因此,你不能使用“基础 EDIFACT”将 EDI 转换为 XML,然后再使用“EDI”将其转换回 EDI。同样地,你不能使用“EDI”将 EDI 转换为 XML,然后再使用“基础 EDIFACT”将其转换回 EDI。 

工作流

这有两个预期工作流,可用于配置 EDI 消息响应程序...

现有文字 EDI 消息

(推荐)如果已经有一个文字 EDI 消息:

  1. 创建新的 EDI 消息响应程序。
  2. 切换到文字模式,并粘贴 EDI 消息。
  3. 切换到表单输入或表单 XML 模式,然后根据输入的消息进行填充。现在,你可以按照自己的意愿配置和参数化消息。

从头开始创建 EDI 消息

如果要从头开始创建 EDI 消息,则执行以下步骤:

  1. 创建新的 EDI 消息响应程序。
  2. 使用 DialectVersionMessage 类型字段选择一个消息类型,这些字段将填充表单输入视图。
  3. 使用表单输入手动指定消息。

表单输入将消息约束为所选消息类型的模式,并不允许向消息中添加不属于消息一部分的字段。在你尝试使用给定字段不支持的值类型(比如,尝试将字符串放入整数型字段)时,它还将发出警告。表单 XML 不执行这两种检查。

注意,可能需要手动添加你消息使用的字段,因为 Virtualize 根据所选定的消息生成最小的有效 EDI 消息。该消息将包含你可能希望修改的默认值。通常不建议在表单输入中使用右键单击 Populate 选项。它将向消息添加所有可选字段,但不一定添加有效的默认值。使用 Populate之后,你需要手动检查并输入每个字段的值。对于多数 EDI 消息,这可能是相当乏味的。

指定响应 

关于指定响应的推荐工作流,请查阅 Workflows

注意,在表单输入或表单 XML 和文字之间进行切换时,表单输入或表单 XML 中的内容会自动转换为文字视图中显示的本机格式。文字输入中的内容会自动转换为在表单输入或表单 XML 中显示的 XML 格式。  

在 EDI 格式的模式下,如果将 EDI 消息粘贴到文字视图,然后切换至表单输入或表单 XML,则 Virtualize 将自动检测消息类型并自动填充 DialectVersionMessage Type 复选框。 



现在,你可以像配置任何其他消息响应程序一样配置 EDI 消息响应程序。有关配置标准消息响应程序行为的更多详情(如,关联性、性能文件等等),请查阅 消息响应程序概要


如果希望发送自定义 EDI 消息,表单 XML 视图将允许你添加自定义字段,这是表单输入不允许输入的。

如果将消息粘贴到文字视图,并切换至表单输入,但是表单输入没有填充,则从文字视图切换到表单 XML。在 Virtualize 无法为粘贴进来的 EDI 消息找到匹配模式的情况下,表单输入将不被填充。然而,使用表单 XML,Virtualize 通常仍然可以支持这些消息。

指定转换选项

在 EDI 格式中,当选项为空时,转换将使用该选项的默认选项。否则,如果选择或键入值,转换将尝试使用该值。注意,如果手动输入一个无效的值,则可能在尝试在表单输入/表单 XML 和文字视图之间进行切换时,出现错误。

对于 EDI,可用转换选项有:

注意,没有可用于基础 EDIFACT 的转换选项。