【亚伟-EASCloud系列】之凭证套打数据源如何添加二开字段原创
金蝶云社区-王亚伟
王亚伟
28人赞赏了该文章 1087次浏览 未经作者许可,禁止转载编辑于2022年05月05日 14:46:25

业务场景描述:

        今天客户提出在凭证上面增加一个“制单人”字段,用来接收其他系统通过接口传过来的信息,并且需要在打印凭证的时候将这个字段打印出来。


处理方案分析:

        这个需求在大家看来是不是so easy?不就是在EAS动态扩展开发平台(简称:DEP)里面的业务数据源中将这个字段配置出来吗,分分中搞定。

        no no no 这里你就错了,凭证的套打数据源是区别于一般的单据套打数据源的,一般的单据套打数据源,是使用的BOS query数据源,所以大家在DEP中配置一下即可;凭证的套打数据源(Voucher.bos-query)是通过代码组装出来的,所以如果凭证套打数据源需要增加字段就需要修改代码了。

       image.png

        下面就给大家演示一下如果通过修改代码给凭证套打数据源增加二开的字段。


解决方案:

        1、找到凭证套打数据源对应的JAVA类 com.kingdee.eas.fi.gl.VoucherPrintDataProvider ;

        2、VoucherPrintDataProvider 类中是通过不同的方法获取不同数据的,如凭证单头、分录、辅助帐等,我们本次添加的是单头字段,所以就修改fillVoucherHeaderData方法。

        image.png

        3、修改col数据,添加我们需要增加到数据源中的字段person,以便能够在配置数据源时选择到;

image.png

        4、修改fillVoucherHeaderData方法,给person字段赋值(此处因为person字段是F7字段,所以借用工具类GlUtils处理,大家可以根据不同的字段类型进行取值赋值处理);

image.png

        5、以上已经完成了代码的修改,下面我们打开EAS客户端【系统平台】-【业务工具】-【套打】-【套打管理】,找到凭证的套打数据源(Voucher.bos-query),增加字段person;

        image.png

     image.png

        6、配置套打模板,配置制单人字段;

        image.png

        7、最终效果,如下图

image.png

        注意:因为此处必须是修改标准的类VoucherPrintDataProvider,所以需要注意后续打补丁时如果出现该类的冲突,就需要重新按照最新的标准代码修改后重新进行部署。(先打补丁后部署二开代码)

        以上就是EAS凭证套打增加二开字段的处理方案,仅供大家参考,谢谢!


     如果对您有用,请点赞、收藏、转发、关注,谢谢!【emoji】

赞 28