轻易云平台实现ETL转换及金蝶云星空数据写入技术剖析

  • 轻易云集成顾问-贺强

店铺-客户同步:旺店通·企业奇门数据集成到金蝶云星空技术案例分享

在实现旺店通·企业奇门(以下简称"旺店通")的客户数据同步至金蝶云星空(以下简称“金蝶”)过程中,系统对接方案中涉及多个API接口调用和复杂的数据处理逻辑。本案例将详细探讨如何通过轻易云平台高效配置元数据,实现从源头到目的地的数据无缝衔接,包括定时抓取、批量写入以及异常处理等关键环节。

确保集成过程中的完整性及效率

在系统对接中,我们首先需要解决的是确保每个从旺店通获取的数据不会遗漏。为此,通过调用wdt.shop.query接口,从源头以分页方式进行可靠抓取,每次只获取一定数量的记录,不仅保障了性能,还可以避免因大批量请求导致的限流问题。这一步骤利用轻易云提供的实时监控功能,将各个环节透明化,显著提升运维效率。

大量数据快速写入金蝶

一旦成功获取了所需的数据,下一个挑战是如何将这些大量且多样化的信息高效写入到金蝶。在这里,我们采用了batchSave API来实现批量操作。一方面,这种方法能极大提高写入速度,另一方面,它也减少了网络交互次数,有利于降低延迟并提升整体性能。

数据格式差异与映射关系处理

由于旺店通和金蝶使用不同的平台,各自存储的数据格式和字段定义有较大差异。因此,在实际对接前,需要进行细致且准确的字段映射工作。我们通过定制化的映射模块,对源数据进行预处理,使其符合目标数据库要求,同时结合错误重试机制,应对可能出现的不一致或数据转换错误。

这个集成案例不仅展示了系统之间高效、安全、稳定的数据交互流程,也为未来类似项目奠定了坚实基础。 钉钉与CRM系统接口开发配置

调用旺店通·企业奇门接口wdt.shop.query获取并加工数据

在数据集成的生命周期中,调用源系统接口是关键的第一步。本文将详细探讨如何使用轻易云数据集成平台调用旺店通·企业奇门接口wdt.shop.query,并对获取的数据进行初步加工。

接口概述

wdt.shop.query接口用于查询旺店通系统中的店铺信息。该接口采用POST请求方式,支持分页查询,能够返回指定平台和店铺编号的详细信息。以下是该接口的元数据配置:

{
  "api": "wdt.shop.query",
  "method": "POST",
  "number": "shop_no",
  "id": "shop_id",
  "pagination": {
    "pageSize": 100
  },
  "idCheck": true,
  "request": [
    {
      "field": "platform",
      "label": "平台ID",
      "type": "string"
    },
    {
      "field": "shop_no",
      "label": "店铺编号",
      "type": "string",
      "describe": "代表店铺所有属性的唯一编码,用于店铺区分,ERP内支持自定义(ERP店铺界面设置),用于获取指定店铺数据信息"
    }
  ],
  "otherRequest": [
    {
      "field": "page_size",
      "label": "分页大小",
      "type": "string",
      "describe": "每页返回的数据条数,输入值范围1~100,不传本参数,输入值默认为40,使用举例单击这里",
      "value": "{PAGINATION_PAGE_SIZE}"
    },
    {
      "field": "page_no",
      "label": "页号",
      "type": "string",
      "describe":"不传值默认从0页开始",
     "value":"{PAGINATION_START_PAGE}"
    }
  ]
}

请求参数配置

在调用wdt.shop.query接口时,需要配置以下请求参数:

  1. platform: 平台ID,用于标识不同的平台。
  2. shop_no: 店铺编号,是唯一标识某个店铺的编码。

此外,还需要配置分页参数,以便处理大量数据时能够分批次获取:

  • page_size: 每页返回的数据条数,范围为1到100。
  • page_no: 页号,从0开始。

数据请求与清洗

在轻易云数据集成平台上,我们可以通过可视化界面配置上述请求参数,并发起API调用。以下是一个示例请求配置:

{
  "platform":"taobao", 
  "shop_no":"TB123456", 
  // 分页参数
  { 
    page_size:100, 
    page_no:0 
  }
}

通过上述配置,我们可以获取指定平台和店铺编号的详细信息。为了确保数据的一致性和完整性,可以启用idCheck选项,该选项会检查返回数据中的shop_id字段是否存在重复或缺失。

数据转换与写入

获取到原始数据后,需要对其进行初步清洗和转换。例如,可以对日期格式进行标准化处理,对数值字段进行单位转换等。以下是一个简单的数据清洗示例:

{
  // 原始数据
  {
    shop_id:12345,
    shop_name:"测试店铺",
    create_time:"2023-10-01T12:00:00Z"
  },

  // 清洗后的数据
  {
    shop_id:12345,
    shop_name:"测试店铺",
    create_time:"2023-10-01"
  }
}

在这个示例中,我们将创建时间字段从ISO8601格式转换为简单的日期格式。

实践案例

假设我们需要同步淘宝平台上的所有店铺信息,可以按照以下步骤进行操作:

  1. 初始化请求:设置初始分页参数(如page_size=100, page_no=0)。
  2. 发起API调用:使用轻易云平台发起对wdt.shop.query接口的调用。
  3. 处理响应数据:对返回的数据进行清洗和转换。
  4. 存储结果:将处理后的数据写入目标数据库或文件系统。
  5. 循环分页:根据返回结果判断是否需要继续请求下一页数据,直到所有数据获取完毕。

通过以上步骤,我们可以高效地完成淘宝平台上所有店铺信息的同步工作。这种方法不仅适用于淘宝平台,也适用于其他类似的平台,只需调整相应的请求参数即可。

总结来说,通过合理配置元数据和请求参数,并结合轻易云平台强大的可视化操作界面,我们可以高效地实现跨系统的数据集成和同步任务。 金蝶与SCM系统接口开发配置

轻易云数据集成平台:ETL转换与金蝶云星空API接口写入技术案例

在轻易云数据集成平台中,完成数据生命周期的第二步,即将已经集成的源平台数据进行ETL(Extract, Transform, Load)转换,并转为目标平台金蝶云星空API接口所能够接收的格式,最终写入目标平台。本文将详细探讨这一过程中的技术细节和实现方法。

数据请求与清洗

首先,我们需要从源平台获取原始数据并进行清洗。这一步通常包括数据的去重、格式化和标准化处理,以确保后续步骤中的数据质量。在本文中,我们假设这一阶段已经完成,重点讨论如何将清洗后的数据转换并写入金蝶云星空。

数据转换与写入

在轻易云数据集成平台中,元数据配置是实现数据转换和写入的核心。以下是一个典型的元数据配置示例:

{
  "api": "batchSave",
  "method": "POST",
  "idCheck": true,
  "operation": {
    "rowsKey": "array",
    "rows": 1,
    "method": "batchArraySave"
  },
  "request": [
    {
      "field": "FName",
      "label": "客户名称",
      "type": "string",
      "value": "{shop_name}"
    },
    {
      "field": "FNumber",
      "label": "客户编码",
      "type": "string",
      "value": "{shop_no}"
    },
    {
      "field": "FCreateOrgId",
      "label": "创建组织",
      "type": "string",
      "parser": {
        "name": "ConvertObjectParser",
        "params": "FNumber"
      },
      "value": "100"
    },
    {
      "field": "FUseOrgId",
      "label": "使用组织",
      "type": "string",
      "parser": {
        {
          name: 'ConvertObjectParser',
          params: 'FNumber'
        }
        value: '101'
        }
    },
    {
      field: 'FDescription',
      label: '描述',
      type: 'string'
    }
  ],
  otherRequest: [
    {
      field: 'FormId',
      label: '业务对象表单Id',
      type: 'string',
      describe: '必须填写金蝶的表单ID如:PUR_PurchaseOrder',
      value: 'BD_Customer'
    },
    {
      field: 'Operation',
      label: '执行的操作',
      type: 'string',
      value: 'BatchSave'
    },
    {
       field:'IsAutoSubmitAndAudit',
       label:'提交并审核',
       type:'bool',
       value:'true'
     },
     {
       field:'IsVerifyBaseDataField',
       label:'验证基础资料',
       type:'bool',
       describe:'是否验证所有的基础资料有效性,布尔类,默认false(非必录)',
       value:'false'
     }
   ]
}

API接口调用

在上述配置中,我们使用了batchSave API接口,并通过POST方法将数据发送到金蝶云星空。以下是具体字段的解释:

  • api: 指定要调用的API接口名称,这里是batchSave
  • method: HTTP请求方法,这里使用POST。
  • idCheck: 是否进行ID检查,这里设置为true。
  • operation: 包含操作相关的信息,如数组键名rowsKey、行数rows和方法名method

请求参数配置

请求参数部分定义了需要传递的数据字段及其对应关系:

  • FName: 客户名称,对应源数据中的shop_name
  • FNumber: 客户编码,对应源数据中的shop_no
  • FCreateOrgId: 创建组织,通过解析器ConvertObjectParser将值转换为金蝶系统所需格式,这里固定为"100"。
  • FUseOrgId: 使用组织,同样通过解析器转换为"101"。
  • FDescription: 描述字段,可以根据需要填充。

其他请求参数

其他请求参数部分定义了一些必要的元数据信息:

  • FormId: 金蝶业务对象表单ID,这里指定为"BD_Customer"。
  • Operation: 执行的操作类型,这里是"BatchSave"。
  • IsAutoSubmitAndAudit: 是否自动提交并审核,这里设置为true。
  • IsVerifyBaseDataField: 是否验证基础资料有效性,这里设置为false。

数据处理流程

  1. 提取(Extract):从源系统提取原始数据,并根据业务需求进行初步清洗和格式化处理。
  2. 转换(Transform):利用元数据配置,将源系统的数据字段映射到目标系统所需格式,并进行必要的数据类型转换和校验。
  3. 加载(Load):通过调用金蝶云星空API接口,将转换后的数据批量写入目标系统。

通过以上步骤,我们可以实现从源平台到目标平台的数据无缝对接,大大提高了业务流程的自动化程度和效率。在实际应用中,根据具体业务需求,还可以进一步优化和调整元数据配置,以满足不同场景下的数据集成需求。 用友与MES系统接口开发配置

更多系统对接方案