利用轻易云平台实现金蝶云星空API数据转换与写入

  • 轻易云集成顾问-李国敏

案例分享:旺店通·旗舰奇门销售退货单集成到金蝶云星空

在本案例中,我们将重点探讨如何通过06-ToB销售退货单集成方案(无关联),实现旺店通·旗舰奇门的销售退货数据高效、准确地对接至金蝶云星空系统。本次技术实施的核心涉及两个主要API接口——获取旺店通·旗舰奇门数据的wdt.wms.stockin.refund.querywithdetail和向金蝶云星空写入数据的batchSave。整个流程旨在确保数据从抓取到写入过程中的完整性和一致性。

首先,为了保证从旺店通·旗舰奇门获取的数据不漏单且稳定,我们采用定时任务来可靠地抓取接口数据。利用轻易云平台提供的调度功能,可以设定固定时间间隔自动调用 wdt.wms.stockin.refund.querywithdetail API,确保所有待处理的销售退货单都能够及时同步。

其次,为了解决大规模数据快速写入的问题,需要特别关注批量处理机制。在对接到金蝶云星空时,通过优化 batchSave API 调用频率与并发量,实现大量数据流高效导入。这不仅提高了系统响应速度,同时有效规避了因请求过多而引起服务瓶颈或失败的重要隐患。

此外,由于两套系统的数据结构存在差异,必须进行格式化转换及映射表配置,以匹配各自字段要求。例如,从旺店通·旗舰奇门返回的数据需要根据业务需求重新组织后,再调用 batchSave 接口进行对应字段映射与存储操作。同时,通过实时监控日志记录,每一笔交易详情都可以清晰追溯,有助于迅速定位与解决异常问题,提高整体运作效率。

总之,在此次元数据信息整合过程中,不仅要克服分页限流挑战,还需针对不同API机制设计灵活多变的方法。这样才能成功实现从旺店通·旗舰奇门到金蝶云星空全链条无缝衔接,有力辅助企业提升运营管理水平。 数据集成平台API接口配置

调用旺店通·旗舰奇门接口获取并加工数据

在数据集成的生命周期中,调用源系统接口是至关重要的一步。本文将详细探讨如何通过轻易云数据集成平台调用旺店通·旗舰奇门接口 wdt.wms.stockin.refund.querywithdetail 获取并加工数据。

接口配置与请求参数

首先,我们需要配置接口的元数据,以确保能够正确地调用和处理数据。以下是该接口的元数据配置:

{
  "api": "wdt.wms.stockin.refund.querywithdetail",
  "method": "POST",
  "number": "order_no",
  "id": "order_no",
  "idCheck": true,
  "request": [
    {
      "field": "pager",
      "label": "分页参数",
      "type": "object",
      "children": [
        {
          "field": "page_size",
          "label": "分页大小",
          "type": "string",
          "value": "50",
          "parent": "pager"
        },
        {
          "field": "page_no",
          "label": "页号",
          "type": "string",
          "value": "1",
          "parent": "pager"
        }
      ]
    },
    {
      "field": "params",
      ...
    }
  ],
  ...
}

请求参数解析

  • 分页参数 (pager)

    • page_size: 每页返回的数据条数,设置为50。
    • page_no: 当前请求的页码,初始值为1。
  • 业务参数 (params)

    • start_timeend_time: 分别表示查询的开始时间和结束时间,使用模板变量 {{LAST_SYNC_TIME|datetime}}{{CURRENT_TIME|datetime}} 动态生成。
    • status: 入库单状态,值为80表示已完成。
    • time_type: 时间条件类型,不传默认为0,即修改时间。
    • warehouse_no, shop_nos, stockin_no: 分别表示仓库编码、店铺编号(多个店铺编号使用英文逗号分隔)和入库单号。

数据请求与清洗

在配置好元数据后,通过轻易云平台发送POST请求到旺店通·旗舰奇门接口。以下是一个示例请求体:

{
  ...
  {
    "pager": {
      ...
    },
    ...
    {
      ...
      {
        ...
        {
          ...
        }
      }
    }
  }
}

返回的数据需要进行清洗和转换,以便后续处理。常见的数据清洗操作包括:

  • 字段映射:将返回的数据字段映射到目标系统所需的字段。例如,将order_no映射为目标系统中的订单编号。
  • 数据过滤:根据业务需求过滤不必要的数据。例如,只保留状态为80(已完成)的记录。
  • 格式转换:将日期格式转换为目标系统所需的格式。

数据转换与写入

清洗后的数据需要进一步转换,并写入到目标系统。在此过程中,可以利用轻易云平台提供的可视化工具进行操作,确保每一步都透明可见。以下是一个示例转换规则:

{
  ...
}

通过上述步骤,我们可以高效地从旺店通·旗舰奇门接口获取并加工数据,为后续的数据处理打下坚实基础。这一过程不仅提高了数据集成的效率,还确保了数据的一致性和准确性。 用友与SCM系统接口开发配置

利用轻易云数据集成平台实现金蝶云星空API接口的数据转换与写入

在数据集成的生命周期中,将已经集成的源平台数据进行ETL转换并写入目标平台是至关重要的一步。本文将详细探讨如何利用轻易云数据集成平台,将源平台的数据转换为金蝶云星空API接口所能够接收的格式,并最终写入目标平台。

元数据配置解析

首先,我们需要理解元数据配置中的各个字段及其含义。以下是一个典型的元数据配置示例:

{
  "api": "batchSave",
  "method": "POST",
  "idCheck": true,
  "operation": {
    "rowsKey": "array",
    "rows": 1,
    "method": "batchArraySave"
  },
  "request": [
    {
      "field": "FBillTypeID",
      "label": "单据类型",
      "type": "string",
      "describe": "单据类型",
      "parser": {
        "name": "ConvertObjectParser",
        "params": "FNumber"
      },
      "value": "XSTHD01_SYS"
    },
    ...
  ],
  ...
}

数据请求与清洗

在ETL过程的第一步,我们需要从源系统请求原始数据,并对其进行清洗和预处理。这一步骤通常包括以下几项任务:

  • 数据过滤:根据业务需求筛选出需要处理的数据。
  • 数据标准化:将不同格式的数据统一为标准格式。
  • 错误处理:识别并修正数据中的错误。

数据转换与写入

接下来,我们进入本文的重点,即如何将清洗后的数据转换为金蝶云星空API接口所能接受的格式,并写入目标平台。

API接口配置

根据元数据配置,我们可以看到API接口的基本信息,如apimethodidCheck等。这些信息决定了我们如何调用金蝶云星空的API进行数据写入。

字段映射与解析

元数据配置中的request字段定义了需要传递给API的具体参数。每个参数都有以下几个属性:

  • field: 字段名
  • label: 字段标签
  • type: 数据类型(如string, date, int等)
  • describe: 字段描述
  • parser: 数据解析器,用于将源系统的数据转换为目标系统所需格式
  • value: 字段值,可以是固定值或动态值

例如,以下字段定义了单据类型:

{
  "field": "FBillTypeID",
  "label": "单据类型",
  "type": "string",
  "describe": "单据类型",
  ...
}

其中,parser字段使用了ConvertObjectParser解析器,将源系统的数据转换为目标系统所需的格式。

嵌套结构处理

一些复杂的数据结构可能包含嵌套字段,例如明细信息(FEntity)和财务信息(SubHeadEntity)。这些嵌套结构需要特别处理,以确保所有子字段都能正确映射和解析。例如:

{
  ...
  {
    "field":"FEntity",
    ...
    "children":[
      {
        ...
        {
          field: 'FMaterialId',
          label: '物料编码',
          type: 'string',
          parser: { name: 'ConvertObjectParser', params: 'FNumber' },
          value: '{{details_list.spec_no}}'
        },
        ...
      }
    ]
  }
}
调用API进行批量保存

在完成所有字段映射和解析后,我们可以调用金蝶云星空的批量保存API。根据元数据配置,使用POST方法调用batchSave接口,并传递已转换的数据。

例如,使用Python代码调用API:

import requests
import json

url = 'https://api.kingdee.com/batchSave'
headers = {'Content-Type': 'application/json'}
data = {
    # 根据元数据配置生成的数据结构
}

response = requests.post(url, headers=headers, data=json.dumps(data))
if response.status_code == 200:
    print('Data saved successfully')
else:
    print('Failed to save data')

通过这种方式,我们可以将清洗和转换后的数据无缝地写入到金蝶云星空平台,实现不同系统间的数据集成。

总结

本文详细探讨了如何利用轻易云数据集成平台,将源平台的数据进行ETL转换,并通过金蝶云星空API接口写入目标平台。通过理解和应用元数据配置,我们可以高效地完成这一关键步骤,确保业务流程的顺利进行。 金蝶云星空API接口配置