使用轻易云平台实现数据转换与写入畅捷通T+接口

  • 轻易云集成顾问-陈洁琳

案例分享:畅捷通T+数据集成到畅捷通T+

在系统集成工作中,数据的精准、快速与可靠传输始终是关键环节。本文将重点介绍使用轻易云数据平台实现畅捷通T+之间的数据对接,通过调用其它入库单审核接口,高效完成从获取到写入的数据交换过程。

调用接口概述

我们将主要依赖两个API接口:

  1. 获取数据的API:/tplus/api/v2/OtherReceiveOpenApi/FindVoucherList
  2. 写入数据的API:/tplus/api/v2/OtherReceiveOpenApi/Audit

通过这两个接口,实现从一个畅捷通T+系统(以下简称源系统)抓取其他入库单据,并将其审核后写入另一个畅捷通T+系统(以下简称目标系统)。

实现步骤分析

确保不漏单

为保证过程中无遗漏,我们需要定时可靠地抓取源系统的接口数据。使用调度任务周期性调用FindVoucherList API,结合时间戳或流水号等方式确保所有新增和待处理单据均被捕获。

批量高效写入

为提高效率,可以采用批量操作,将抓取到的大量单据一次性发送至目标系统进行审核处理。通过调整合适的批次大小以及并发请求数量,平衡性能与负载。

分页与限流机制

考虑到API本身可能有分页和限流限制,需要在请求时管理好每页记录数及频率。在首次调用时关注返回结果中的分页信息,多次循环调用直到全部拉取完毕。同时,对HTTP状态码及响应中的错误信息做出相应重试机制设计,提高稳定性。

异步监控与日志记录

整个流程运行中需实现实时监控与详细日志记录,在出现异常情况时可以迅速回溯原因并重试。例如,当审核提交失败后可根据错误类型决定是否立即重试或延迟再尝,同时保存相关上下文供人工排查。

处理格式差异化

尽管两者都是同一平台,但不同业务场景下字段要求可能不完全一致。因此在对接前需进行必要的数据映射和转换,使得即使字段名称或格式有所区别,也可以顺利兼容转化,实现透明且无缝的数据交换过程。

通过这些细致且成熟的方法,本案例能够有效解决实际业务需求中的各种挑战,为企业提供了一条稳妥、高效且灵活的数据对接路径。 电商OMS与WMS系统接口开发配置

调用源系统畅捷通T+接口/tplus/api/v2/OtherReceiveOpenApi/FindVoucherList获取并加工数据

在数据集成的生命周期中,调用源系统接口获取数据是至关重要的一步。本文将深入探讨如何通过轻易云数据集成平台调用畅捷通T+接口/tplus/api/v2/OtherReceiveOpenApi/FindVoucherList来获取并加工数据。

接口概述

接口/tplus/api/v2/OtherReceiveOpenApi/FindVoucherList用于查询其他入库单的列表信息。该接口采用POST方法,返回指定条件下的入库单信息。元数据配置如下:

{
  "api": "/tplus/api/v2/OtherReceiveOpenApi/FindVoucherList",
  "effect": "QUERY",
  "method": "POST",
  "number": "Code",
  "id": "Code",
  "name": "Code",
  "idCheck": true,
  "request": [
    {"field":"selectFields","label":"查询字段","type":"string","describe":"部门编码","value":"VoucherCode"},
    {"field":"pageIndex","label":"pageIndex","type":"string","describe":"部门名称"},
    {"field":"pageSize","label":"pageSize","type":"string","describe":"指定返回字段","value":"10"},
    {"field":"paramDic_1","label":"paramDic参数","type":"object","describe":"上级部门","children":[
      {"field":"key","label":"key","type":"string","describe":"上级部门编码","value":"RDRecord.VoucherDate"},
      {"field":"value","label":"value","type":"string","describe":"上级部门名称","value":"{{DAYS_AGO_3|datetime}},{{CURRENT_TIME|date}}"}
    ]},
    {"field":"paramDic_2","label":"paramDic参数","type":"object","describe":"负责人","children":[
      {"field":"key","label":"key","type":"string","describe":"负责人编码","value":"RDRecord.BusiType.Code"},
      {"field":"value","label":"value","type":"string","describe":"负责人名称","value":"66,66"}
    ]},
    {"field":"paramDic_3","label":"paramDic_3参数", "type": "object", "children":[
      {"field": "key", "label": "key", "type": "string", "value": "RDRecord.VoucherState.Code"},
      {"field": "value", "label": "value", "type": "string", "value": "00,00"}
    ]}
  ],
  "otherRequest":[
    {"field": "detailkey1", "label": "detailkey1", "type": "string", "describe": "detailkey1", value: “VoucherCode”},
    {"field”: “detailkey2”, “label”: “detailkey2”, “type”: “string”, “describe”: “detailkey2”, value: “1”},
    {“field”: “otherapi”, “label”: “otherapi”, “type”: “string”, “describe”: “otherapi”, value: “/tplus/api/v2/OtherReceiveOpenApi/GetVoucherDTO”},
    {“field”: “detailkey”, “label”: “detailkey”, type: string, describe: detailkey, value: data}
  ],
  autoFillResponse: true
}

请求参数详解

  • selectFields:指定查询字段,这里设置为"VoucherCode"。
  • pageIndex:分页索引,用于控制分页查询。
  • pageSize:每页返回的数据条数,这里设置为10。
  • paramDic_1:包含两个子字段:
    • key:查询条件的键,这里设置为"RDRecord.VoucherDate"。
    • value:查询条件的值,使用动态变量表示时间范围,如"{{DAYS_AGO_3|datetime}},{{CURRENT_TIME|date}}"。
  • paramDic_2:包含两个子字段:
    • key:查询条件的键,这里设置为"RDRecord.BusiType.Code"。
    • value:查询条件的值,这里设置为"66,66"。
  • paramDic_3:包含两个子字段:
    • key:查询条件的键,这里设置为"RDRecord.VoucherState.Code"。
    • value:查询条件的值,这里设置为"00,00"。

数据请求与清洗

在轻易云平台中,通过配置上述元数据,可以实现对畅捷通T+系统中其他入库单信息的高效请求和清洗。具体步骤如下:

  1. 配置请求参数:根据业务需求,在平台界面中填写或选择相应的请求参数,如分页索引、每页条数等。
  2. 发送请求:通过POST方法向接口发送请求,携带配置好的参数。
  3. 接收响应并清洗数据
    • 平台自动解析响应结果,根据预设规则进行数据清洗,如去除无效字段、格式化日期等。

数据转换与写入

在完成数据请求与清洗后,下一步是将清洗后的数据进行转换,并写入目标系统。这一步通常包括以下操作:

  1. 数据映射:将源系统的数据字段映射到目标系统对应的字段。
  2. 格式转换:根据目标系统要求,对数据格式进行转换,如日期格式、数值精度等。
  3. 写入操作:通过API或数据库连接,将转换后的数据写入目标系统。

通过上述步骤,可以实现从畅捷通T+系统到目标系统的数据无缝对接,提高业务处理效率和准确性。在实际操作中,还可以结合轻易云平台提供的实时监控功能,确保每个环节都透明可控。 电商OMS与WMS系统接口开发配置

使用轻易云数据集成平台将源数据转换并写入畅捷通T+API接口

在数据集成的生命周期中,第二步是将已经集成的源平台数据进行ETL转换,并转为目标平台所能够接收的格式。本文将深入探讨如何通过轻易云数据集成平台,将源数据转换为畅捷通T+API接口所能接收的格式,并最终写入目标平台。

元数据配置解析

在本案例中,我们需要调用畅捷通T+系统的“其他入库单审核”接口。以下是元数据配置的详细信息:

{
  "api": "/tplus/api/v2/OtherReceiveOpenApi/Audit",
  "effect": "EXECUTE",
  "method": "POST",
  "idCheck": true,
  "request": [
    {
      "field": "ExternalCode",
      "label": "ExternalCode",
      "type": "string",
      "value": "{ExternalCode}"
    }
  ],
  "otherRequest": [
    {
      "field": "dataKey",
      "label": "dataKey",
      "type": "string",
      "describe": "dataKey",
      "value": "param"
    }
  ]
}

接口解析与请求构建

  1. API路径与方法

    • API路径:/tplus/api/v2/OtherReceiveOpenApi/Audit
    • 请求方法:POST
  2. 请求参数

    • ExternalCode:这是一个字符串类型字段,表示外部系统的单据编号。在请求中,这个字段需要从源数据中提取并映射到目标平台。
    • dataKey:这是一个额外的请求参数,用于描述特定的数据键值。在本例中,它被固定设置为"param"

数据转换与映射

在轻易云数据集成平台上,我们需要进行以下步骤来完成ETL过程:

  1. 提取源数据: 从源系统中提取包含必要字段(如ExternalCode)的数据。

  2. 数据清洗: 确保提取的数据符合目标平台要求,例如去除无效字符、处理空值等。

  3. 字段映射: 将清洗后的数据字段映射到目标API所需的字段。例如,将源系统中的某个字段映射为ExternalCode

  4. 构建请求体: 根据元数据配置,构建适合POST请求的JSON对象。如下所示:

{
  "ExternalCode": "<source_external_code>",
  "dataKey": "param"
}

其中,<source_external_code>是从源系统中提取并清洗后的外部单据编号。

实际操作步骤

  1. 配置ETL流程: 在轻易云平台上创建一个新的ETL流程,包括从源系统提取数据、清洗和转换,以及最终构建请求体。

  2. 设置API调用: 在ETL流程中添加一个HTTP请求节点,配置如下:

    • URL: /tplus/api/v2/OtherReceiveOpenApi/Audit
    • 方法: POST
    • 请求头: 设置必要的认证信息和Content-Type(通常为application/json)
    • 请求体: 使用前面构建好的JSON对象
  3. 执行与监控: 启动ETL流程,并实时监控其执行状态。确保每个环节都正确运行,并检查日志以排查可能出现的问题。

注意事项

  • ID检查:元数据配置中包含idCheck: true,意味着在进行操作之前,需要对ID进行校验,以确保唯一性和正确性。
  • 错误处理:在实际操作过程中,需要考虑各种可能出现的错误情况,例如网络问题、API响应异常等,并设计相应的错误处理机制。
  • 性能优化:对于大批量的数据处理,可以考虑批量操作或异步处理,以提高效率。

通过上述步骤,我们可以高效地将源平台的数据经过ETL转换后,成功写入畅捷通T+系统,实现不同系统间的数据无缝对接。这不仅提升了业务透明度和效率,也确保了数据的一致性和准确性。 金蝶与MES系统接口开发配置

更多系统对接方案