Target DVS EDI项目开源介绍
近期为了帮助广大用户更好地使用 EDI 系统,我们根据以往的项目实施经验,将成熟的 EDI 项目进行开源。用户安装好知行之桥EDI系统之后,只需要下载我们整理好的示例代码,并放置在知行之桥指定的工作区中,即可开始使用。
今天的文章主要为大家介绍 Target DVS EDI 项目,了解如何获取开源的项目代码以及如何部署到知行之桥 EDI 系统中。
准备下载和运行
Target DVS EDI 到 Json
使用 Json 生成一系列 EDI 文档与 Target 通信。
Target DVS EDI & JSON 方案简介
Target DVS EDI 到 JSON 示例流具有预配置的端口,用于依据 Target DVS 提供的 EDI 规范,转换以下交易集:
1. 850 采购订单,Target -> 供应商
2. 855 订单回复,供应商 -> Target
3. 860 采购订单变更,Target -> 供应商
4. 855 订单变更回复,供应商 -> Target
5. 856 发货通知,供应商 -> Target
6. 846 库存报告,供应商 -> Target
7. 864 消息通知,Target -> 供应商
8. 997 功能确认,供应商 <-> Target
通过JSON的方式实现 EDI 系统和 ERP 系统之间的集成是很常见的方案,它可以有效地将两个系统解耦,从而提高整个系统的可靠性和可维护性。
通过JSON的方式,EDI 系统和 ERP 系统可以分别将需要传输的数据以JSON文件的形式存储在指定路径,然后另一方系统再从指定路径中获取JSON进行处理。这样可以避免直接修改对方系统中的数据,从而减少数据传输过程中的风险和错误。
以下端口构成了工作流的核心元素:
1. AS2 端口:用于通过 Internet 网络进行安全传输的功能,确认 Target DVS 的AS2信息,如AS2 ID,URL 及公钥证书,以便进行正确配置。
2. X12 端口:从 XML 生成 EDI 文件或将 EDI 文件转换为 XML 以供进一步处理。
3. XMLMap 端口:提供可视化的方式将 XML 数据从一种结构转换为另一种结构,建立从源文件到模板文件的映射关系。
4. Branch 端口:对 XML 进行判断匹配区分不同业务类型的文件。
5. Notify 端口:向指定的收件人发送电子邮件通知。
6. Script端口:利用应用程序底层引擎中支持的 ArcScript 功能来进行各种可编程操作,例如重命名等。
7. JSON端口:实现 JSON 文件与 XML 文件相互转换的功能。
如何在知行之桥EDI系统中部署上述工作流?
创建工作区
运行知行之桥 EDI 系统,导航到工作流选项卡并单击右上角的齿轮图标。 选择创建工作区选项为此示例流创建一个新的工作区 Target_DVS。
导入工作区
右侧齿轮下拉菜单中,单击导入工作区。 在出现的对话框中,选择下载的示例流 Target_DVS.arcflow 以导入相关的端口和设置。 或者直接将 Target_DVS.arcflow 拖拽到指定工作区。
成功导入示例工作流后,你将看到如下图所示的完整工作流:
成功导入示例流后,你可以开始配置端口以最适合你的特定用例。
完善工作流配置
完善工作流配置
导航到 Target_AS2 端口的设置选项卡。 根据 Target 提供的 AS2 文档配置 Target 的 AS2 信息,比如,Target 的 AS2 ID、交易伙伴 URL、交易伙伴证书。 配置完成后请导航到“输入”选项卡上传测试文件与 Target 进行 AS2 连接测试,同时可以导航到 “输出” 选项卡查看 Target 发送的文件。
同时需要配置AS2个人设置:供应商的 AS2 ID,私钥证书,证书密码,公钥证书。
实现从 X12 到 数据库 XML 的格式转换
实现文件格式转换主要借助 X12 端口以及 XMLMap 端口实现,其中 XMLMap 端口已经对数据映射进行了预配置,用户无需进行额外操作。 X12 端口中,需要在 设置 选项卡下填写用户和 Target 的真实信息,对交换头进行配置:
进入测试流程
以解析方向(即接收 Target 发来的 EDI 850 采购订单,对其进行格式转换后得到自定义 JSON)为例,测试流程如下:
上传测试文件
导航到端口 ID 为 Target_X12ToXML 的 X12 端口中,在 输入 选项卡下上传此前下载的示例文件:850.edi。
查看 JSON 结果
X12 端口发出后,导航到端口 ID 为 Target_850_JSON 的 JSON 端口中,在 输出 选项卡下可以看到刚刚接收的850文件的状态为 Success ,这时就可以下载JSON查看订单数据了。
如下所示,此为接收到的一条来自Target的采购订单的JSON。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 | { "po_header" : { "poType" : "Dropship" , "poNumber" : "1000873599" , "releaseNumber" : "" , "poDate" : "20200429" , "contractNumber" : "9859" , "orderNumber" : "123456" , "coverageCode" : "36" , "warehouseNumber" : "M46D" , "vendorNumber" : "123456" , "deliveryDateCode" : "Non - Upgradeable" , "estimatedShipDate" : "20171219" , "guestOrderDate" : "20171231" , "estimatedDeliveryDate" : "20171222" , "scacCode" : "UPSN" , "routingDescription" : "NS" , "serviceLevelCode" : "G2" , "orderDescription" : "Thank you for your purchase. If you ordered additional items they will arrive separately." , "soldToName" : "EDI Helpdesk" , "additionalSoldToName" : "" , "soldToAddress" : "7000 Target Parkway " , "soldToCityName" : "Brooklyn Park" , "soldToStateOrProvinceCode" : "MN" , "soldToPostalCode" : "55445" , "soldToCountryCode" : "US" , "soldToContactName" : "" , "soldToElectronicMailNumber" : "" , "soldToTelephoneNumber" : "" , "billToName" : "Target.com Accounts Payable" , "additionalBillToName" : "" , "billToAddress" : "TNC 3110 PO Box 1296" , "billToCityName" : "Minneapolis" , "billToStateOrProvinceCode" : "MN" , "billToPostalCode" : "55440" , "billToCountryCode" : "US" , "billToContactName" : "" , "billToElectronicMailNumber" : "" , "billToTelephoneNumber" : "" , "shipToName" : "EDI Helpdesk" , "additionalShipToName" : "" , "shipToAddress" : "7000 Target Parkway " , "shipToCityName" : "Brooklyn Park" , "shipToStateOrProvinceCode" : "MN" , "shipToPostalCode" : "55445" , "shipToCountryCode" : "US" , "shipToContactName" : "EDI Help Desk" , "shipToElectronicMailNumber" : "" , "shipToTelephoneNumber" : "612-304-3310" , "po_detail" : [ { "lineNumber" : "1" , "quantityOrdered" : "3" , "measurementUnit" : "Each" , "unitPrice" : "12.3" , "unitPriceMeasurement" : "Price per Each" , "buyerCatalogNumber" : "790-01-2022" , "europeanArticleNumber" : "" , "eanNumber" : "" , "isbnNumber" : "" , "buyerItemNumber" : "15013163" , "stockKeepingUnit" : "7680-02009152" , "eanCaseCode" : "" , "eanShippingContainerCode" : "" , "upcConsumerPackageCode" : "846186077111" , "productDescription" : "WR CARGO SHO 38 BLK SOLID" , "messageText" : "Mail In or Store" , "wrappingMaterialDescription" : "" , "packingSlipDescription" : "This item must be returned within 90 days of the ship date." }, { "lineNumber" : "2" , "quantityOrdered" : "1" , "measurementUnit" : "Each" , "unitPrice" : "4.33" , "unitPriceMeasurement" : "Price per Each" , "buyerCatalogNumber" : "390-32-0999" , "europeanArticleNumber" : "" , "eanNumber" : "" , "isbnNumber" : "" , "buyerItemNumber" : "13498855" , "stockKeepingUnit" : "783323323" , "eanCaseCode" : "" , "eanShippingContainerCode" : "" , "upcConsumerPackageCode" : "394949039444" , "productDescription" : "WR CARGO SHO 39 BLK SOLID" , "messageText" : "Mail In or Store" , "wrappingMaterialDescription" : "" , "packingSlipDescription" : "This item must be returned within 90 days of the ship date." } ] }} |
你启动并运行了吗?
如果答案是肯定的,那么恭喜你成功地配置了 Target DVS EDI 示例工作流!但是,如果你遇到任何问题或有任何进一步的疑问,请随时联系我们。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
2021-06-08 EDI 870订单状态报告