1. A单据生效后自动生成B 单据

1.1. 简介

智元平台的后端脚本功能,支持在单据提交,审批、生效等流程动作发生时,触发自定义的jsf脚本(开发同事根据业务需要编写),可以实现包括数据库的增删改查等功能,常用的功能包括数据回写,数据校验,自定义数据表新增数据等cud功能

1.2. 生单原理介绍

A与B 单据有上下游的关联, A单据生效后想要在系统中自动生成B单据,企企提供智元平台,可以使用智元平台脚本来解决系统自动生单问题,

在智元平台中通过配置智元平台的生单映射, 在脚本中调用后端平台生单映射接口,得到相关数据后,调用新建接口创建B单据。本教程将介绍如果通过智元平台来解决自动生单问题。

流程图

上游单据生效后自动生成下游单据

1.3. 案例实现

流程图

收入确认单单生成付款单

系统单据收入确认单,收入确认单是收款单的上游,配置生单关系。维护付款单数据的时候,是需要先通过收入确认单的形式先提交申请,收入确认单审批通过后,再根据收入确认单的信息,自动生成付款单信息。

功能实现

步骤1:收入确认单生成收款单为系统预置生单关系,直接使用系统预置的生单关系

步骤2:填制收入确认单并点击提交

步骤3:收入确认单生效后,自动生成收款单,且收入确认单状态变为已收款

生成的收款单:

2、脚本代码实现:

if (objectType != "RevenueConfirmation") {
    return;
}
// 获取映射数据参数
var receiptDTO = {
    "from": objectType,
    "to": "Receipt",
    "fromIds": [objectId], // 映射到收款单
    "isPreview": true,
    "childrenIds": {},
    "commonParams": {
        "isPush": true
    },
    "parameters": {
        "srcObjectType": "RevenueConfirmation", //来源单据类型
        "billIoTypeId": "BillIoType.blue",      // 收款单单据方向
        "billTypeId": "N3EGHL501QD0031",        // 收款单单据类型
        "businessTypeId": "0H3L8K501JR0024",    // 收款单业务类型
        "webEditTemplateId": "MBAw5wzWR"        // 收款单单据模版
    }
};
// 获取映射数据
var mappingData = await restapi('baseapp', 'post', '/Projection/transformWithParams', receiptDTO);
if (mappingData.status != 'success') {
    return { status: 'error', message: '获取映射数据出错!' + JSON.stringify(mappingData) };
}
let data = mappingData.data[0];
data.billFullStatus = 'BillStatus.submitting';

console.log(` 创建参数==》 ${JSON.stringify(data)}  `);
// 创建收款单
var create_re = await create('Receipt', data, true);
if (create_re.status != 'success') {
    console.log(` 创建失败结果==》 ${JSON.stringify(create_re)} 《==`);
    return { status: 'error', message: ` 创建失败 ${JSON.stringify(create_re)} ` };
}

results matching ""

    No results matching ""