### 金蝶云星空数据集成案例分享:销售出库单-箱包事业部TW-OK
在这篇技术案例中,我们将分享如何有效地实现金蝶云星空到金蝶云星空的系统对接。具体来说,我们重点介绍的是“销售出库单-箱包事业部TW-OK”方案的实际运行经验和技术要点。该方案旨在通过高效的数据集成来优化业务流程,并确保数据处理全程无缝衔接。
首先,通过使用executeBillQuery API接口从源金蝶云获取相关业务数据,该接口能够定时可靠地抓取所需数据,保障了信息的及时性与准确性。同时,为了应对批量写入需求,我们采用batchSave API接口大量快速且安全地将获取的数据写入到目标金蝶云系统中,从而实现了跨系统间的数据同步。
在此过程中,利用轻易平台提供的信息流可视化设计工具,使得整个数据流动过程更加直观、更容易管理。此外,为了保证数据质量和稳健性,我们设置了集中监控和告警系统,能实时跟踪每个集成任务的状态及性能,一旦出现异常情况可以迅速响应并作出相应处理。
通过上述步骤,本次实施不仅满足了箱包事业部对销售出库单数据的一致性、高效性的要求,同时也为企业API资产管理提供了一种有效途径,帮助全面掌握资源使用情况,提高整体自动化水平。在后续部分,将详细拆解各个关键环节中的具体技术细节,包括分页限流策略、自定义转换逻辑、异常重试机制等内容,以供业界同仁参考与借鉴。
![用友与CRM系统接口开发配置](https://pic.qeasy.cloud/D6.png~tplv-syqr462i7n-qeasy.image)
### 调用金蝶云星空接口executeBillQuery获取并加工数据
在数据集成的生命周期中,调用源系统接口获取数据是至关重要的一步。本文将详细探讨如何通过轻易云数据集成平台调用金蝶云星空的`executeBillQuery`接口来获取销售出库单数据,并进行必要的数据加工。
#### 接口配置与请求参数
为了成功调用金蝶云星空的`executeBillQuery`接口,我们需要配置相应的元数据。以下是关键的配置项:
- **API**: `executeBillQuery`
- **Method**: `POST`
- **FormId**: `SAL_OUTSTOCK`(业务对象表单Id)
- **Pagination**: 支持分页,每页500条记录
- **FieldKeys**: 需查询的字段key集合
- **FilterString**: 过滤条件,用于筛选特定的数据
请求参数主要包括以下几类:
1. **基础信息字段**
- 单据类型 (`FBillTypeID.FNumber`)
- 单据编号 (`FBillNo`)
- 日期 (`FDate`)
- 审核时间 (`FApproveDate`)
- 销售组织 (`FSaleOrgId.FNumber`)
- 客户 (`FCustomerID.FNumber`)
- 销售门店 (`FBranchId.FNumber`)
- 销售部门 (`FSaleDeptID.FNumber`)
- 交货地点 (`FHeadLocationId.FNumber`)
- 对应组织 (`FCorrespondOrgId.FNumber`)
2. **物流信息字段**
- 承运商 (`FCarrierID.FNumber`)
- 运输单号 (`FCarriageNO`)
3. **人员信息字段**
- 销售组 (`FSalesGroupID.FNumber`)
- 销售员 (`FSalesManID.FNumber`)
- 仓管员 (`FStockerID.FNumber`)
4. **财务信息字段**
- 结算方 (`FSettleID.FNumber`)
- 付款方 (`FPayerID.FNumber`)
- 结算组织 (`FSettleOrgID.FNumber`)
- 结算方式 (`FSettleTypeID.FNumber`)
5. **其他重要字段**
- 收货人姓名 (`FLinkMan`)
- 收货人手机 (`FReceiverMobile`)
#### 数据请求与清洗
在请求数据时,我们需要确保分页参数和过滤条件的正确设置。以下是一个示例请求体:
```json
{
"FormId": "SAL_OUTSTOCK",
"FieldKeys": "FBillNo,FDate,FApproveDate,FSaleOrgId_FNumber,FCustomerID_FNumber",
"FilterString": "FSaleOrgId.FNumber='202' and FDate >='{{LAST_SYNC_TIME|date}}' and FCustomerID.FName NOT LIKE '%虚拟%'",
"Limit": 500,
"StartRow": 0
}
```
上述请求体中,`FieldKeys`指定了我们需要查询的字段,`FilterString`用于筛选符合条件的数据,分页参数包括每页记录数(`Limit`)和起始行索引(`StartRow`)。
#### 数据转换与格式化
获取到原始数据后,我们需要对部分字段进行格式化处理。例如,将审核时间(`FApproveDate`)转换为新的格式:
```json
{
"old": "FApproveDate",
"new": "FApproveDate_new",
"format": "date"
}
```
通过这种方式,可以确保数据在后续处理环节中保持一致性和可读性。
#### 实际案例应用
假设我们从金蝶云星空获取到如下原始数据:
```json
[
{
"FBillNo": "SO20230001",
"FDate": "2023-10-01",
"FApproveDate": "2023-10-02T12:00:00Z",
"FSaleOrgId_FNumber": "202",
"FCustomerID_FNumber": "CUST001"
}
]
```
经过格式化处理后的数据将变为:
```json
[
{
"FBillNo": "SO20230001",
"FDate": "2023-10-01",
"FApproveDate_new": "2023-10-02",
"FSaleOrgId_FNumber": "202",
"FCustomerID_FNumber": "CUST001"
}
]
```
这样处理后的数据可以直接用于后续的数据写入和分析步骤。
#### 总结
通过轻易云数据集成平台调用金蝶云星空接口,我们能够高效地获取销售出库单的数据,并进行必要的清洗和转换。这一过程不仅提升了数据处理的透明度和效率,还确保了不同系统间的数据无缝对接,为企业业务决策提供了可靠的数据支持。
![金蝶与外部系统打通接口](https://pic.qeasy.cloud/S27.png~tplv-syqr462i7n-qeasy.image)
### 使用轻易云数据集成平台实现销售出库单数据ETL转换与写入金蝶云星空API
在数据集成过程中,将源平台的数据转换为目标平台能够接收的格式是至关重要的一步。本文将详细探讨如何使用轻易云数据集成平台,将销售出库单数据转换并写入金蝶云星空API接口。
#### 1. 数据请求与清洗
在数据生命周期的第一阶段,我们已经完成了从源平台的数据请求和清洗工作。接下来,我们将关注如何利用轻易云的数据转换功能,将这些清洗后的数据转换为金蝶云星空所需的格式。
#### 2. 数据转换配置
我们需要配置ETL过程中的元数据,以确保数据能够正确地映射到金蝶云星空API接口中。以下是关键的元数据配置:
```json
{
"api": "batchSave",
"method": "POST",
"idCheck": true,
"operation": {
"method": "merge",
"field": "FBillTypeID_FNumber,FBillNo,FDate,FSaleOrgId_FNumber,FCustomerID_FNumber,FStockOrgId_FNumber",
"bodyName": "details",
"header": ["FBillTypeID_FNumber", "FBillNo", "FDate", "FSaleOrgId_FNumber", "FCustomerID_FNumber", "FStockOrgId_FNumber", "FGYFINDate", "FCustomerID_FDJZDYSWDYZZ"],
"body": ["FMaterialID_FNumber", "FRealQty", "FTaxPrice", "FStockID_FNumber", "FSoorDerno", "FAllAmount", "FDiscount", "FGYFINDate", "FCustomerID_FDJZDYSWDYZZ", "FDiscount"]
},
...
}
```
#### 3. 请求字段解析与映射
为了确保数据能够正确传递到目标系统,需要对请求字段进行解析和映射。例如,`FBillTypeID`字段需要转换为金蝶云星空所识别的格式:
```json
{
"field": "FBillTypeID",
"label": "单据类型",
...
"parser": {
"name": "ConvertObjectParser",
...
}
}
```
类似地,其他字段如`FDate`, `FSaleOrgId`, `FCustomerID`等也需要进行相应的解析和映射。
#### 4. 明细信息处理
对于明细信息(如物料编码、实发数量等),我们需要确保每个子字段都能正确映射到目标系统。例如,物料编码`FMaterialID`的配置如下:
```json
{
...
{
...
{
...
{
...
{
...
{
...
{
...
{
...
{
...
{
...
{
...
{
...
{
...
![轻易云数据集成平台金蝶集成接口配置](https://pic.qeasy.cloud/T18.png~tplv-syqr462i7n-qeasy.image)