系统对接集成案例分享:旺店通·企业奇门数据集成到金蝶云星空
在本次技术案例中,我们将针对“旺店通委外入库同步 金蝶其他入库”这一方案进行深入探讨,重点展示如何通过API接口实现两大平台的数据无缝对接。该过程不仅包括高效的数据抓取和写入,还涵盖了一系列复杂的实时监控与错误处理机制。
首先,利用wdt.vip.stock.outside.wms.query
这个API从旺店通·企业奇门获取委外入库数据。在调用该接口时,需要特别注意其分页和限流问题,以确保大量数据能够被稳定、快速地提取。这一步骤尤为重要,因为漏单或数据丢失会直接影响后续流程的准确性。因此,通过定时可靠的任务调度来抓取接口数据,是保障整个系统无误运行的一项关键操作。
其次,将获取到的数据批量写入至金蝶云星空,这需要借助其提供的batchSave
API。在执行这一步之前,必须先解决两个平台之间的数据格式差异问题,否则无法实现正确的数据转换与加载。同时,为了进一步优化性能,可以利用批量处理功能加速大规模数据写入,从而提升整体效率。
在对接过程中,不可避免地会遇到各种异常情况,例如网络不稳定导致的数据传输失败。为了处理这些问题,本案例设计了完善的错误重试机制,并通过日志记录功能实时监控整个数据处理过程,以便及时发现并修复潜在问题。此外,还根据业务需求进行了特定场景下的数据映射定制化,让不同系统间的信息交流更加顺畅。
最后,在所有流程环节均透明可视、状态明确且符合预期目标的时候,我们最终完成了此次系统对接集成项目,使得旺店通·企业奇门与金蝶云星空成功建立起高效、可靠、安全的数据交互关系。
调用旺店通·企业奇门接口wdt.vip.stock.outside.wms.query获取并加工数据
在数据集成的生命周期中,调用源系统接口是至关重要的一步。本文将详细探讨如何通过轻易云数据集成平台调用旺店通·企业奇门接口wdt.vip.stock.outside.wms.query
来获取并加工数据。
接口调用配置
首先,我们需要了解接口的基本配置和元数据。根据提供的元数据配置,接口wdt.vip.stock.outside.wms.query
采用POST方法进行请求,主要用于查询指定条件下的委外入库单信息。以下是该接口的请求参数及其描述:
warehouse_no
:仓库编号,代表仓库所有属性的唯一编码,用于区分不同仓库。status
:单据状态,此处固定为80(已完成)。order_type
:出入类别,此处固定为2(入库)。outer_no
:外部单号。api_outer_no
:接口外部单号。order_no
:委外单号,通过创建委外出入库单成功后系统生成的单号。start_time
:开始时间,用于按最后修改时间增量获取数据。end_time
:结束时间,用于按最后修改时间增量获取数据。page_size
:分页大小,每页返回的数据条数,默认值为30。page_no
:页号,不传值默认从0页开始。
请求参数设置
在实际操作中,我们需要根据业务需求设置具体的请求参数。例如,为了获取某个时间段内已完成的委外入库单信息,可以设置如下参数:
{
"warehouse_no": "WH001",
"status": 80,
"order_type": 2,
"start_time": "{{LAST_SYNC_TIME|datetime}}",
"end_time": "{{CURRENT_TIME|datetime}}",
"page_size": 30,
"page_no": 0
}
其中,start_time
和end_time
分别表示上次同步时间和当前时间,这两个参数可以通过轻易云平台自动填充。
数据清洗与转换
在获取到原始数据后,需要对数据进行清洗与转换,以便后续写入目标系统。在轻易云平台上,可以通过可视化界面配置清洗规则,例如:
- 字段映射:将源系统字段映射到目标系统字段。例如,将源系统中的
order_no
映射到目标系统中的订单编号字段。 - 数据过滤:根据业务需求过滤掉不需要的数据。例如,只保留状态为已完成(80)的记录。
- 格式转换:将日期格式统一转换为目标系统所需格式。
数据写入
经过清洗与转换后的数据可以通过轻易云平台直接写入目标系统,如金蝶ERP。在写入过程中,可以配置自动重试机制,以确保数据传输的可靠性。
{
"target_system": "Kingdee",
"mapping": {
"order_id": "id",
"order_no": "number",
...
},
...
}
实时监控与日志记录
轻易云平台提供实时监控和日志记录功能,可以帮助我们随时掌握数据流动和处理状态。一旦出现异常情况,可以通过日志快速定位问题并进行修复。
通过以上步骤,我们可以高效地实现从旺店通·企业奇门接口获取并加工委外入库单数据,并将其无缝对接到金蝶ERP等目标系统中。这不仅提高了业务透明度和效率,也确保了数据的一致性和准确性。
轻易云数据集成平台生命周期第二步:ETL转换与写入金蝶云星空API接口
在数据集成的生命周期中,ETL(提取、转换、加载)过程至关重要。本文将深入探讨如何通过轻易云数据集成平台,将已经集成的源平台数据进行ETL转换,转为金蝶云星空API接口所能够接收的格式,并最终写入目标平台。
数据请求与清洗
在进行ETL转换之前,首先需要从源平台获取原始数据,并进行必要的清洗和预处理。这一步骤确保了数据的准确性和一致性,为后续的转换和写入打下坚实基础。
数据转换与写入
接下来,我们重点关注如何将清洗后的数据转换为金蝶云星空API接口所能接收的格式,并通过API接口写入目标平台。以下是具体的元数据配置及其应用。
元数据配置解析
根据提供的元数据配置,我们可以将源平台的数据映射到金蝶云星空API接口所需的字段格式。以下是关键字段及其配置解析:
-
单据编号 (FBillNo)
{"field":"FBillNo","label":"单据编号","type":"string","describe":"单据编号","value":"{order_no}"}
- 将源平台的订单编号
{order_no}
映射到金蝶云星空中的FBillNo
字段。
- 将源平台的订单编号
-
单据类型 (FBillTypeID)
{"field":"FBillTypeID","label":"单据类型","type":"string","describe":"标准其他入库单:QTRKD01_SYS","parser":{"name":"ConvertObjectParser","params":"FNumber"},"value":"QTRKD01_SYS"}
- 使用固定值
QTRKD01_SYS
表示标准其他入库单,通过ConvertObjectParser
转换为金蝶系统识别的编码。
- 使用固定值
-
库存组织 (FStockOrgId)
{"field":"FStockOrgId","label":"库存组织","type":"string","describe":"组织","parser":{"name":"ConvertObjectParser","params":"FNumber"},"value":"{warehouse_no}","mapping":{"target":"64ad15a7d165da66451f96a9","direction":"positive"}}
- 将源平台的仓库编号
{warehouse_no}
映射到FStockOrgId
字段,并通过ConvertObjectParser
转换编码。
- 将源平台的仓库编号
-
日期 (FDate)
{"field":"FDate","label":"日期","type":"string","describe":"日期","value":"{modified}"}
- 将修改日期
{modified}
映射到FDate
字段。
- 将修改日期
-
货主类型 (FOwnerTypeIdHead)
{"field":"FOwnerTypeIdHead","label":"货主类型","type":"string","describe":"多类别基础资料列表","value":"BD_OwnerOrg"}
- 固定值
BD_OwnerOrg
表示货主类型。
- 固定值
-
部门 (FDEPTID)
{"field":"FDEPTID","label":"部门","type":"string","describe":"基础资料","parser":{"name":"ConvertObjectParser","params":"FNumber"},"value":"BM000009"}
- 固定值
BM000009
表示部门,通过ConvertObjectParser
转换编码。
- 固定值
-
明细信息 (FEntity) 明细信息包含多个子字段,如物料编码、收货仓库、实收数量等。
{ "field": "FMATERIALID", "label": "物料编码", "type": "string", "describe": "基础资料", "parser": {"name": "ConvertObjectParser", "params": "FNumber"}, "value": "_function TRIM( '{{details_list.goods_no}}' )" }
- 物料编码使用
_function TRIM( '{{details_list.goods_no}}' )
函数去除多余空格,并通过ConvertObjectParser
转换编码。
其他子字段类似,根据具体需求进行映射和转换。
- 物料编码使用
API 请求配置
在完成字段映射和转换后,需要构建API请求以便将数据写入金蝶云星空。以下是关键请求参数:
-
业务对象表单Id (FormId)
{"field": "FormId", "label": "业务对象表单Id", "type": "string", "describe": "必须填写金蝶的表单ID如:PUR_PurchaseOrder", "value": "STK_MISCELLANEOUS"}
- 固定值
STK_MISCELLANEOUS
表示业务对象表单ID。
- 固定值
-
提交并审核 (IsAutoSubmitAndAudit)
{"field": "IsAutoSubmitAndAudit", "label": "提交并审核", "type": "bool", "describe": "提交并审核", "value": true}
- 设置为
true
,表示提交并自动审核。
- 设置为
-
执行操作 (Operation)
{"field": "Operation", "label": "执行的操作", "type": "string", "describe": "执行的操作", "value": Save}
- 固定值
Save
表示保存操作。
- 固定值
批量保存方法
最后,通过批量保存方法将所有映射和转换后的数据一次性写入目标平台:
{"rowsKey": "array", "rows": 1, method: batchArraySave}
- 使用
batchArraySave
方法批量保存数据,提高效率和性能。
通过以上步骤,我们实现了从源平台到金蝶云星空的数据无缝对接,确保了数据的一致性和准确性。在实际应用中,可以根据具体业务需求进一步调整和优化元数据配置,以达到最佳效果。