用友BIP数据快速集成到旺店通·企业奇门的实践案例
在本篇技术文章中,我们将深入探讨如何通过轻易云数据集成平台,将用友BIP的其他入库单数据高效、安全地对接到旺店通·企业奇门。此次具体实施方案名称为“YS其他入库单对接旺店通其他入库单(非云仓)”。此系统对接过程涉及多个关键技术点,包括如何确保不漏单、大量数据的快速写入、接口调用及其注意事项等。
首先,针对用友BIP的数据获取问题,我们采用定时可靠抓取机制,通过调用API接口 /yonbip/scm/othinrecord/list
定期拉取待处理的数据。该方法不仅能够实时监控并记录整个数据抓取流程,还能应对分页和限流问题,确保每条记录都被精确捕获并传输。
为了保障大批量的数据能迅速写入到旺店通·企业奇门,并有效解决两者间的数据格式差异问题,我们设计了一个自定义映射配置,在轻易云平台的可视化操作界面下进行拖拽式映射规则设定,同时使用 wdt.stockin.order.push
API 将转换后的数据推送至目标端。
此外,为了提升整体系统稳定性和可靠性,对接过程中我们还实现了一套完整的异常处理与错误重试机制。一旦在调用API或传输过程中发生错误,可以依据预先设定好的策略自动进行重试,从而避免因网络或服务波动导致的数据遗漏问题。这一点极大提高了业务连续性的保障,实现真正的不漏单、高效率运行。
以下具体讨论这些实施要点,以期提供一个清晰、可操作且具实用价值的系统集成参考。
调用用友BIP接口获取并加工数据
在数据集成的生命周期中,第一步是调用源系统接口获取数据。本文将详细探讨如何通过轻易云数据集成平台调用用友BIP接口/yonbip/scm/othinrecord/list
,并对获取的数据进行加工处理。
接口配置与请求参数
我们使用POST方法调用用友BIP接口/yonbip/scm/othinrecord/list
。以下是请求参数的详细配置:
{
"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"]
},
...
}
-
字段映射
在这个步骤中,我们需要将源系统的数据字段映射到旺店通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}}
-
构建请求体
根据上述映射关系,我们可以构建出符合旺店通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}}" } ... ] }
-
发送请求
最后一步是通过HTTP POST方法,将构建好的请求体发送到旺店通·企业奇门API接口。确保在发送请求前,对所有必要字段进行了校验和处理,避免因缺失或错误的数据导致请求失败。
实际案例
假设我们有以下源系统的数据:
{
"new_warehouse": 101,
"omsInWarehouse": 202,
"code": 303,
...
"details": [
{
"othInRecords_product_cCode": 404,
...
"othInRecords_qty": 10,
...
"othInRecords_memo": ""
}
],
...
}
根据上述配置和映射关系,生成的请求体应如下:
{
"outer_no": 303,
...
“warehouse_no”: 202,
“remark”: “YS-”,
“is_check”: 1,
“goods_list”: [
{
“spec_no”: 404,
“stockin_num”: 10,
“remark”: ""
}
]
}
通过这种方式,我们成功地将源系统的数据转换为符合旺店通·企业奇门API接口要求的格式,并完成了数据写入。这一过程不仅确保了数据的一致性和完整性,还大大提高了业务流程的自动化程度。
总结以上技术步骤,可以看到,通过合理配置元数据并进行有效的数据转换,可以实现不同系统间的数据无缝对接,极大提升了业务效率和透明度。