NC打印模板中审批流信息个性化配置.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NC打印模板中审批流信息个性化配置

NC打印模板中审批流信息个性化配置 谷雨 njgy@ 需求背景 打印模板中可以附加审批流信息,但是审批流的打印内容、格式均不可调整,打出来比较丑陋。客户要求只需要把审批流中涉及到的审批人姓名打印在单据上即可,其余信息不需要打印。 解决思路 审批流的信息记录在pub_workflownote表中,可以根据单据的PK找出对应的审批信息。通常一张单据的审批流会有多行记录,如果在打印模板中用getColValue函数只能取到一条记录,不符合要求,所以需要有个方法可以把多行中的人名都显示出来。 因此,通过建立一个视图,把所需的信息放入到这个视图中,再通过视图来取出对应的信息。 视图如下: DROP VIEW NCV502.ZT_VIEWS_CW_SPR; /* Formatted on 2010/05/31 17:21 (Formatter Plus v4.8.8) */ CREATE OR REPLACE FORCE VIEW ncv502.zt_views_cw_spr (billid, billno, cw_spr) AS SELECT a.billid, a.billno, cw_merge (CAST (MULTISET (SELECT sm_user.user_name FROM pub_workflownote, sm_user WHERE pub_workflownote.billid = a.billid AND pub_workflownote.ischeck X AND sm_user.cuserid = pub_workflownote.senderman ORDER BY pub_workflownote.ts ) AS strmarge_tbl ) ) AS cw_spr FROM (SELECT DISTINCT billid, billno FROM pub_workflownote WHERE pub_workflownote.approveresult null AND pub_workflownote.dr = 0) a; 上述视图中涉及到一个自定义的函数cw_merge,函数定义如下: CREATE OR REPLACE function NCV502.cw_merge(str in strmarge_tbl) return varchar2 is rlt varchar2(4000); begin for i in 1 .. str.count loop if i != str.count then rlt := rlt || str(i)|| , ; else rlt := rlt || str(i); end if; end loop; return rlt; end; / 此函数的作用是把多行记录中的某列值取出后用“,”连接在一起。 审批流中如果有流程驳回制单人重新审批的,视图会自动过滤出最终的审批通过流程,并且人名的排列顺序按审批流的先后处理顺序显示。 视图的最终效果如下: 有了此视图后,在打印模板中可以定义自定义变量。 getColValue(zt_views_cw_spr,cw_spr ,billid , h_pk_payapply),从这个视图中取出审批人姓名。 最终打印的结果如下: 引申应用 此方式可以解决由于getColValue函数只能取一行值而无法取多行值的局限性,对于需要取多行值的需求场景,均可以用此思路解决,且不限于打印模板,单据模板、账表模板等均可使用。 用友软件股份有限公司江苏区GBU业务部 ADD:南京市中山东路?298号中国人寿大厦15A TEL:+86(25

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档