轻易云平台集成用友BIP数据到旺店通·企业奇门的完整方案

  • 轻易云集成顾问-蔡威
### 用友BIP数据快速集成到旺店通·企业奇门的实践案例 在本篇技术文章中,我们将深入探讨如何通过轻易云数据集成平台,将用友BIP的其他入库单数据高效、安全地对接到旺店通·企业奇门。此次具体实施方案名称为“YS其他入库单对接旺店通其他入库单(非云仓)”。此系统对接过程涉及多个关键技术点,包括如何确保不漏单、大量数据的快速写入、接口调用及其注意事项等。 首先,针对用友BIP的数据获取问题,我们采用定时可靠抓取机制,通过调用API接口 `/yonbip/scm/othinrecord/list` 定期拉取待处理的数据。该方法不仅能够实时监控并记录整个数据抓取流程,还能应对分页和限流问题,确保每条记录都被精确捕获并传输。 为了保障大批量的数据能迅速写入到旺店通·企业奇门,并有效解决两者间的数据格式差异问题,我们设计了一个自定义映射配置,在轻易云平台的可视化操作界面下进行拖拽式映射规则设定,同时使用 `wdt.stockin.order.push` API 将转换后的数据推送至目标端。 此外,为了提升整体系统稳定性和可靠性,对接过程中我们还实现了一套完整的异常处理与错误重试机制。一旦在调用API或传输过程中发生错误,可以依据预先设定好的策略自动进行重试,从而避免因网络或服务波动导致的数据遗漏问题。这一点极大提高了业务连续性的保障,实现真正的不漏单、高效率运行。 以下具体讨论这些实施要点,以期提供一个清晰、可操作且具实用价值的系统集成参考。 ![轻易云数据集成平台金蝶集成接口配置](https://pic.qeasy.cloud/D14.png~tplv-syqr462i7n-qeasy.image) ### 调用用友BIP接口获取并加工数据 在数据集成的生命周期中,第一步是调用源系统接口获取数据。本文将详细探讨如何通过轻易云数据集成平台调用用友BIP接口`/yonbip/scm/othinrecord/list`,并对获取的数据进行加工处理。 #### 接口配置与请求参数 我们使用POST方法调用用友BIP接口`/yonbip/scm/othinrecord/list`。以下是请求参数的详细配置: ```json { "api": "/yonbip/scm/othinrecord/list", "method": "POST", "number": "code", "id": "othInRecords_id", "idCheck": true, "request": [ {"field": "pageIndex", "label": "页码", "type": "string", "describe": "例:1 默认值:1", "value": "1"}, {"field": "pageSize", "label": "每页数", "type": "string", "describe": "例:10 默认值:10", "value": "500"}, {"field": "isSum", "label": "查询表头", "type": "string", "describe": "例:false 默认值:false"}, {"field": "code", "label": "单据编码", "type": "string"}, {"field": "open_vouchdate_begin", "label": "开始日期", "type": "string"}, {"field": "open_vouchdate_end", "label": ![轻易云数据集成平台金蝶集成接口配置](https://pic.qeasy.cloud/S1.png~tplv-syqr462i7n-qeasy.image) ### 将源平台数据转换为旺店通·企业奇门API接口格式并写入目标平台 在数据集成的生命周期中,ETL(提取、转换、加载)是至关重要的一环。本文将深入探讨如何利用轻易云数据集成平台,将已经集成的源平台数据进行ETL转换,转为目标平台——旺店通·企业奇门API接口所能够接收的格式,并最终写入目标平台。 #### 数据请求与清洗 在数据请求与清洗阶段,我们已经从源系统获取了原始数据,并进行了必要的清洗和预处理。接下来,我们将重点放在如何将这些清洗后的数据进行转换,以适配旺店通·企业奇门API接口的要求。 #### 数据转换与写入 1. **元数据配置解析** 根据提供的元数据配置,我们需要将源平台的数据字段映射到目标平台API所需的字段。以下是元数据配置中的关键部分: ```json { "api": "wdt.stockin.order.push", "effect": "EXECUTE", "method": "POST", "idCheck": true, "operation": { "method": "merge", "field": "new_warehouse,code", "bodyName": "details", "bodySum": ["othInRecords_qty"], "header": ["new_warehouse", "omsInWarehouse", "code", "memo", "bustype_name"], "body": ["othInRecords_product_cCode", "othInRecords_qty", "othInRecords_memo"] }, ... } ``` 2. **字段映射** 在这个步骤中,我们需要将源系统的数据字段映射到旺店通API所需的字段。以下是具体的映射关系: - `outer_no` 映射到 `{code}` - `warehouse_no` 映射到 `{omsInWarehouse}` - `remark` 映射到 `YS{bustype_name}-{memo}` - `is_check` 固定值为 `1` - `goods_list` 为一个数组,包含货品明细节点: - `spec_no` 映射到 `{{details.othInRecords_product_cCode}}` - `stockin_num` 映射到 `{{details.othInRecords_qty}}` - `remark` 映射到 `{{details.othInRecords_memo}}` 3. **构建请求体** 根据上述映射关系,我们可以构建出符合旺店通API要求的请求体。例如: ```json { "outer_no": "{code}", "warehouse_no": "{omsInWarehouse}", "remark": "YS{bustype_name}-{memo}", "is_check": 1, "goods_list": [ { "spec_no": "{{details.othInRecords_product_cCode}}", "stockin_num": "{{details.othInRecords_qty}}", ... "remark": "{{details.othInRecords_memo}}" } ... ] } ``` 4. **发送请求** 最后一步是通过HTTP POST方法,将构建好的请求体发送到旺店通·企业奇门API接口。确保在发送请求前,对所有必要字段进行了校验和处理,避免因缺失或错误的数据导致请求失败。 #### 实际案例 假设我们有以下源系统的数据: ```json { "new_warehouse": 101, "omsInWarehouse": 202, "code": 303, ... "details": [ { "othInRecords_product_cCode": 404, ... "othInRecords_qty": 10, ... "othInRecords_memo": "" } ], ... } ``` 根据上述配置和映射关系,生成的请求体应如下: ```json { "outer_no": 303, ... “warehouse_no”: 202, “remark”: “YS-”, “is_check”: 1, “goods_list”: [ { “spec_no”: 404, “stockin_num”: 10, “remark”: "" } ] } ``` 通过这种方式,我们成功地将源系统的数据转换为符合旺店通·企业奇门API接口要求的格式,并完成了数据写入。这一过程不仅确保了数据的一致性和完整性,还大大提高了业务流程的自动化程度。 总结以上技术步骤,可以看到,通过合理配置元数据并进行有效的数据转换,可以实现不同系统间的数据无缝对接,极大提升了业务效率和透明度。 ![用友与SCM系统接口开发配置](https://pic.qeasy.cloud/T17.png~tplv-syqr462i7n-qeasy.image)