汤臣倍健营销云数据集成到金蝶云星辰V2:新版订单-出库单(Life-Space)杭州益倍盛技术案例分享
在本次技术案例中,我们探索了将汤臣倍健营销云的数据无缝集成到金蝶云星辰V2的具体实现过程。本方案聚焦于“新版订单-出库单(Life-Space)杭州益倍盛”的业务场景,旨在确保高效、可靠的数据传输和准确性。
API接口对接与数据获取
我们首先利用汤臣倍健营销云提供的API接口 /api/openapi/v1/erp/order/honour/agreement/header
进行数据抓取。为确保不漏单和及时获取最新订单信息,平台设置了定时任务,通过批量请求有效地管理分页和限流问题。这一步骤通过高吞吐量的数据写入能力,使得大量订单能够快速被处理并准备好传输。
数据转换与映射
由于汤臣倍健营销云与金蝶云星辰V2的数据结构存在差异,在数据传输之前必须完成格式转换。在这一环节中,自定义的转化逻辑被应用以适应特定业务需求。运用了可视化的数据流设计工具,使整个过程直观易懂,并且便于维护。
写入至金蝶云星辰V2
对于最终的数据写入操作,我们调用了金蝶云星辰V2的API /jdy/v2/scm/sal_out_bound
。为了保证大规模数据交互中的稳定性和可靠性,系统具备异常处理机制以及错误重试功能。同时,借助实时监控与日志记录,我们可以即时捕捉并解决潜在的问题,从而保障顺利对接流程。
以上是本次技术案例开头关键步骤的简要介绍,为后续更深入细致地探讨每一步骤具体实现路径打下基础。
调用汤臣倍健营销云接口获取并加工数据
在数据集成的生命周期中,调用源系统接口是至关重要的一步。本文将详细探讨如何通过轻易云数据集成平台调用汤臣倍健营销云的接口/api/openapi/v1/erp/order/honour/agreement/header
,并对获取的数据进行初步加工。
接口调用配置
首先,我们需要配置接口调用的元数据。根据提供的元数据配置,我们可以看到以下关键字段和参数:
- API路径:
/api/openapi/v1/erp/order/honour/agreement/header
- 请求方法:
POST
- 请求参数:
orgId
: 组织IDpage
: 页码id
: 订单IDapplyerId
: 要货方IDsupplierId
: 供货方IDno
: 订单号distributionType
: 分销类型distributorId
: 分销商IDorderStatus
: 订单状态createDt
: 创建时间orderTypeCode
: 订单类型(如普通订单、直运销售)isDeliveryFreezed
: 是否暂停发货nature
: 单据类型(1订单、2退货)relatedApplyerId
: 关联交易经销商IDsaleDistribution
: 销售渠道disApplyerId
: 分销商IDstartDt
: 订单时间(开始)endDt
: 订单时间(结束)appStartDt
: 审批时间(开始)appEndDt
: 审批时间(结束)lastStartDt
: 最后修改时间(开始)默认值为
{{LAST_SYNC_TIME|datetime}}
lastEndDt
: 最后修改时间(结束)默认值为
{{CURRENT_TIME|datetime}}
请求参数的设置
在实际操作中,我们需要根据业务需求设置这些请求参数。例如:
{
"orgId": "c2ac6826c6004738b74d816fd5814d16",
"page": "1",
"orderStatus": "WAIT_FINANCE_AUDIT,WAIT_DELIVERY,PART_DELIVERY,ALL_DELIVERY,WAIT_OUT_STORAGE,PART_OUT_STORAGE,ALL_OUT_STORAGE,PART_CONFIRM,CONFIRM,AUDIT_SUCCESS,FINISH,CLOSE",
"nature": "1",
"lastStartDt": "{{LAST_SYNC_TIME|datetime}}",
"lastEndDt": "{{CURRENT_TIME|datetime}}"
}
上述配置中,我们指定了组织ID、页码、订单状态、单据类型以及最后修改时间范围。这些参数确保我们能够获取到符合条件的订单数据。
数据请求与清洗
在发送请求并成功获取数据后,下一步是对数据进行清洗和初步加工。假设我们从接口返回了如下JSON格式的数据:
{
"data": [
{
"id": "12345",
"no": "ORD001",
"applyerId": "A001",
"supplierId": "S001",
"orderStatus": "WAIT_DELIVERY",
"createDt": "2023-10-01T12:00:00Z",
...
},
...
],
...
}
我们需要对这些原始数据进行清洗,例如去除无用字段、标准化日期格式等。具体操作可以通过轻易云平台提供的数据处理工具来实现。
数据转换与写入
经过清洗后的数据,需要进行转换以适应目标系统的数据结构。例如,将日期格式从ISO标准转换为目标系统所需的格式,或者将某些字段值映射为目标系统可识别的代码。
最后,将转换后的数据写入目标系统,这一步通常涉及到另一个API调用或数据库写入操作。在轻易云平台上,可以通过配置相应的写入规则和映射关系来完成这一过程。
总结
通过以上步骤,我们实现了从汤臣倍健营销云接口获取订单数据,并进行了初步清洗和加工。这一过程展示了如何利用轻易云数据集成平台高效地完成数据请求与清洗,为后续的数据转换与写入打下坚实基础。在实际应用中,根据具体业务需求,还可以进一步定制和优化这些操作,以达到最佳效果。
利用轻易云数据集成平台实现金蝶云星辰V2API接口的数据ETL转换与写入
在数据集成过程中,将源平台的数据转换为目标平台所需的格式是关键步骤之一。本文将详细探讨如何利用轻易云数据集成平台,将已经集成的源平台数据进行ETL转换,转为金蝶云星辰V2API接口所能够接收的格式,并最终写入目标平台。
数据请求与清洗
首先,我们需要从源系统中提取原始数据,并进行必要的清洗和预处理。这一步确保了数据的完整性和一致性,为后续的ETL转换打下基础。
数据转换与写入
在完成数据清洗后,我们进入数据转换与写入阶段。以下是具体的元数据配置和对应的字段映射关系:
{
"api": "/jdy/v2/scm/sal_out_bound",
"effect": "EXECUTE",
"method": "POST",
"number": "id",
"id": "id",
"name": "id",
"idCheck": true,
"request": [
{
"field": "bill_source",
"label": "单据来源,固定传入ISV",
"type": "string",
"describe": "单据来源,固定传入APP",
"value": "ISV"
},
{
"field": "bill_date",
"label": "出库日期,格式:2019-01-01",
"type": "datetime",
"describe": "出库日期,格式:2019-01-01",
"value": "{{approveDt|date}}"
},
{
...
}
]
}
关键字段解释
-
单据来源(bill_source):
- 固定值“ISV”,表示单据来源于第三方系统。
-
出库日期(bill_date):
- 格式要求为
YYYY-MM-DD
,通过模板变量{{approveDt|date}}
自动填充。
- 格式要求为
-
单据编码(bill_no):
- 使用模板变量
{no}
直接映射源系统中的单据编码。
- 使用模板变量
-
客户ID(customer_id):
- 通过查找表关联获取客户ID,使用模板变量
_findCollection find id from b41660e7-fa00-318f-bbee-1395e229ee6b where number={clientAppNo}
。
- 通过查找表关联获取客户ID,使用模板变量
-
商品分录(material_entity):
- 包含多个子字段,如商品编号、仓库ID、数量、单位ID等,每个子字段都需要根据源系统的数据进行相应的映射和转换。例如,商品编号使用模板变量
{productNo}
,数量使用模板变量{{details.quantity}}
。
- 包含多个子字段,如商品编号、仓库ID、数量、单位ID等,每个子字段都需要根据源系统的数据进行相应的映射和转换。例如,商品编号使用模板变量
数据写入
在完成所有字段的映射和转换后,通过POST请求将数据发送到金蝶云星辰V2API接口。以下是一个示例请求体:
{
"bill_source": "ISV",
...
}
实现细节
-
异步处理:
- 轻易云数据集成平台支持全异步处理,确保在高并发情况下依然能够高效地进行数据转换和写入操作。
-
实时监控:
- 平台提供实时监控功能,可以随时查看数据流动和处理状态,确保每个环节都透明可见。
-
错误处理机制:
- 在实际操作中可能会遇到各种异常情况,如网络故障、接口响应超时等。轻易云平台提供完善的错误处理机制,可以自动重试或记录错误日志,以便后续排查和修正。
通过上述步骤,我们可以高效地将源平台的数据转换为金蝶云星辰V2API接口所需的格式,并成功写入目标平台。这不仅提升了业务流程的自动化程度,也极大地提高了数据处理效率。