近期为了帮助广大用户更好地使用 EDI 系统,我们根据以往的项目实施经验,将成熟的 EDI 项目进行开源。用户安装好知行之桥 EDI 系统之后,只需要下载整理好的示例代码,并放置在知行之桥指定的工作区中,即可开始使用。
本文主要介绍 ScaniaCN EDI 项目,说明如何获取开源项目代码,以及如何部署到知行之桥 EDI 系统中。
ScaniaCN EDI & SQLServer 方案简介
ScaniaCN EDI 到 SQLServer 示例流具有预配置的端口,用于依据 ScaniaCN提供的 EDIFACT 规范,转换以下交易集:
- DELFOR 交付计划,ScaniaCN -> 供应商
- DESADV 发货通知,供应商 -> ScaniaCN
- INVOIC 发票,供应商 -> ScaniaCN
以下端口构成了工作流的核心元素:
- OFTP 端口:用于通过 OFTP 通道与 ScaniaCN 进行 EDI 文件传输。需要根据 ScaniaCN 提供的信息配置 SSID/SFID、远程主机、端口、证书、签名、加密以及回执等参数。
- EDIFACT 端口:用于将 ScaniaCN 发送的 EDI 文件转换为 XML,或将内部 XML 文件转换为 DESADV、INVOIC 等 EDIFACT 报文。
- XMLMap 端口:用于在 EDIFACT XML 与数据库 XML 之间进行字段映射。示例工作流中已预置 DELFOR、DESADV、INVOIC 的映射关系。
- SQLServer 端口:用于从 SQL Server 查询待发送数据,或将接收到的业务数据写入 SQL Server。
- Script 端口:用于补充文件名、消息头、表名、主键等处理逻辑,并在发送成功后生成状态更新 XML。
- Branch 和 Notify 端口:用于根据文件名前缀判断业务类型,将 DESADV、INVOIC 的发送结果路由到对应的状态更新端口;无法匹配的文件将进入通知端口。
除了预配置的端口之外,示例项目还提供了 SQL 脚本,用于创建 DELFOR、DESADV、INVOIC 相关业务表。
如何在知行之桥EDI系统中部署上述工作流?
创建工作区
运行知行之桥 EDI 系统,导航到工作流选项卡并单击右上角的齿轮图标。选择创建工作区,为此示例流创建一个新的工作区,例如 ScaniaCN。

导入工作区
进入创建好的 ScaniaCN工作区,点击右侧 添加 按钮,在出现的工作流下拉框中,搜索ScaniaCN关键字,即可看到示例流 `ScaniaCN.arcflow` ,点击此工作流并按照提示导入当前工作区。
成功导入示例工作流后,你将看到 ScaniaCN 的完整工作流。

完善工作流配置
实现 OFTP 通信
导航到 `ScaniaCN_SFID_Prod` 端口的设置选项卡。根据 Scania 提供的 OFTP 文档配置通信信息,包括 ScaniaCN 的 SSID/SFID、密码、远程主机地址、端口、交易伙伴证书、签名、加密以及回执策略。

同时需要配置OFTP个人设置:供应商的ODETTE ID(SSID),SSID密码,私钥证书,证书密码。

配置完成后,可以在 OFTP 端口中进行连接测试,并通过输入或输出选项卡查看测试文件的收发结果。
配置 EDIFACT 端口
请在 EDIFACT 端口中根据 Scania 的通信要求配置 UNB 交换头信息,例如发送方标识、接收方标识、限定符、语法版本、测试标识等。

连接 SQLServer 数据库
导航到 SQLServer 端口的设置选项卡,创建或选择可用的 SQL Server 连接。需要填写连接名称、服务器地址、端口、数据库、用户名和密码等信息。
配置完成后,点击测试连接。


进入测试流程
以接收 ScaniaCN发来的 DELFOR 交付计划,并写入 SQL Server 为例,测试流程如下:
上传测试文件
导航到 `ScaniaCN_EDIToXML` 端口,在输入页面上传 DELFOR 测试文件。

查看数据库表
EDIFACT端口发出后,导航到端口 ID 为 ScaniaCN_DELFOR_Upsert 的 SQLServer 端口中,在 输入 选项卡下发送 DELFOR文件,可以看到文件状态为 Success ,这时就可以在 SQLServer 数据库表中查看订单数据了。



你启动并运行了吗?

