如何通过服务流程进行单据反写

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:2

如何通过服务流程进行单据反写


服务流程是集成云推出的面向复杂集成场景的低代码服务编排工具,能够把已有的集成对象、集成方案、消息服务、API接口等集成资源,通过流程化设计编排成全新的应用服务,以支持更加复杂的业务场景。


例如基础数据分发到多个系统、数据消费需要从多源取数、基于某个数据参数处理不同的集成过程等等。


为了帮助大家快速掌握服务流程的使用方法,我们推出了系列文章,通过11个典型案例向大家介绍服务流程的高级技巧。


在上期集成服务流程经典案例系列文章如何使用服务流程对启动方案失败进行自动补偿中,我们为大家介绍了服务流程的第三个经典案例:如何在服务流程中进行失败单据补偿。


本期,小编继续为大家介绍第4个案例:如何通过服务流程进行单据反写,包括以下3个要点:


  • 单据反写案例需求背景

  • 如何根据反写背景来配置服务流程属性

  • 如何通过监听操作,完成单据之间的回写与反写流程




单据反写需求背景


本篇文章将以集成云的演示demo中的基础资料demo1集成到基础资料demo2为例(后文简称demo1、demo2),为大家介绍单据反写的背景及操作方法。


单据反写的需求背景如下:

创建demo1保存事件监听服务流程。当基础资料demo1进行保存操作时,触发该服务流程,将demo1的单据信息同步至demo2,并将是否同步成功回写到demo1的别名字段上(此处使用别名字段便于演示)。


业务流程



注意事项


实际使用时,单据A与单据B应当分别处于不同的系统。本案例为方便起见,使用了当前系统的demo1和demo2代替。


同时,本案例仅提供主要的业务分析与服务流程设计思路。在具体应用时,应根据现场实际业务需求调整服务流程节点和流程路线的设计。


设置服务流程属性

2.1 配置服务流程属性和变量


首先,由于需要监听实体上的事件,应将服务流程的【启动方式】设置为“事件触发”。


启动方式


在【流程变量】添加变量“demo1”和“demo2”用以存储获取的数据和加载的数据,“demo1feedback”用以存储数据加载的反馈信息。


流程变量示例


在【依赖资源】下将取数和写数的集成对象(数据来源)作为依赖资源引入服务流程中。


依赖资源示例


服务流程节点解析


服务流程图概览


3.1 开始节点 —— demo1保存


配置需要监听的集成对象相应单据事件,以及需要的取出字段,将获取到的数据赋值给流程变量“demo1”。


开始节点-事件触发


3.2 字段映射 —— demo1映射到demo2


通过字段映射节点配置流程变量“demo1”和“demo2”之间的映射关系,将流程变量“demo1”的数据赋值给流程变量“demo2”。


字段映射节点


3.3 数据加载 —— 写入demo2


通过配置数据加载节点,在节点中定义目标对象上的操作,以及用以判断数据唯一性的候选键,将流程变量“demo2”上的数据写入目标集成对象


数据加载节点-写入demo2


3.4 错误转移 —— 捕获异常与组装回调信息


通过错误转移将加载数据中抛出的错误进行捕获,然后使用脚本节点分别构造加载成功加载失败的信息。


接着,将空map赋值给流程变量“demo1feedback”,只需分别将流程变量“demo1”的候选键字段和处理状态添加到该变量即可。


加载成功,组装demo1同步成功的回调信息,相关脚本如下:


//构造demo1同步成功的回调info对象,只需包含需要更新的状态字段和候选键字段
//如demo1保存成功状态为A,同步成功状态为B,同步失败为C,则此处赋值feedbak对象的status为B(demo1feedback.status='B')
demo1feedback = {};
demo1feedback.alias_name = '单据同步成功';//此处仅为演示作用赋值在别名字段
demo1feedback.number = demo1.number;//赋值候选键字段

脚本节点-成功


加载失败,组装demo1同步失败的回调信息,相关脚本如下:


//构造demo1同步成功的回调info对象,只需包含需要更新的状态字段和候选键字段
//如demo1保存成功状态为A,同步成功状态为B,同步失败为C,则此处赋值feedbak对象的status为C(demo1feedback.status='C')
demo1feedback = {};
demo1feedback.alias_name = '单据同步失败';//此处仅为演示作用赋值在别名字段
demo1feedback.number = demo1.number;//赋值候选键字段

脚本节点-失败


3.5 数据加载 —— 使用demo1回调信息回写demo1


通过数据加载节点,配置上一步构造的流程变量“demo1feedback”和基础资料demo1,将数据加载的状态信息回写到基础资料demo1上。


数据加载节点-回写demo1


参考资料


更多关于集成服务云的知识,可参考下述资料:


集成服务流程操作指南





#往期推荐#


# 如何在服务流程中进行API集成

# 如何在服务流程中使用消息集成

# 如何使用服务流程对启动方案失败进行自动补偿

# 一篇揭秘服务流程设计器的好文,速看!



更多精彩内容,“码”上了解!↓



如何通过服务流程进行单据反写

服务流程是集成云推出的面向复杂集成场景的低代码服务编排工具,能够把已有的集成对象、集成方案、消息服务、API接口等集成资源,通过流程...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息