定时器发起A8流程表单
<p><strong>简要描述:</strong> </p>
<ul>
<li>通过定时器轮询第三方系统,定时发起A8流程表单。</li>
<li>可用于将业务系统的待审批数据自动发起A8流程表单进行审批。</li>
</ul>
<hr />
<p><strong>必要条件:</strong> </p>
<ul>
<li>A8流程表单</li>
<li>DEE任务</li>
</ul>
<hr />
<p>这里主要讲解:
1、如何创建一个DEE任务能够查询第三方数据库并发起A8流程表单
2、如何设置定时器定时执行DEE任务
3、如何设置流程表单相关</p>
<hr />
<h3>一、DEE可视化配置工具-创建DEE任务</h3>
<h4>1.首先获取第三方表数据,每次获取一条数据</h4>
<p>1)第三方数据库表结构
<img src="https://www.showdoc.cc/home/common/visitfile/sign/6b277bb8e6043bcabf74711c28892780?showdoc=.jpg" alt="" /></p>
<p>2)来源配置,因为是从数据库里面取数据,所以我们采用【JDBC适配器】
<img src="https://www.showdoc.cc/home/common/visitfile/sign/d5717c4762237636a8592557bed9f66e?showdoc=.jpg" alt="" /></p>
<p>3)对取出来的数据做一些限制,每次只取一条数据,并且取flag=0的数据,这里我们对第三方数据库的数据有标记
flag=0表示没有被DEE任务读取
flag=1表示已经被DEE任务读取但是还未被发起流程表单
flag=2表示已经被DEE任务读取并且已经发起A8流程表单
<img src="https://www.showdoc.cc/home/common/visitfile/sign/1760c5e5ce1b051a6be3d775947adaba?showdoc=.jpg" alt="" /></p>
<h4>2.使用脚本适配器更新读取的数据状态,避免并发时DEE任务脏读</h4>
<p>1)这里我们使用脚本适配器来更新flag=1,避免下一个定时器触发的DEE任务脏读;并且将id放入上下文参数中,方便后续更新状态使用
<img src="https://www.showdoc.cc/home/common/visitfile/sign/bd16a38e91978391e76be0cf0e052207?showdoc=.jpg" alt="" /></p>
<p>2)以上我们就完成了读取第三方数据库数据,并且更新数据状态,防止脏读</p>
<h4>3.转换配置,需要将我们从第三方数据库读取出来的数据映射成为A8表单需要的数据格式</h4>
<p>1)使用【字段映射】适配器转换数据格式,载入来源字段
<img src="https://www.showdoc.cc/home/common/visitfile/sign/58e712d72a975110561559827e129f55?showdoc=.jpg" alt="" /></p>
<p>2)使用【批量配置】载入目标A8表单字段
<img src="https://www.showdoc.cc/home/common/visitfile/sign/9cd4299b2e8f7c80310f785561fb51b7?showdoc=.jpg" alt="" /></p>
<p>3)勾选【是否使用到A8表单】,注意:只要在【字段映射】中使用到了A8表单字段,那么必须要勾选【是否使用到A8表单】
<img src="https://www.showdoc.cc/home/common/visitfile/sign/7959ac1feac27d494776114ec1545e76?showdoc=.jpg" alt="" /></p>
<p>4)创建转换适配器-【XSLT格式转换】
<img src="https://www.showdoc.cc/home/common/visitfile/sign/2de173e9978725021a973809347e3e57?showdoc=.jpg" alt="" /></p>
<h4>4.以上我们就完成了:</h4>
<p>1、第三方系统数据读取,并标记
2、将第三方系统数据转换成为A8表单所需要数据
<img src="https://www.showdoc.cc/home/common/visitfile/sign/c0606e8fd91171eaf147decaea356d81?showdoc=.jpg" alt="" /></p>
<h4>5.输出目标-发起A8流程表单</h4>
<p>1)使用输出目标中的【A8接口】适配器,完成适配器配置
<img src="https://www.showdoc.cc/home/common/visitfile/sign/a30f20972c4d3556e7a2d727b3d87dba?showdoc=.jpg" alt="" /></p>
<h4>6.更新数据状态flag=2,表示该条数据已经成功发起A8流程表单</h4>
<p>1)这里我们同样使用脚本适配器来完成状态flag=2的更新
<img src="https://www.showdoc.cc/home/common/visitfile/sign/bd9ad1ecbc6ffcc27af2bc512af46d57?showdoc=.jpg" alt="" /></p>
<h4>7.到此我们完成了整个DEE任务的配置!</h4>
<hr />
<h3>二、设置定时器</h3>
<h4>1.在DEE可视化配置工具中使用定时器</h4>
<p>进入【基础设置】-【定时器管理】-【新建】
<img src="https://www.showdoc.cc/home/common/visitfile/sign/2aff0ad4db5d6434dda17a81650f5ba8?showdoc=.jpg" alt="" /></p>
<h4>2.在A8中使用定时器</h4>
<p>1、需要将DEE可视化配置工具中的定时器停用
2、将DEE任务导出drp包,并且部署到A8中
3、通过集团管理员(集团版)/单位管理员(企业版)登录,打开【DEE控制台】-【定时器设置】,重新启用定时器
<img src="https://www.showdoc.cc/home/common/visitfile/sign/15d715a4300bbbaa268591b668d92daf?showdoc=.jpg" alt="" /></p>
<hr />
<h3>三、结果展示</h3>
<p>1)首先我们看看我们准备的数据,4条数据,也就是说定时器会花费4分钟完成自动发起4张表单
<img src="https://www.showdoc.cc/home/common/visitfile/sign/fb7eb51cc44987b1c6f76e3eb22d1b3f?showdoc=.jpg" alt="" /></p>
<p>2)目前A8待办是空的
<img src="https://www.showdoc.cc/home/common/visitfile/sign/a39103899862e25cfd741a06f9897e12?showdoc=.jpg" alt="" /></p>
<p>3)最后结果,完美发起A8流程表单,并且数据全部更新为flag=2
<img src="https://www.showdoc.cc/home/common/visitfile/sign/a91310f3cc257d052357b1552a33bf22?showdoc=.jpg" alt="" /></p>
<p><img src="https://www.showdoc.cc/home/common/visitfile/sign/80999e07906a59ebb6dc8a9935e7777a?showdoc=.jpg" alt="" /></p>