EAS85 费用报销批量设置默认套打封面

业务背景
EAS8.5 启用费用报销模块,同时使用了发票云的影像系统。在使用过程中如果发生归档模版更换,或者员工在某组织第一次进行报销时,需要设置默认打印封面。因为EAS产品或者是浏览器的原因,导致员工设置默认打印封面有的时候会存在不生效的情形,或者还需要维护人员远程去协助进行设置,非常的麻烦。
处理思路
经过咨询总部数据老师,了解到标准产品的用户默认套打封面是由数据表(T_RPT_deftemplate)进行存储,并且相互之间的逻辑关系也存在。那就可以通过执行sql语句的方式进行功能实现。
具体思路如下:
将分配了职员报销角色的用户过滤 形成新的临时表 xx; 关键数据表:T_PM_USERROLEORG(用户角色权限) 这里因为我这边是用户都是通过角色进行授权的。
把没有设置默认套打模版的数据行插入到数据表T_RPT_deftemplate
具体步骤
步骤1:编写sql语句
SQL1: 过滤用户和角色语句
因为涉及到 差旅报销单、费用报销单和对公报销单
--步骤一: 将分配了职员报销角色的用户过滤 形成新的临时表 xx ---- //***** insert into XX SELECT * FROM (SELECT distinct JUESEQUANXIAN.FORGID || ' ' || YONGHU.FNAME_L2 FORGUSER, '/EAS_Note.kdrs/FI/CPBC/BizAccountOutBill/image' FTEMPPATH, '/归档封面-对公报销-A4横版.r1-print' FDEFTEMPLATE FROM T_PM_USERROLEORG JUESEQUANXIAN LEFT OUTER JOIN T_PM_USER YONGHU ON YONGHU.FID = JUESEQUANXIAN.FUSERID // 职员 LEFT OUTER JOIN T_ORG_ADMIN ZUZHIDANYUAN ON JUESEQUANXIAN.FORGID = ZUZHIDANYUAN.FID where JUESEQUANXIAN.FROLEID='Y/AAAADGoGkTtnMq' AND YONGHU.FFORBIDDEN = 0 AND YONGHU.FTYPE = 20 AND YONGHU.FISDELETE = 0 UNION SELECT distinct JUESEQUANXIAN.FORGID || ' ' || YONGHU.FNAME_L2 FORGUSER, '/EAS_Note.kdrs/FI/CPBC/tra/image' FTEMPPATH, '/归档封面-差旅报销-A4横版.r1-print' FDEFTEMPLATE FROM T_PM_USERROLEORG JUESEQUANXIAN LEFT OUTER JOIN T_PM_USER YONGHU ON YONGHU.FID = JUESEQUANXIAN.FUSERID // 职员 LEFT OUTER JOIN T_ORG_ADMIN ZUZHIDANYUAN ON JUESEQUANXIAN.FORGID = ZUZHIDANYUAN.FID where JUESEQUANXIAN.FROLEID='Y/AAAADGoGkTtnMq' AND YONGHU.FFORBIDDEN = 0 AND YONGHU.FTYPE = 20 AND YONGHU.FISDELETE = 0 UNION SELECT distinct JUESEQUANXIAN.FORGID || ' ' || YONGHU.FNAME_L2 FORGUSER, '/EAS_Note.kdrs/FI/CPBC/bizaccount/image' FTEMPPATH, '/归档封面-费用报销-A4横版.r1-print' FDEFTEMPLATE FROM T_PM_USERROLEORG JUESEQUANXIAN LEFT OUTER JOIN T_PM_USER YONGHU ON YONGHU.FID = JUESEQUANXIAN.FUSERID // 职员 LEFT OUTER JOIN T_ORG_ADMIN ZUZHIDANYUAN ON JUESEQUANXIAN.FORGID = ZUZHIDANYUAN.FID where JUESEQUANXIAN.FROLEID='Y/AAAADGoGkTtnMq' AND YONGHU.FFORBIDDEN = 0 AND YONGHU.FTYPE = 20 AND YONGHU.FISDELETE = 0)
SQL2: 通过 T_RPT_deftemplate 中的 FORGUSER + FTEMPPATH 字段 与临时表 TT_QLGY_DefaultCoverPage 的 FORGUSER + FTEMPPATH 进行比对,删除重复项
DELETE FROM TT_QLGY_DefaultCoverPage WHERE FORGUSER in (SELECT distinct FORGUSER FROM T_RPT_deftemplate) AND FTEMPPATH in (SELECT distinct FTEMPPATH FROM T_RPT_deftemplate)
SQL3:将临时表 XX中的结果 插入到 T_RPT_deftemplate 表中
insert into T_RPT_deftemplate select distinct * from TT_QLGY_DefaultCoverPage
SQL4:清空临时表
DELETE FROM TT_QLGY_DefaultCoverPage
步骤2:dep扩展实现功能
因为没有找到对用户列表界面的扩展路径,我选择用 物料档案的列表界面进行扩展。
新建扩展方案,新建功能、新建按钮。(这些步骤就省略了)
对扩展方案的扩展定义自定义的工具进行扩展

完整代码如下:
//**** 根据用户和用户分配的角色 (普通员工) 和 角色 分配的业务组织,设置 费用报销的 默认套打封面 //--- 这里的套打封面是指 启用了电子档案 需要同步至影像系统的套打封面 //--- 其他的业务单据,如无特殊要求,尽量不设置套打封面,用户自定义维护 //--- 这个功能主要是为了解决 员工在web端 设置默认套打封面的时,不会设置或者设置无效,另外在修改了 归档封面的模版名称之后,这里的语句中的套打模版值夜要同步修改 //--- 正常是 如果员工自己修改了,会自动同步修改表 T_RPT_deftemplate,修改了 套打别名的话 是不需要修改这里的脚本 var sql_chaxun="INSERT INTO TT_QLGY_DefaultCoverPage SELECT * FROM (SELECT DISTINCT ((JUESEQUANXIAN.FORGID || ' ') || YONGHU.FNAME_L2) FORGUSER, '/EAS_Note.kdrs/FI/CPBC/BizAccountOutBill/image' FTEMPPATH, '/归档封面-对公报销-A4横版.r1-print' FDEFTEMPLATE FROM T_PM_USERROLEORG JUESEQUANXIAN LEFT OUTER JOIN T_PM_USER YONGHU ON YONGHU.FID = JUESEQUANXIAN.FUSERID LEFT OUTER JOIN T_ORG_ADMIN ZUZHIDANYUAN ON JUESEQUANXIAN.FORGID = ZUZHIDANYUAN.FID WHERE (((JUESEQUANXIAN.FROLEID = 'Y/AAAADGoGkTtnMq' AND YONGHU.FFORBIDDEN = 0) AND YONGHU.FTYPE = 20) AND Y
EAS85 费用报销批量设置默认套打封面
业务背景EAS8.5 启用费用报销模块,同时使用了发票云的影像系统。在使用过程中如果发生归档模版更换,或者员工在某组织第一次进行报销时,...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇
下一篇



