使用轻易云实现旺店通数据转换与推送

  • 轻易云集成顾问-曾平安
### 金蝶云星空到旺店通·企业奇门数据集成——拆卸父项出库方案 在本次案例中,我们将探讨如何通过API接口实现金蝶云星空与旺店通·企业奇门的数据集成,具体应用场景为“拆卸父项出库”方案。我们的目标是确保从金蝶云星空获取的订单数据能够准确无误地写入到旺店通·企业奇门系统,并有效解决实际操作中的各类技术挑战。 #### 确保不漏单:调用executeBillQuery接口抓取订单 首先,我们需要从金蝶云星空中定时、可靠地抓取订单数据。使用其提供的executeBillQuery API接口,可以实现对指定条件下的订单进行查询和抓取。在这一过程中,需要特别注意分批分页处理以及限流问题,以防止因一次性拉取大量数据导致性能瓶颈或系统崩溃。 #### 数据格式转换与快速写入 不同平台之间的数据格式差异是常见难题之一。在完成对金蝶云星空端的数据抓取后,必须进行适当的数据转换,以匹配旺店通·企业奇门所需的输入格式。随后,通过调用wdt.stockin.order.push API,将转换后的批量数据高效、精准地写入到目的系统。 #### 异常处理与重试机制 在整个数据对接链条中,对于可能发生的各种异常情况,如网络波动、接口响应超时等,需要设计可靠的异常处理和错误重试机制。这不仅能保证任务执行过程中的稳定性,也能保障最终业务结果的一致性。此外,实时监控与日志记录功能则确保我们能够及时发现并处理潜在问题。 以上仅仅是方案的前几部分内容,接下来我们将深入阐述每一个环节中的技术细节及实操步骤,为您呈现完整、高效、安全的数据集成解决方案。 ![如何开发用友BIP接口](https://pic.qeasy.cloud/D9.png~tplv-syqr462i7n-qeasy.image) ### 调用金蝶云星空接口executeBillQuery获取并加工数据 在数据集成生命周期的第一步中,我们需要调用源系统金蝶云星空接口`executeBillQuery`来获取并加工数据。本文将详细探讨如何通过轻易云数据集成平台配置元数据,实现对金蝶云星空接口的调用和数据处理。 #### API接口配置 首先,我们需要配置API接口的基本信息。根据提供的元数据配置,API接口为`executeBillQuery`,请求方法为`POST`。以下是具体的配置细节: ```json { "api": "executeBillQuery", "method": "POST", "number": "FBillNo", "id": "FSubEntity_FDetailID", "pagination": { "pageSize": 500 }, "idCheck": true, "request": [ {"field":"FID","label":"实体主键","type":"string","value":"FID"}, {"field":"FBillNo","label":"单据编号","type":"string","value":"FBillNo"}, {"field":"FDocumentStatus","label":"单据状态","type":"string","value":"FDocumentStatus"}, {"field":"FStockOrgId_FNumber","label":"库存组织","type":"string","value":"FStockOrgId.FNumber"}, {"field":"FDate","label":"日期","type":"string","value":"FDate"}, {"field":"FBillTypeID","label":"单据类型","type":"string","value":"FBillTypeID"}, {"field":"FOwnerTypeIdHead","label":"成品货主类型","type":"string","value":"FOwnerTypeIdHead"}, {"field":"FOwnerIdHead_FNumber","label":"成品货主","type":"string","value":"FOwnerIdHead.FNumber"}, {"field":"FAffairType","label":"事务类型","type":"string","value":"FAffairType"}, {"field":"FEE","label":"费用","type":"string","value":"FEE"}, {"field":"FDeptID_FNumber","label":"部门","type":"string","value":"FDeptID.FNumber"}, {"field": "FNote", "label": "备注", "type": "string", "value": "FNote"}, {"field": "FCreateDate", "label": "创建日期", "type": "string", "value": "FCreateDate"}, {"field": "FModifyDate", "label": "最后修改日期", "type": "string", "value": "FModifyDate"}, {"field": "FAPPROVEDATE", "label": "审核日期", "type": "string", "value": "FAPPROVEDATE"}, {"field": "FCANCELDATE", "label": "作废日期", "type": "string", "value": "FCANCELDATE"}, {"field": "FCANCELSTATUS", "label":"作废状态", ![打通金蝶云星空数据接口](https://pic.qeasy.cloud/S11.png~tplv-syqr462i7n-qeasy.image) ### 使用轻易云数据集成平台实现旺店通·企业奇门API接口的数据转换与写入 在数据集成的生命周期中,第二步是将已经集成的源平台数据进行ETL(提取、转换、加载)转换,并将其转为目标平台所能够接收的格式。本文将重点探讨如何使用轻易云数据集成平台,将数据转换为旺店通·企业奇门API接口所需的格式,并最终写入目标平台。 #### API接口元数据配置解析 在本案例中,我们需要将拆卸父项出库的数据通过`wdt.stockin.order.push`接口推送到旺店通·企业奇门。以下是元数据配置的详细解析: ```json { "api": "wdt.stockin.order.push", "effect": "EXECUTE", "method": "POST", "beatFlat": ["FSubEntity_FDetailID"], "request": [ {"field": "outer_no", "label": "外部单号", "type": "string", "value": "{FBillNo}"}, {"field": "warehouse_no", "label": "仓库编号", "type": "string", "value": "{FStockIDSETY_FNumber}"}, {"field": "remark", "label": "备注", "type": "string", "value": "拆卸父项出库"}, {"field": "is_check", "label": "是否审核", "type": "string", "value": "1"}, { "field": "goods_list", "label": "货品明细节点", "type": "array", "value": "details_lists", "children": [ {"field": "spec_no", "label":"商家编码","type":"string","value":"{{details_lists.FMaterialIDSETY_FNumber}}"}, {"field":"stockin_num","label":"入库数量","type":"string","value":"{{details_lists.FQtySETY}}"}, {"field":"src_price","label":"原价","type":"string","value":"1"}, {"field":"stockin_price","label":"入库价","type":"string","value":"1"} ] } ], ... } ``` #### 数据请求与清洗 首先,我们从源系统提取数据,并进行初步清洗。在这一阶段,我们会根据业务需求对原始数据进行筛选和过滤,确保仅保留必要的信息。 #### 数据转换 接下来,我们进入数据转换阶段。根据元数据配置,我们需要将源系统中的字段映射到目标系统的字段。例如: - `FBillNo` 映射到 `outer_no` - `FStockIDSETY_FNumber` 映射到 `warehouse_no` - `details_lists.FMaterialIDSETY_FNumber` 映射到 `goods_list.spec_no` - `details_lists.FQtySETY` 映射到 `goods_list.stockin_num` 具体实现时,可以使用轻易云提供的可视化界面进行字段映射配置,确保每个字段都能正确转换。 #### 数据写入 完成数据转换后,我们通过POST请求将处理好的数据推送到旺店通·企业奇门API接口。以下是一个示例请求体: ```json { ... { outer_no: '123456', warehouse_no: 'WH001', remark: '拆卸父项出库', is_check: '1', goods_list: [ { spec_no: 'SKU001', stockin_num: '10', src_price: '1', stockin_price: '1' }, ... ] } } ``` #### 实现细节 在实际操作中,为了确保数据准确无误,可以利用轻易云的数据监控功能,实时监控数据流动和处理状态。如果出现错误,可以及时调整和修正。 此外,通过配置中的`beatFlat`参数,可以将多层嵌套的数据结构展平,以便于处理复杂的数据关系。 #### 总结 通过上述步骤,我们成功地将源系统的数据经过ETL转换后推送到了旺店通·企业奇门API接口。这一过程不仅提高了数据处理的效率,也保证了业务流程的透明度和可追溯性。利用轻易云的数据集成平台,复杂的数据处理变得更加简单和高效。 ![轻易云数据集成平台金蝶集成接口配置](https://pic.qeasy.cloud/T15.png~tplv-syqr462i7n-qeasy.image)