单据再次提交进入流程后如何显示、打印历史流程信息
1 问题描述
业务单据已经审核通过了,但是申请人又点了一次提交或者反审核后又提交进入流程(这里需要看具体的单据的控制逻辑,有些单据不用反审核就可以再次提交),将原先审核记录给覆盖了;现在将新流程终止了,需要将之前的审批记录放在单据审核信息查看或者是打印出来。
2 问题分析
当单据再次进入流程时会生成新的流程实例,目前系统在审批记录里显示的审批记录和打印的审批记录都是用的最新一次的流程实例,所以会出现上面问题描述里的场景:历史的审批信息被覆盖了。
3 解决方法
把最新实例的创建时间改到旧实例之前,就可以显示和打印历史流程:
步骤一:
先确认需要显示的历史流程信息的流程实例id:
select * from t_wf_hicomment where FPROCINSTID in (select fid from t_wf_hiprocinst where fbillno='单据编号') order by FPROCINSTID
通过单据编号在审批记录表里查出所有审批记录,从审批记录里确认需要显示的数据行(可以通过审批信息,审批时间等信息确认需要哪一次的审批记录),找到流程实例id FPROCINSTID 。例如上图,用户需要的流程实例就是红框标识出来的这次“1937084186041004032”。
步骤二:
在流程实例表里查询该单据的所有流程实例的创建时间和修改时间
select FPROCINSTID,fcreatedate,fmodifydate from t_wf_hiprocinst where fbillno='单据编号' order by fcreatedate desc
如上图查询结果,客户需要显示的第三行流程实例,那么就需要把前两行流程实例的创建时间和修改时间改到第三行流程实例的时间之前。
步骤三:
脚本更新一下第一行和第二行流程实例的fcreatedate和fmodifydate 的时间,上面的例子里fmodifydate 不用更新。
更新完数据后,审批记录和打印审批记录就可以显示第三条流程实例“1937084186041004032”的审批记录。
4 参考资料
单据再次提交进入流程后如何显示、打印历史流程信息
本文2024-09-23 00:55:03发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-142578.html