金蝶云星空数据集成到旺店通·企业奇门:从盘盈单到委外入库单的高效对接实现
在实际业务操作中,金蝶云星空与旺店通·企业奇门系统之间的数据实时同步是确保业务流程顺畅的重要一环。本技术案例将分享一种具体的系统对接方案——如何将金蝶盘盈单快速、高效地集成到旺店通委外入库单(3000云仓)。
为了实现这一目标,我们需要解决以下几个关键技术问题:
- 
大批量数据处理和写入能力:我们需支持大量数据从金蝶云星空接口
executeBillQuery获取,并快速写入到旺店通·企业奇门API接口wdt.vip.wms.stockinout.order.push。 - 
实时监控与异常处理机制:采用集中监控和告警系统,及时跟踪每一条数据流动状态,以确保任何一点异常都能被迅速发现并处理。对于两端API调用过程中的分页、限流等问题,也需特别关注并设计相应策略。
 - 
自定义转换逻辑:考虑到两个系统的数据结构不同,在进行数据集成时,需要通过定制化的数据映射逻辑来保证两者间的数据格式一致性。
 - 
可靠抓取与重试机制:为避免遗漏或重复发送订单,配置定时任务进行可靠的数据抓取,同时加入错误重试机制以提高整体容错率。
 
本案例还会涵盖如何使用可视化工具进行数据流设计,使得整个配置过程更加直观且管理更为简便。通过科学合理的方案,实现了金蝶云星空至旺店通·企业奇门的无缝衔接,为业务增效添力。

调用金蝶云星空接口executeBillQuery获取并加工数据
在数据集成的生命周期中,调用源系统接口获取数据是至关重要的一步。本文将详细探讨如何通过轻易云数据集成平台调用金蝶云星空的executeBillQuery接口来获取盘盈单数据,并进行初步加工。
接口配置与请求参数
首先,我们需要配置调用金蝶云星空接口的元数据。根据提供的元数据配置,executeBillQuery接口采用POST方法,主要参数如下:
- api: 
executeBillQuery - method: 
POST - number: 
FBillNo - id: 
FBillEntry_FEntryID - pagination: 
{"pageSize":500} - idCheck: 
true 
请求字段包括但不限于以下内容:
[
  {"field":"FBillEntry_FEntryID","label":"FEntryID","type":"string","value":"FBillEntry_FEntryID"},
  {"field":"FID","label":"实体主键","type":"string","value":"FID"},
  {"field":"FBillNo","label":"单据编号","type":"string","value":"FBillNo"},
  {"field":"FDocumentStatus","label":"单据状态","type":"string","value":"FDocumentStatus"},
  {"field":"FStockOrgId_FNumber","label":"库存组织","type":"string","value":"FStockOrgId.FNumber"},
  {"field":"FDate","label":"日期","type":"string","value":"FDate"},
  {"field":"FBillTypeID","label":"单据类型","type":"string","value":"FBillTypeID"},
  {"field":"FStockerId","label":"仓管员","type":"string","value":"FStockerId"},
  {"field":"FCreatorId","label":"创建人","type":"string","value":"FCreatorId"},
  {"field":"FCreateDate","label":"创建日期","type":"string","value":"FCreateDate"},
  {"field": "FilterString", "label": "过滤条件", "type": "string", "describe": "示例写法 FSupplierId.FNumber = 'VEN00010' and FApproveDate>=", "value": "FApproveDate>='{{LAST_SYNC_TIME|datetime}}' and FStockOrgId.FNumber='3000' and FStockId.FNumber='1104'"}
]
数据请求与清洗
在实际操作中,我们需要根据业务需求设置过滤条件。例如,通过FilterString字段可以指定查询条件,如:
"FilterString": "FApproveDate>='2023-01-01' and FStockOrgId.FNumber='3000' and FStockId.FNumber='1104'"
该条件确保我们只获取特定库存组织和仓库中的盘盈单数据,并且这些数据是在指定日期之后审核通过的。
数据转换与写入
获取到原始数据后,需要对其进行转换和清洗,以便写入目标系统。在这个过程中,可以使用轻易云的数据转换功能,将原始字段映射到目标系统所需的字段格式。例如,将金蝶云星空中的FBillNo映射为旺店通中的订单编号。
以下是一个简单的数据转换示例:
{
  "sourceField": "FBillNo",
  "targetField": "OrderNumber"
}
此外,还可以对数据进行必要的清洗操作,例如去除无效字符、格式化日期等。这些操作可以通过轻易云平台提供的内置函数或自定义脚本来实现。
实时监控与错误处理
在整个数据集成过程中,实时监控和错误处理同样重要。轻易云平台提供了详细的日志记录和报警机制,帮助我们及时发现并解决问题。例如,如果某个请求失败,可以通过日志查看具体错误信息,并根据提示进行修正。
总结来说,通过合理配置元数据和过滤条件,我们可以高效地从金蝶云星空获取所需的数据,并利用轻易云平台强大的转换和清洗功能,将其无缝对接到目标系统中。这不仅提升了数据处理效率,也确保了业务流程的顺畅运行。

使用轻易云数据集成平台将金蝶盘盈单转换为旺店通委外入库单
在数据集成的生命周期中,第二步是将已经集成的源平台数据进行ETL(提取、转换、加载)处理。本文将详细探讨如何使用轻易云数据集成平台,将金蝶盘盈单的数据转换为旺店通·企业奇门API接口所能够接收的格式,并最终写入目标平台。
元数据配置解析
在进行ETL处理之前,我们需要理解目标平台API接口的元数据配置。以下是我们需要用到的配置项:
- api: 
wdt.vip.wms.stockinout.order.push,表示调用的API接口。 - method: 
POST,表示HTTP请求的方法。 - idCheck: 
true,表示需要进行ID检查。 - operation: 包含了数据合并和字段映射的信息。
- method: 
merge,表示合并操作。 - field: 
FBillNo,FDate,FStockId_FNumber,表示要合并的字段。 - bodyName: 
details_listss,表示明细列表的名称。 - bodySum: 
["F_UHZG_JJQty"],表示要汇总的字段。 - header: 
["FBillNo","FStockId_FNumber","FBillTypeID","Fnote"],表示表头字段。 - body: 
["FMaterialId_FNumber","FQty","FPrice","FLOT","F_UHZG_JJQty"],表示表体字段。 
 - method: 
 
请求参数解析
请求参数是API调用时所需的数据结构和内容:
- 
api_outer_no
- 类型:string
 - 描述:接口外部单号,用于避免重复推送数据
 - 值:
{FBillNo} 
 - 
warehouse_no
- 类型:string
 - 描述:仓库编号,用于区分不同仓库
 - 值:
{FStockId_FNumber} 
 - 
order_type
- 类型:string
 - 描述:出入类型,可选值为1(出库)或2(入库)
 - 值:
2 
 - 
auto_check
- 类型:string
 - 描述:自动审核选项,1为自动审核,0为不自动审核
 - 值:
1 
 - 
remark
- 类型:string
 - 描述:备注信息
 - 值:
{Fnote} 
 - 
goods_list
- 类型:array
 - 描述:入库单货品列表节点
 - 子节点:
- spec_no
- 类型:string
 - 描述:商家编码(SKU)
 - 值:
{{details_listss.FMaterialId_FNumber}} 
 - num
- 类型:string
 - 描述:入库数量
 - 值:
{{details_listss.F_UHZG_JJQty}} 
 - price
- 类型:string
 - 描述:价格
 - 值:
{{details_listss.FPrice}} 
 - batch_no
- 类型:string
 - 描述:批次编号,需要传客户端中存在的批次编号
 
 - remark
- 类型:string
 - 描述:货品明细备注
 
 
 - spec_no
 
 
数据转换与写入流程
- 提取源数据
 
首先,从金蝶盘盈单中提取所需的数据,包括表头和表体信息。表头信息包括单据编号、仓库编号、单据类型和备注等;表体信息包括物料编码、数量、价格、批次号等。
- 数据清洗与转换
 
根据目标平台API接口要求,对提取的数据进行清洗和转换。例如,将金蝶盘盈单中的物料编码映射到旺店通中的商家编码,将数量字段映射到入库数量字段等。
- 构建请求参数
 
根据元数据配置构建请求参数。将清洗和转换后的数据填充到相应的请求参数中。例如,将金蝶盘盈单中的单据编号填充到接口外部单号(api_outer_no)中,将仓库编号填充到warehouse_no中等。
- 发送请求
 
使用HTTP POST方法,将构建好的请求参数发送到旺店通·企业奇门API接口。确保请求成功后,可以通过返回结果确认数据是否成功写入目标平台。
实际案例应用
以下是一个实际案例应用示例:
{
    "api": "wdt.vip.wms.stockinout.order.push",
    "method": "POST",
    "idCheck": true,
    "operation": {
        "method": "merge",
        "field": "FBillNo,FDate,FStockId_FNumber",
        "bodyName": "details_listss",
        "bodySum": ["F_UHZG_JJQty"],
        "header": ["FBillNo", "FStockId_FNumber", "FBillTypeID", "Fnote"],
        "body": ["FMaterialId_FNumber", "FQty", "FPrice", "FLOT", "F_UHZG_JJQty"]
    },
    "request": [
        {"field": "api_outer_no", "label": "接口外部单号", "type": "string", "value": "{FBillNo}"},
        {"field": "warehouse_no", "label": "仓库编号", "type": "string", "value": "{FStockId_FNumber}"},
        {"field": "order_type", "label": "出入类型", "type": "string", "value": 2},
        {"field": "auto_check", "label": "自动审核", "type": "string", "value": 1},
        {"field": "remark", “label”: “备注”, “type”: “string”, “value”: “{Fnote}”},
        {
            “field”: “goods_list”,
            “label”: “goods_list”,
            “type”: “array”,
            “children”: [
                {“field”: “spec_no”, “label”: “商家编码”, “type”: “string”, “value”: "{{details_listss.FMaterialId_FNumber}}"},
                {“field”: “num”, “label”: 入库数量, ”type”: string, ”value”: "{{details_listss.F_UHZG_JJQty}}"},
                {“field”: price, ”label”:价格, ”type”: string, ”value”: "{{details_listss.FPrice}}"},
                {“field”: batch_no, ”label”: 批次{{details_listss.FLOT}}, ”type”: string},
                {“field”: remark, ”label”:备注, ”type”: string}
            ]
         }
    ],
    otherRequest:[{"field":"stockin_info","label":"stockin_info","type":"string"}]
}
通过上述步骤和配置,我们可以实现从金蝶盘盈单到旺店通委外入库单的数据转换与写入。这不仅提高了数据处理效率,还确保了不同系统之间的数据一致性和准确性。
