在知行之桥EDI系统中常用的数据库端口包括:MySQL端口、SQLServer端口以及SQLite端口。本文将为大家介绍数据库端口的进阶功能,通过简单配置实现数据库的动态更新。
实现SQLServer的动态更新
创建一个SQLServer端口,在 设置 选项卡下创建连接。
点击 创建 后在弹窗中配置SQLServer的连接信息,点击 测试连接 ,即可验证是否连接成功。
接下来选择 操作 为 Upsert,在Upsert配置下点击红色方框中的 代码。
在Upsert配置中,写入如下所示的代码:
1 2 3 4 5 6 7 8 |
<Items> <EDILog table="`dbo`.`EDILog`" updateQuery="update [dbo].[EDILog] set `SuccessComment`=@SuccessComment where SendType != @SendType and DocumentID != @DocumentID"> <DocumentID /> <ID /> <SendType /> <SuccessComment /> </EDILog> </Items> |
上述代码中,数据库表名为:EDILog,涉及到三个字段:SuccessComment、SendType以及DocumentID。实现的逻辑为当SendType以及DocumentID的字段值与现有值不同时,更新SuccessComment字段值。
在SQLSever端口的 输入 选项卡下上传测试文件,代码如下:
1 2 3 4 5 6 7 8 9 |
<?xml version="1.0" encoding="UTF-8"?> <Items xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <EDILog> <ID>121</ID> <DocumentID>Ship123</DocumentID> <SendType>JIT</SendType> <SuccessComment>NEW</SuccessComment> </EDILog> </Items> |
按照代码逻辑,DocumentID以及SendType值都有变化,因此需要将SuccessComment由NEWdata更新为New。结果如下所示:
实现MySQL的动态更新
创建一个MySQL端口,在 设置 选项卡下创建连接。
点击 创建 后在弹窗中配置MySQL的连接信息,点击 测试连接 ,即可验证是否连接成功。
接下来选择 操作 为 Upsert,在Upsert配置下点击红色方框中的 代码。
在Upsert配置中,写入如下所示的代码:
1 2 3 4 5 6 7 8 |
<Items> <EDILog table="`EDILog`" updateQuery="update [EDILog] set `SuccessComment`=@SuccessComment where SendType != @SendType and DocumentID != @DocumentID"> <DocumentID /> <ID /> <SendType /> <SuccessComment /> </EDILog> </Items> |
上述代码中,数据库表名为:EDILog,涉及到三个字段:SuccessComment、SendType以及DocumentID。实现的逻辑为当SendType以及DocumentID的字段值与现有值不同时,更新SuccessComment字段值。
在 MySQL 端口的 输入 选项卡下上传测试文件,代码如下:
1 2 3 4 5 6 7 8 9 |
<?xml version="1.0" encoding="UTF-8"?> <Items xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <EDILog> <ID>121</ID> <DocumentID>Ship123</DocumentID> <SendType>JIT</SendType> <SuccessComment>NEW</SuccessComment> </EDILog> </Items> |
按照代码逻辑,DocumentID以及SendType值都有变化,因此需要将SuccessComment由NEWdata更新为New。结果如下所示:
实现SQLite的动态更新
创建一个SQLite端口,在 设置 选项卡下创建连接。
点击 创建 后在弹窗中配置SQLite的连接信息,注意必须输入数据源信息及其完整的文件路径以及连接字符串中的所有信息。单击“测试连接”按钮可以验证是否成功从知行之桥EDI系统连接到SQLite数据库。
接下来选择 操作 为 Upsert,在Upsert配置下点击红色方框中的 代码。
在Upsert配置中,写入如下所示的代码:
1 2 3 4 5 6 7 8 |
<Items> <EDILog table="`EDILog`" updateQuery="update [EDILog] set `SuccessComment`=@SuccessComment where SendType != @SendType and DocumentID != @DocumentID"> <DocumentID /> <ID /> <SendType /> <SuccessComment /> </EDILog> </Items> |
上述代码中,数据库表名为:EDILog,涉及到三个字段:SuccessComment、SendType以及DocumentID。实现的逻辑为当SendType以及DocumentID的字段值与现有值不同时,更新SuccessComment字段值。
在SQLite端口的 输入 选项卡下上传测试文件,代码如下:
1 2 3 4 5 6 7 8 9 |
<?xml version="1.0" encoding="UTF-8"?> <Items xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <EDILog> <ID>121</ID> <DocumentID>Ship123</DocumentID> <SendType>JIT</SendType> <SuccessComment>NEW</SuccessComment> </EDILog> </Items> |
按照代码逻辑,DocumentID以及SendType值都有变化,因此需要将SuccessComment由NEWdata更新为New。结果如下所示:
管理连接
在知行之桥EDI系统中,可以在 连接 选项卡中管理创建的连接。
如上图所示,点击界面右上角的齿轮图标,即可进入高级设置部分。选择 连接 选项卡,在这里可以看到我们创建的所有连接,便于用户进行统一管理。
以上便是针对常用的三个数据库端口实现动态更新的演示了,如果你希望了解数据库端口的更多功能,欢迎下载试用~
了解更多 EDI 信息,请参阅: EDI 是什么?
注:文案部分图片及内容来源于网络,版权归原创作者所有,如有侵犯到您的权益,请您联系我们进行删除,给您带来困扰,我们深感抱歉。