使用轻易云平台实现金蝶云星辰V2数据转换与写入

  • 轻易云集成顾问-张妍琪

案例分享:聚水潭-金蝶云星辰V2商品数据同步

在现代电商平台的运营过程中,保证数据流动的准确性和实时性至关重要。本文将分享一个实际运行的系统对接集成案例——将聚水潭的数据集成到金蝶云星辰V2,实现商品信息的高效同步。

数据获取与处理

首先,通过调用聚水潭提供的 /open/sku/query 接口,我们能够按需抓取其系统内存储的商品数据。这一全过程必须解决接口分页和限流问题,以确保完整且快速地获取所有需要的数据。在具体实现中,我们采用了批量查询机制,并设计了可靠的定时任务来持续自动抓取更新后的数据。

数据格式转换与映射

由于聚水潭和金蝶云星辰V2之间的数据结构存在明显差异,在两个系统间进行无缝对接前,必须先处理这些不兼容的问题。我们在轻易云平台上编写了一系列脚本,将从聚水潭拉取到的数据格式化为符合金蝶云星辰V2要求的信息结构,以便顺利写入目标系统。

高效写入及异常处理

针对大量数据向目标平台(金蝶云星辰V2)的快速写入需求,我们使用了其提供的 /jdy/v2/bd/material API接口。在批量提交过程中,为防止网络波动或其他突发问题导致执行失败,还特别设置了错误重试机制。当某次请求因故障未能成功时,系统会记录并重新尝试直至完成。此外,通过实施实时监控与日志记录,每次读写操作都被详细追踪,可及时发现潜在问题并迅速解决。

这个简单但精炼流程展示出如何通过技术手段实现高度稳定、高效灵活的数据同步,为企业提高信息化管理水平奠定坚实基础。 用友与外部系统接口集成开发

调用聚水潭接口/open/sku/query获取并加工数据

在数据集成的生命周期中,调用源系统接口是至关重要的第一步。本文将详细探讨如何通过轻易云数据集成平台调用聚水潭接口 /open/sku/query 获取并加工数据。

接口配置与请求参数

首先,我们需要配置元数据以便正确调用聚水潭的SKU查询接口。以下是元数据配置的详细信息:

{
  "api": "/open/sku/query",
  "effect": "QUERY",
  "method": "POST",
  "number": "sku_id",
  "id": "sku_id",
  "name": "sku_id",
  "request": [
    {
      "field": "page_index",
      "label": "开始页",
      "type": "string",
      "describe": "第几页,从第一页开始,默认1",
      "value": "1"
    },
    {
      "field": "page_size",
      "label": "页行数",
      "type": "string",
      "describe": "每页多少条,默认30,最大50",
      "value": "50"
    },
    {
      "field": "modified_begin",
      "label": "修改开始时间",
      "type": "string",
      "describe": "修改起始时间,和结束时间必须同时存在,时间间隔不能超过七天,与商品编码不能同时为空",
      "value": "{{LAST_SYNC_TIME|datetime}}"
    },
    {
      "field": "modified_end",
      {
        ...

请求参数详解

  • page_index: 请求的页码,从第一页开始。默认值为1。
  • page_size: 每页返回的数据条数,默认值为30,最大值为50。
  • modified_begin: 数据修改的起始时间。使用 {{LAST_SYNC_TIME|datetime}} 占位符自动填充上次同步时间。
  • modified_end: 数据修改的结束时间。使用 {{CURRENT_TIME|datetime}} 占位符自动填充当前时间。
  • date_field: 时间类型字段,这里固定为 created

这些参数确保了我们能够灵活地分页获取最近修改的数据。

自动填充响应与条件过滤

在实际操作中,我们还需要对返回的数据进行自动填充和条件过滤:

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

设置 autoFillResponsetrue 可以让系统自动处理响应数据。此外,我们可以通过条件过滤来排除不必要的数据:

{
  ...
  ,"condition":[[{"field":"brand","logic":"neqv2","value":"包材"}]]
}

这里我们设置了一个简单的过滤条件:排除品牌为“包材”的商品。

数据请求与清洗

在完成接口配置后,我们可以发起请求并对返回的数据进行清洗。以下是一个典型的请求示例:

{
  ...
  ,"request":[
    {"field":"page_index","value":"1"},
    {"field":"page_size","value":"50"},
    {"field":"modified_begin","value":"2023-01-01T00:00:00Z"},
    {"field":"modified_end","value":"2023-01-07T23:59:59Z"},
    {"field":"date_field","value":"created"}
  ]
}

请求成功后,系统会返回包含SKU信息的数据集。此时,我们需要对数据进行清洗,例如去除无效字段、标准化日期格式等。

数据转换与写入

最后一步是将清洗后的数据转换为目标系统所需的格式,并写入目标数据库或系统。这一步通常涉及到字段映射、数据类型转换等操作。例如,将SKU ID从字符串转换为整数,将日期格式从ISO标准转换为目标系统所需格式等。

通过以上步骤,我们实现了从聚水潭接口获取并加工SKU数据,为后续的数据处理和分析打下坚实基础。这种全生命周期管理的方法不仅提高了业务透明度,还显著提升了数据处理效率。 打通用友BIP数据接口

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

在数据集成过程中,ETL(Extract, Transform, Load)是一个关键步骤。本文将详细探讨如何使用轻易云数据集成平台,将源平台的数据进行ETL转换,并最终写入目标平台——金蝶云星辰V2 API接口。

数据请求与清洗

在数据集成的生命周期中,首先要从源平台提取数据,并进行必要的清洗和预处理。假设我们已经完成了这一阶段,现在需要将清洗后的数据转换为金蝶云星辰V2 API接口所能接受的格式,并写入目标平台。

数据转换与写入

轻易云数据集成平台提供了丰富的元数据配置选项,使得数据转换过程变得高效且灵活。以下是针对金蝶云星辰V2 API接口的元数据配置:

{
    "api": "/jdy/v2/bd/material",
    "effect": "EXECUTE",
    "method": "POST",
    "number": "1",
    "id": "1",
    "name": "1",
    "idCheck": true,
    "request": [
        {
            "field": "number",
            "label": "商品编码",
            "type": "string",
            "describe": "商品编码,不传递则由后台生成(不设置有编码规则和更新时必传)",
            "value": "{sku_id}"
        },
        {
            "field": "name",
            "label": "商品名称",
            "type": "string",
            "describe": "商品名称",
            "value": "{name}"
        },
        {
            "field": "base_unit_id",
            "label": "计量单位id",
            "type": "string",
            "describe": "计量单位id",
            "value": "_findCollection find id from e31b3955-ec87-3707-b2cc-c149f56682a4 where name={unit}"
        },
        {
            "field": "barcode",
            "label": "条形码",
            "type": "string",
            "describe": "",
            "value": "{sku_code}"
        },
        {
            ...
        }
    ]
}

具体字段解析与配置

  1. 商品编码 (number):

    • 字段类型:string
    • 描述:商品编码,如果不传递则由后台生成。在没有设置编码规则和更新时必传。
    • 值:{sku_id},表示从源数据中提取的SKU ID。
  2. 商品名称 (name):

    • 字段类型:string
    • 描述:商品名称。
    • 值:{name},表示从源数据中提取的商品名称。
  3. 计量单位ID (base_unit_id):

    • 字段类型:string
    • 描述:计量单位ID。
    • 值:_findCollection find id from e31b3955-ec87-3707-b2cc-c149f56682a4 where name={unit},通过查询集合来获取相应的计量单位ID。
  4. 条形码 (barcode):

    • 字段类型:string
    • 描述:条形码。
    • 值:{sku_code},表示从源数据中提取的SKU代码。
  5. 品牌ID (brand_id):

    • 字段类型:string
    • 描述:品牌ID。
    • 值:_findCollection find id from e83d032d-6cef-33ee-b420-581abae47481 where name={brand},通过查询集合来获取相应的品牌ID。
  6. 规格型号 (model):

    • 字段类型:string
    • 描述:规格型号。
    • 值:{properties_value},表示从源数据中提取的规格型号信息。
  7. 价格明细 (price_entity):

    • 字段类型:array
    • 子字段:
      1. 参考成本 (price_cost_price):
        • 字段类型:string
        • 值:{cost_price},表示从源数据中提取的参考成本价格。
      2. 采购价 (price_purchase_price):
        • 字段类型:string
        • 值:{cost_price},表示从源数据中提取的采购价格。
      3. 零售价 (price_retail_price):
        • 字段类型:string
        • 值:{sale_price},表示从源数据中提取的零售价格。
      4. 价格等级1 (price_sale_price1):
        • 字段类型:string
        • 值:{other_price_1},表示从源数据中提取的其他价格等级信息。

实际操作步骤

  1. 配置API请求: 根据上述元数据配置,将API请求参数填充到轻易云的数据集成界面中。确保每个字段都正确映射到相应的数据源字段。

  2. 执行ETL转换: 使用轻易云的数据转换工具,对提取的数据进行清洗、转换,使其符合金蝶云星辰V2 API接口要求的格式。

  3. 发送请求: 配置好所有参数后,通过POST方法将转换后的数据发送到目标API接口 /jdy/v2/bd/material。确保请求成功并检查返回结果,以确认数据已成功写入目标系统。

以上步骤详细描述了如何利用轻易云平台实现对金蝶云星辰V2 API接口的数据转换与写入。这种高效、灵活的数据集成方式,不仅提升了业务透明度,还极大地提高了系统间的数据交互效率。 用友BIP接口开发配置

更多系统对接方案