实时监控与日志追踪:轻易云集成汤臣倍健与金蝶云星辰V2

  • 轻易云集成顾问-彭萍
### 汤臣倍健营销云数据集成到金蝶云星辰V2案例分享 在此次技术案例中,我们将展示如何通过轻易云数据集成平台,实现汤臣倍健营销云的数据无缝对接至金蝶云星辰V2。该方案名为"采购入库同步-(Life-Space)广州闽健",重点覆盖了以下几个关键环节:确保数据不漏单、大量数据的快速写入、定时可靠抓取以及批量集成。 首先,通过调用汤臣倍健营销云提供的API接口`/erp/api/order/query/purInWarehsOrder`,我们能够高效地获取所需的采购入库订单数据。然而,由于接口本身存在分页和限流问题,为保证连续性与完整性,我们采用了分页处理机制,并设立限流策略以优化请求频率,防止系统超负荷运行。 接下来,在处理完来自汤臣倍健的数据后,必须进行格式转换以适应金蝶云星辰V2对于输入数据的要求。这其中包括字段映射和单位换算等操作,以确保所有信息准确无误地传输并存储在目标系统中。在这个过程中,同样需要借助轻易云自带的实时监控和日志记录功能,以便对每一个细节进行追踪和调试,从而提升整个流程的透明度与可靠性。 最后,通过调用金蝶云星辰V2的数据写入API `/jdy/v2/scm/pur_inbound` ,我们实现了数据从源头到目标系统的一站式迁移。不仅如此,为了保障业务连续性,当出现对接异常时,还配置了错误重试机制,可以有效减少人工干预,提高整体效率。 本文将详细解析这一复杂而精密的数据集成过程,总结实践中的经验教训,希望能为类似项目提供有价值的参考。 ![钉钉与CRM系统接口开发配置](https://pic.qeasy.cloud/D5.png~tplv-syqr462i7n-qeasy.image) ### 调用源系统汤臣倍健营销云接口/erp/api/order/query/purInWarehsOrder获取并加工数据 在数据集成的生命周期中,调用源系统API接口是关键的第一步。本文将详细探讨如何通过轻易云数据集成平台调用汤臣倍健营销云的接口`/erp/api/order/query/purInWarehsOrder`,并对获取的数据进行初步加工。 #### API 接口配置 首先,我们需要配置API接口的元数据,以便正确地调用和处理返回的数据。以下是该接口的主要配置参数: - **API路径**: `/erp/api/order/query/purInWarehsOrder` - **请求方法**: `POST` - **请求类型**: 查询 (`QUERY`) #### 请求参数 为了成功调用该API,我们需要提供一系列请求参数。这些参数包括但不限于: 1. **tenantId (经销商id)**: 这是必填字段,用于标识经销商。例如:`08e2fd9d074f4ef7b5e6416b74d006d6`。 2. **yxyNumber (营销云销售订单号)**: 可选字段,传递此参数时其他时间状态等条件无效。 3. **number (系统订单号)**: 可选字段,传递此参数时其他时间状态等条件无效。 4. **status (订单状态)**: 0表示未审核,1表示已审核(已出库)。默认值为1。 5. **beginTime (开始时间)**: 时间格式为`0000-00-00`或`0000-00-00 00:00:00`。如果不传单号,此字段必填。 6. **endTime (结束时间)**: 时间格式同上。如果不传单号,此字段必填。 7. **pageNo (页码)**: 默认值为1。 8. **pageSize (每页条数)**: 默认值为30。 9. **timeType (时间段标志)**: 0表示基于创建时间查询(默认),1表示基于更新时间查询。 这些参数可以通过以下JSON结构体进行配置: ```json { "tenantId": "08e2fd9d074f4ef7b5e6416b74d006d6", "yxyNumber": "", "number": "", "status": "1", "beginTime": "{{LAST_SYNC_TIME|datetime}}", "endTime": "{{CURRENT_TIME|datetime}}", "pageNo": "1", "pageSize": "30", "timeType": "1" } ``` #### 数据过滤与清洗 在获取到原始数据后,我们需要对其进行初步的过滤和清洗,以确保数据质量和一致性。根据元数据配置中的条件,我们可以对返回的数据进行如下处理: - **过滤条件**: - 排除物料编号包含"F.A"的记录。 具体实现方式如下: ```json { "condition_bk": [ [ { "field": "itemList.materialNumber", "logic": "notlike", "value": "F.A" } ] ], "condition": [ [ { "field": "itemList.materialNumber", "logic": "notlike", "value": "F.A" } ] ] } ``` #### 自动填充响应 为了简化后续的数据处理步骤,可以启用自动填充响应功能。这意味着平台会自动解析API返回的数据,并将其映射到预定义的数据结构中。 ```json { "autoFillResponse": true } ``` 通过上述配置,我们能够高效地调用汤臣倍健营销云的API接口,并对返回的数据进行初步加工。这一步骤不仅确保了数据的一致性和准确性,也为后续的数据转换与写入奠定了坚实基础。 ![钉钉与MES系统接口开发配置](https://pic.qeasy.cloud/S17.png~tplv-syqr462i7n-qeasy.image) ### 轻易云数据集成平台生命周期第二步:ETL转换与写入金蝶云星辰V2API接口 在数据集成过程中,将源平台的数据转换为目标平台能够接收的格式是至关重要的一步。本文将详细探讨如何利用轻易云数据集成平台将采购入库数据转换并写入金蝶云星辰V2 API接口。 #### 元数据配置解析 元数据配置是实现ETL(Extract, Transform, Load)过程的核心。以下是具体的元数据配置内容及其含义: ```json { "api": "/jdy/v2/scm/pur_inbound", "effect": "EXECUTE", "method": "POST", "number": "1", "id": "1", "name": "1", "idCheck": true, "request": [ {"field":"bill_date","label":"单据日期","type":"string","describe":"单据日期","value":"{{auditTime|date}}"}, {"field":"bill_no","label":"单据编码","type":"string","describe":"单据编码"}, {"field":"transtype","label":"业务类型","type":"string","describe":"数量","value":"2"}, {"field":"supplier_id","label":"供应商编码","type":"string","describe":"供应商编码","value":"1534151871034312704"}, {"field":"remark","label":"备注","type":"string","describe":"商品编码","value":"{remark}-来自营销云-{yxyNumber}"}, {"field":"custom_field","label":"自定义字段","type":"object","children":[{"field":"custom_field__1__2uvf7udrj2ih","label":"营销云单号","type":"string","value":"{number}"}]}, { "field": "material_entity", "label": "商品分录", "type": "array", "describe": "含税单价", "value": "itemList", "children": [ {"field": "material_number", "label": "商品编码", "type": "string", "describe": "商品编码", "value": "{extMaterialNo}"}, {"field": "stock_id", "label": "仓库编码", "type": "string", "describe": "仓库编码", "value": 1535494824059215872}, {"field": ![电商OMS与ERP系统接口开发配置](https://pic.qeasy.cloud/T29.png~tplv-syqr462i7n-qeasy.image)