如何通过数据库状态回写监控文件已成功通过EDI系统发给客户?

在之前的文章中,给大家介绍了通过邮件通知的方式监控业务数据文件成功通过EDI系统发送给交易伙伴,本文将给大家介绍第二种方式:通过数据库状态回写来实现。

数据库状态回写较邮件通知方案使用的场景比较有限,主要在中间数据库方案中使用。

实现原理

在创建数据库表时,除了业务字段我们还需要设置一个Status字段,用来记录数据的处理状态,通常数据库中新写入的数据Status = New,EDI系统读取后(即数据库端口获取数据后)将其更新为 Status = EDI-Received,EDI系统成功发送给交易伙伴后状态回写将其更新为Status = EDI-Sent。

实现步骤

1.根据规范整理的Mapping表创建数据库表(PO_TEST),设置Status列

注意:如果一个业务报文设置了多张表,Status字段设置在主表中

edi

2.在知行之桥EDI系统中创建一个数据库端口,并配置连接中间数据库,用来从数据库获取PO_TEST表的数据

edi

驱动名称:选择中间数据库对应的驱动名称,示例中使用SQL Server数据库
驱动类:默认
配置格式:默认使用属性列表
Authentication:连接数据库验证方式,根据中间数据库设置的验证方式进行选择,示例中默认使用SQL Server 验证
Server:中间数据库服务器Host信息
用户名:登录数据库的用户名
密码:登录密码
Database:连接的数据库名称

以上信息都配置后,点击测试连接按钮,进行连接测试,确认连接成功。

设置从数据库获取的数据库表(PO_TEST)、过滤规则(Status=New)、设置处理成功后的状态更新(Status=EDI-Received),参考下图:

edi

3.在数据库端口后创建一个Script端口,通过写脚本获取数据库表信息及数据的主键ID信息,放在文件处理过程中的消息内容(Message Header)上,以便使用

edi

脚本参考如下:

4.最后需要在文件传输(MFT)端口的事件页面中的发送后(After Send)中写脚本,当文件成功发送给交易伙伴后,生成回写状态的xml文件到数据库端口。以AS2端口为例:

edi

脚本参考如下:

5.在知行之桥创建新的数据库端口,用来配置数据回写更新状态的模板,其中数据库连接配置和上面的一致,回写更新模板参考如下:
注意:操作选择Upsert,根据ID字段更新Status字段,参考上一步输出的xml格式,只选择配置表中的ID和Status字段,输入的xml文件与设置的输入模板需要保持一致。
edi

验证

1.将待发送的业务数据写入中间数据库,Status给值为New

edi

2.EDI系统读取数据(数据库端口获取),并确认Status字段值更新为EDI-Received
数据库端口获取:

edi
获取成功后数据库中状态更新,将Status列值更新为EDI-Received
edi

3.Script端口验证获取数据库表信息及数据主键ID信息,
文件成功发送后在输出页面点击文件名,在弹出的消息内容(Message Header)下的其他消息头部查看设置的tableid和tablename
edi

4.AS2端口发送文件成功后,验证生成的回写xml文件,并完成回写

AS2端口成功发送文件

edi

在数据库回写端口显示生成的回写xml文件
edi

回写xml文件内容确认

edi

发送回写xml文件完成数据库状态更新

edi

数据库中状态更新为EDI-Sent

edi

参考信息

下面是完成数据库状态回写的工作流,大家可参考:

edi

①T_DB_OutPO:数据库端口,连接数据库,获取PO_TEST表中数据;
②T_Script_Header:Script端口,写脚本获取数据库表信息及数据主键ID信息,放在文件处理过程中的消息内容(Message Header)上;
③T_AS2:AS2端口,与交易伙伴进行AS2连接,并在AfterSend下写回写脚本生成回写的xml文件;
④T_UpdateDB_PO:数据库端口,连接数据库,配置数据回写更新状态的模板完成数据回写。

了解更多EDI信息,请您电话 182-9578-5852或邮件 sales@kasoftware.cn 联系我们。点击下方蓝色按钮,即可免费试用EDI软件。

注:文案部分图片及内容来源于网络,版权归原创作者所有,如有侵犯到您的权益,请您联系我们进行删除,给您带来困扰,我们深感抱歉。

标签: , ,
文章分类 帮助文档, 操作指南