方案名称:打印模板应用问题解决两例方案制作人:产品支持部刘杰冉010-62436187Email:liujra@ufida.com.cn案例一:自定义变量取值无法取到问题解决问题背景:在项目上有时候会遇到在打印模板里用自定义变量通过GetColValue函数去库表里取数取不到的问题,原因可能有很多种,条件设置问题,返回记录入大于1等多种情况。有时候问题不好定位。其中有一种情况是大家经常遇到的,就是返回记录数大于1。造成这种情况的原因有一种就是某张单据曾经删除过后来单据号又被使用,造成库里有两条一样单据号的记录,如果不考虑dr标志,取值就有问题。现在举例避免以上问题。方案说明:修改打印模板自定义变量订单审批人的公式为e->getColValue2(so_sale,capproveid,vreceiptcode,vfirstbillcode,dr,0);capproveid->getColValue(sm_user,user_name,cuserid,e)案例二:IFF函数应用举例应用背景:在打印过程中经常会遇到某列值根据某些条件要取不同的数据源,我们一般会用自定义变量通过公式条件来实现!下面就举一个通过iff函数让单据编号列显示不同数据的例子来了解iff函数的应用。方案说明:1、添加自定义变量源单据号2、在自定义变量里用iff函数根据vbillcode字段的值不同来判断是取当前单据的单据号还是取源头单据的单据号。中间应用了GetColValue函数。具体设置如下:修改为:iif(vbillcode="期初结存"||vbillcode="本月合计"||vbillcode="本年累计",vbillcode,getColValue(ia_bill_b,vsourcebillcode,vbillcode,vbillcode))