近期为了帮助广大用户更好地使用 EDI 系统,我们根据以往的项目实施经验,将成熟的 EDI 项目进行开源。用户安装好知行之桥 EDI 系统之后,只需要下载我们整理好的示例代码,并放置在知行之桥指定的工作区中,即可开始使用。
今天的文章主要为大家介绍BestBuy EDI 项目,了解如何获取开源的项目代码以及如何部署到知行之桥 EDI 系统中。
BestBuy EDI 到 JSON 示例流具有预配置的端口,用于依据 BestBuy 提供的 EDI 规范,转换以下交易集:
850 采购订单,BestBuy -> 供应商
860 订单变更,BestBuy -> 供应商
856 发货通知,供应商 -> BestBuy
810 发票,供应商 -> BestBuy
846 库存查询,供应商 -> BestBuy
通过 JSON 的方式实现 EDI 系统和 ERP 系统之间的集成是很常见的方案,它可以有效地将两个系统解耦,从而提高整个系统的可靠性和可维护性。
以下端口构成了工作流的核心元素:
1. AS2 端口:用于通过 Internet 网络进行安全传输的功能,确认BestBuy提供的AS2信息,如AS2 ID,URL 及公钥证书,以便进行正确配置。
2. X12 端口:从 XML 生成 EDI 文件或将 EDI 文件转换为 XML 以供进一步处理。
3. XMLMap 端口:提供可视化的方式将 XML 数据从一种结构转换为另一种结构,建立从源文件到模板文件的映射关系。
4. JSON 端口:实现 JSON 文件与 XML 文件相互转换的功能。
5. Branch 端口:对 XML 进行判断匹配区分不同业务类型的文件。
6. Notify 端口:向指定的收件人发送电子邮件通知。
运行知行之桥 EDI 系统,导航到工作流选项卡并单击右上角的齿轮图标。选择创建工作区选项为此示例工作流创建一个新的工作区BestBuy_DropShip。
右侧齿轮下拉菜单中,单击导入工作区。在出现的对话框中,选择下载的示例工作流BBY_DropShip_EDI_to_JSON.arcflow以导入相关的端口和设置。或者直接将 BBY_DropShip _EDI_to_JSON.arcflow拖拽到指定工作区。
成功导入示例工作流后,你将看到如下图所示的完整工作流:
成功导入示例流后,你可以开始配置端口以最适合你的特定用例。
导航到BBY_DropShip_AS2端口的设置选项卡。由于BestBuy采用VAN的方式与供应商搭建EDI传输通道,所以此处应配置BestBuy VAN提供商的AS2相关信息,比如,AS2 ID、交易伙伴 URL、交易伙伴证书。
同时需要配置AS2个人设置:供应商的 AS2 ID,私钥证书,证书密码,公钥证书。
实现文件格式转换主要借助 X12 端口以及 XMLMap 端口实现,其中 XMLMap 端口已经对数据映射进行了预配置,用户无需进行额外操作。 X12 端口中,需要在 设置 选项卡下填写用户和BestBuy的真实信息,对交换头进行配置:
以解析方向(即接收BestBuy发来的 EDI 850 采购订单,并转换为 JSON 格式)为例,测试工作流功能的流程如下:
导航到端口 ID 为BBY_DropShip_X12ToXML 的 X12 端口中,在 输入 选项卡下上传此前下载的示例文件:850.x12。
X12 端口发出后,导航到端口 ID 为BBY_DropShip_850_JSON 的 JSON 端口中,在 输出 选项卡下可以看到刚刚接收的850文件的状态为 Success ,点击即可预览结果。
如下所示,此为接收到的一条来自BestBuy的850采购订单的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 |
{ "poHeader": { "transactionSetPurposeCode": "00", "poType": "SA", "poNumber": "12345", "poDate": "20240102", "internalVendorNumber": "444444", "internalControlNumber": "777777", "customerOrderNumber": "333333", "commitmentNumber": "222222", "customerPONumber": "555555", "smartShippingWarehouseId": "666666", "customerPaymentMethod": "111111", "customerPaymentMethodDesc": "abcdefg", "termsType": "10", "termsBasisDateCode": "1", "termsDiscountPercent": "0.25", "termsDiscountDaysDue": "10", "termsNetDays": "20", "requestedShipDate": "20240210", "requestedShipTime": "1200", "requestedShipTimeCode": "10", "fullValue_poDate": "20240210", "fullValue_poTime": "1200", "poDatetimeTimeCode": "10", "routing": "123456789", "shipToName": "stname", "shipToNumber": "012345678", "shipToAddress": "address1s", "shipToAddress2": "address2s", "shipToCity": "citys", "shipToState": "states", "shipToPostalCode": "postals", "shipToCountry": "countrys", "shipToBuyerNameOrDepartment": "bdname2", "shipToTelephone": "99999", "shipToEmail": "88888", "shipToAttentionLineName": "icname2", "shipToAttentionLineTelephone": "77777", "shipToAttentionLineEmail": "66666", "billToName": "btname", "billToNumber": "012345678", "billToAddress": "address1", "billToAddress2": "address2", "billToCity": "city", "billToState": "state", "billToPostalCode": "postal", "billToCountry": "country", "billToBuyerNameOrDepartment": "bdname1", "billToTelephone": "11111", "billToEmail": "22222", "billToAttentionLineName": "icname1", "billToAttentionLineTelephone": "33333", "billToAttentionLineEmail": "44444", "poDetail": [ { "poLineNumber": "1", "quantityOrdered": "2", "quantityUOM": "EA", "unitPrice": "123.45", "unitPriceCode": "FX", "sku": "11111111", "vendorItemNumber": "222222", "upc1551": "3333333", "productDescription": [ "desc" ], "giftMessage": [ "123456789" ], "requestedDeliveryDate": "20240101", "routing": "65432184954" } ] } } |
BestBuy为供应商提供可自主操作的EDI测试平台,以保障此后EDI的顺利对接。具体测试流程请点击查看。
你启动并运行了吗?
如果答案是肯定的,那么恭喜你成功地配置了 BestBuy DropShip EDI 示例工作流!但是,如果你遇到任何问题或有任何进一步的疑问,请随时联系我们。