轻易云平台实现数据ETL流程的技术应用

  • 轻易云集成顾问-潘裕

聚水潭·奇门数据集成到畅捷通T+的技术案例分享

在系统对接和业务流程优化中,销售出库单的数据自动化处理尤为重要。本文将详细解构如何通过轻易云数据集成平台,实现聚水潭(Jushuitan)中的销售出库单数据高效、准确地导入到畅捷通T+系统中,并合并生成销货单的实际方案。

我们主要关注以下几点关键技术:

  1. 定时抓取聚水潭·奇门接口数据:利用jushuitan.saleout.list.query API,实现定时且可靠地从聚水潭获取最新销售出库记录。
  2. 大量数据快速写入到畅捷通T+:针对批量大、频次高的业务场景,通过/tplus/api/v2/saleDelivery/Create API,确保销货单的及时创建与更新。
  3. 分页和限流问题处理:为了应对API调用次数限制与大批量数据请求,我们设计了有效的分页策略,并设置速率限制以保障接口稳定性。
  4. 处理两系统间的数据格式差异:采用灵活的数据映射规则,将聚水潭输出的数据转换为适配畅捷通需求的格式,从而实现无缝衔接。
  5. 实时监控与日志记录:全程捕捉和监测每个环节的数据流动状态,记录操作日志用于异常追溯及问题诊断。

具体实施过程中,我们还重点考虑到了如下事项:

  • 畅捷通T+异常处理机制及错误重试逻辑
  • 定制化销货单字段映射方案,以满足不同店铺(ShopID=0)的数据管理需求
  • 高效运用轻易云提供的平台工具,提高配置效率并降低维护难度

下面我们将深入探讨上述技术细节和实现方法,为您展示一个完整、高效、安全可靠的数据集成解决方案。 用友与SCM系统接口开发配置

调用聚水潭·奇门接口获取并加工数据的技术案例

在数据集成生命周期的第一步,我们需要调用源系统的API接口以获取原始数据,并对其进行初步加工。本文将详细介绍如何通过调用聚水潭·奇门接口jushuitan.saleout.list.query来实现这一过程。

接口调用配置

首先,我们需要配置API接口的元数据,确保能够正确地请求和处理数据。以下是元数据配置的关键部分:

{
  "api": "jushuitan.saleout.list.query",
  "effect": "QUERY",
  "method": "POST",
  "number": "io_id",
  "id": "io_id",
  "name": "io_id",
  "formatResponse": [
    {
      "old": "io_date",
      "new": "io_date_new",
      "format": "date"
    }
  ],
  "idCheck": true,
  ...
}

在这个配置中,我们指定了API的名称、请求方法(POST),以及用于标识记录的字段io_id。此外,我们还定义了一个响应格式化规则,将字段io_date转换为新的字段名io_date_new并格式化为日期类型。

请求参数设置

为了获取所需的数据,我们需要设置请求参数。这些参数包括分页信息、时间范围、单据状态等。以下是具体的请求参数配置:

{
  "request": [
    {
      "field": "page_index",
      "label": "页数",
      "type": "string",
      "describe": "第几页,从第一页开始,默认1",
      "value": "1"
    },
    {
      "field": "page_size",
      "label": "每页行数",
      "type": "string",
      "describe": "每页多少条,默认25,最大25",
      "value": "{{PAGE_SIZE|default:25}}"
    },
    {
      ...
    },
    {
      ...
    },
    {
      ...
    }
  ]
}

其中,page_indexpage_size用于分页控制,确保我们可以分批次获取大量数据。时间范围参数start_timeend_time则用于限定数据的时间区间,这里使用了动态变量如 {{LAST_SYNC_TIME|datetime}}{{CURRENT_TIME|datetime}} 来自动填充时间值。

数据过滤与条件设置

为了确保获取的数据符合业务需求,我们可以设置过滤条件。例如,只获取店铺编号为0且商品数量大于0,并且不包含特殊单据的数据:

{
  ...
  "condition":[
    [
      {"field":"items.qty","logic":"gt","value":"0"},
      {"field":"shop_id","logic":"eqv2","value":"0"},
      {"field":"labels","logic":"notin","value":"特殊单"}
    ]
  ],
  ...
}

这些条件将被应用于查询结果中,以筛选出符合要求的数据记录。

数据处理与格式化

在成功获取数据后,我们需要对其进行初步处理和格式化。例如,将日期字段重新命名并格式化:

{
  ...
  "formatResponse":[
    {"old":"io_date","new":"io_date_new","format":"date"}
  ],
  ...
}

这个配置将原始响应中的 io_date 字段转换为 io_date_new 并格式化为标准日期类型,方便后续处理和分析。

自动填充响应

为了简化后续的数据处理步骤,可以启用自动填充响应功能:

{
  ...
  "autoFillResponse": true,
  ...
}

启用此功能后,系统会自动将响应中的相关字段填充到目标系统中,大大提高了数据处理效率。

实际操作步骤

  1. 配置元数据:按照上述元数据配置进行API接口的设置。
  2. 发送请求:根据设定的请求参数,通过POST方法发送请求。
  3. 接收并处理响应:接收API返回的数据,根据设定的格式化规则进行初步处理。
  4. 应用过滤条件:对接收到的数据应用预设的过滤条件,筛选出符合要求的数据记录。
  5. 自动填充:启用自动填充功能,将处理后的数据自动写入目标系统。

通过以上步骤,我们可以高效地调用聚水潭·奇门接口获取销售出库单数据,并进行必要的加工处理,为后续的数据转换与写入奠定基础。 电商OMS与ERP系统接口开发配置

使用轻易云数据集成平台实现聚水潭销售出库单到畅捷通销货单的ETL转换

在数据集成的生命周期中,将源平台的数据转换为目标平台所能接受的格式是关键步骤之一。本文将详细探讨如何利用轻易云数据集成平台,将聚水潭销售出库单的数据转换为畅捷通T+API接口所能接收的销货单格式,并写入目标平台。

数据请求与清洗

首先,我们需要从聚水潭系统获取销售出库单的数据,并对其进行清洗和预处理。这一步骤确保了数据的准确性和一致性,为后续的ETL转换打下基础。

数据转换与写入

接下来,我们将重点介绍如何将清洗后的数据通过ETL流程,转换为畅捷通T+API接口所能接收的格式,并最终写入目标平台。以下是具体操作步骤:

1. 配置元数据

根据提供的元数据配置,我们需要定义API接口、请求方法、字段映射等信息。以下是元数据配置的详细说明:

{
  "api": "/tplus/api/v2/saleDelivery/Create",
  "effect": "EXECUTE",
  "method": "POST",
  "idCheck": true,
  "operation": {
    "method": "merge",
    "field": "shop_name,io_date_new",
    "bodyName": "list",
    "bodySum": [],
    "header": [],
    "body": [
      "items_sku_id", 
      "items_qty", 
      "items_sale_price", 
      "items_sale_amount", 
      "io_id", 
      "io_date_new", 
      "shop_name", 
      "remark", 
      "shop_buyer_id"
    ]
  },
  ...
}
2. 字段映射与转换

在元数据配置中,我们需要将聚水潭销售出库单中的字段映射到畅捷通T+API接口对应的字段。例如:

  • VoucherDate 映射到 {{list.io_date_new}}
  • ExternalCode 映射到 {{list.io_id}}+1
  • Memo 映射到 {{list.remark}}

以下是部分字段映射的具体配置:

{
  "field": "VoucherDate",
  "label": "单据日期",
  "type": "string",
  "describe": "单据日期;默认系统日期",
  "value": "{{list.io_date_new}}"
},
{
  "field": "ExternalCode",
  ...
}
3. 销货单明细配置

对于销货单明细部分,需要特别注意存货、数量、含税单价等字段的映射。例如:

  • Inventory 映射到 {{list.items_sku_id}}
  • Quantity 映射到 {{list.items_qty}}
  • OrigTaxPrice 映射到 {{list.items_sale_price}}

以下是销货单明细部分的具体配置:

{
  ...
  {
    "field": "SaleDeliveryDetails",
    ...
    {
      ...
      {
        "field": "Inventory",
        ...
        {"name":"ConvertObjectParser","params":"Code"}
      },
      {
        ...
        {"name":"ConvertObjectParser","params":"Name"}
      },
      ...
    }
  }
}
4. API请求与执行

完成所有字段映射和配置后,通过POST请求将转换后的数据发送至畅捷通T+API接口,实现销货单的数据写入。

{
  ...
}

通过以上步骤,我们成功地将聚水潭销售出库单的数据转换并写入到了畅捷通T+系统中。整个过程利用轻易云数据集成平台提供的全异步、多异构系统支持,实现了不同系统间的数据无缝对接,确保了业务流程的高效运作。 数据集成平台API接口配置

更多系统对接方案