用友BIP数据集成到旺店通·企业奇门案例分享
在现代业务环境中,企业经常需要在不同系统之间无缝对接,以保障数据的一致性与实时性。本文将重点探讨用友BIP的其他出库数据如何通过轻易云平台高效、可靠地集成到旺店通·企业奇门。本次案例的具体运行方案为“YS其他出库对接旺店通(非云仓)”。
我们首先需要从用友BIP获取其他出库的数据。API接口/yonbip/scm/othoutrecord/list
提供了分页查询功能,但在大规模数据处理时,需特别注意接口限流问题。在本次实施过程中,我们采用了定时抓取机制,以确保不遗漏任何一条有效数据。
为了快速写入大量数据至旺店通·企业奇门,我们使用了批量处理技术,通过调用其API wdt.stockout.order.push
实现。在此过程中,还需注意两者的数据格式差异,如字段名称和类型的不一致,通过定制化映射进行转换是关键步骤之一。
此外,为保障整个流程的稳定性和可靠性,对异常情况进行了专项处理。例如,当出现网络中断或接口返回错误时,会启动重试机制,并记录详细日志以便后续分析和调优。
最后,用友BIP与旺店通·企业奇门间的数据交互建立起全透明、可监控的数据流动体系。从提取原始订单信息,到最终成功推送至目标系统,每一步操作均有详尽的日志记录,实现实时监控。这不仅提高了系统整合效率,也极大提升了业务运转透明度及准确率。
用友BIP接口/yonbip/scm/othoutrecord/list数据获取与加工技术案例
在数据集成生命周期的第一步中,调用源系统用友BIP接口/yonbip/scm/othoutrecord/list获取并加工数据是关键环节。本文将详细探讨如何利用轻易云数据集成平台配置元数据,实现对该接口的数据请求、清洗和转换。
接口概述
用友BIP提供的接口/yonbip/scm/othoutrecord/list主要用于查询其他出库记录。通过POST请求方式,可以获取指定条件下的出库记录列表。以下是该接口的元数据配置:
{
"api": "/yonbip/scm/othoutrecord/list",
"method": "POST",
"number": "code",
"id": "othOutRecords_id",
"formatResponse": [
{"old": "id", "new": "new_id", "format": "string"},
{"old": "warehouse", "new": "new_warehouse", "format": "string"},
{"old": "othOutRecords_id", "new": "new_othOutRecords_id", "format": "string"}
],
...
}
请求参数配置
请求参数包括分页信息、过滤条件等,具体如下:
[
{"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"},
...
]
这些参数允许用户灵活地定义查询条件。例如,通过设置pageIndex
和pageSize
,可以控制分页;通过设置code
、open_vouchdate_begin
、open_vouchdate_end
等字段,可以精确筛选所需的数据。
数据清洗与转换
在获取到原始数据后,需要进行清洗和转换,以便后续处理。轻易云平台提供了格式化响应功能,通过配置formatResponse
字段实现。例如:
[
{"old": "id", "new": "new_id", "format": "string"},
{"old": "warehouse", "new": "new_warehouse", "format": "string"},
...
]
上述配置将原始字段名转换为新的字段名,并指定其格式为字符串。这一步骤确保了数据的一致性和规范性。
示例代码
以下是一个调用该接口并处理响应数据的示例代码:
import requests
url = 'https://api.yonyoucloud.com/yonbip/scm/othoutrecord/list'
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
}
payload = {
'pageIndex': '1',
'pageSize': '500',
'isSum': 'false',
# 添加其他必要的请求参数
}
response = requests.post(url, headers=headers, json=payload)
data = response.json()
# 数据清洗与转换
formatted_data = []
for record in data['data']:
formatted_record = {
'new_id': record['id'],
'new_warehouse': record['warehouse'],
# 添加其他字段转换
}
formatted_data.append(formatted_record)
print(formatted_data)
高级过滤条件
为了实现更复杂的数据筛选,可以使用高级过滤条件。例如:
{
...
"simpleVOs":[{"field1":{"field":"auditTime","op":"egt","value1":"{{LAST_SYNC_TIME|datetime}}"}},
{"field2":{"field":"org","op":"neq","value1":"1553156871271481351"}},
{"field3":{"field":"creator","op":"neq","value1":"默认用户"}}],
...
}
这些条件允许用户根据特定字段进行比较操作,如大于等于(egt)、不等于(neq)等,从而实现精准的数据过滤。
自动填充响应
轻易云平台支持自动填充响应功能,通过设置autoFillResponse: true
,可以自动将响应中的特定字段填充到目标系统中。这一步骤简化了数据处理流程,提高了效率。
综上所述,通过合理配置元数据,利用轻易云平台可以高效地调用用友BIP接口获取并加工数据,为后续的数据集成奠定坚实基础。
轻易云数据集成平台生命周期第二步:ETL转换与写入旺店通·企业奇门API接口
在数据集成的过程中,ETL(Extract, Transform, Load)转换是至关重要的一环。本文将详细探讨如何将已经集成的源平台数据通过轻易云数据集成平台进行ETL转换,并最终写入目标平台——旺店通·企业奇门API接口。
元数据配置解析
元数据配置是实现ETL转换的关键,它定义了如何将源数据映射到目标API所需的格式。以下是具体的元数据配置:
{
"api": "wdt.stockout.order.push",
"effect": "EXECUTE",
"method": "POST",
"idCheck": true,
"operation": {
"method": "merge",
"field": "new_warehouse,code",
"bodyName": "details",
"bodySum": ["othOutRecords_qty"],
"header": ["new_warehouse", "omsOutWarehouse", "code", "memo", "bustype_name"],
"body": ["othOutRecords_product_cCode", "othOutRecords_qty", "othOutRecords_memo"]
},
"request": [
{"field":"outer_no","label":"外部单号","type":"string","describe":"外部单号","value":"{code}"},
{"field":"warehouse_no","label":"仓库编码","type":"string","describe":"仓库编码","value":"{omsOutWarehouse}"},
{"field":"remark","label":"备注","type":"string","describe":"备注","value":"YS{bustype_name}-{memo}"},
{"field":"is_check","label":"是否审核","type":"string","describe":"是否审核","value":"1"},
{
"field":"detail_list",
"label":"货品明细节点",
"type":"array",
"describe":"货品明细节点",
"value":"details",
"children":[
{"field":"spec_no","label":"商家编码","type":"string","describe":"商家编码","value":"{{details.othOutRecords_product_cCode}}"},
{"field":"num","label":"入库数量","type":"string","describe":"入库数量","value":"{{details.othOutRecords_qty}}"},
{"field":"price","label":"原价","type":"string","describe":"原价"},
{"field":"remark","label":"备注","type":"","value":"{{details.othOutRecords_memo}}"}
]
}
],
"otherRequest":[{"field":"stockout_info",
![企业微信与OA系统接口开发配置](https://pic.qeasy.cloud/T9.png~tplv-syqr462i7n-qeasy.image)