关联帖:
https://vip.kingdee.com/article/584444492812528896?productLineId=1&lang=zh-CN
此文包含两种方式来携带单据字段到报表进行显示:
1、使用系统中单据上预设的字段在报表中显示,请参考以下帖子:
https://vip.kingdee.com/article/494674627994583808?productLineId=1&isKnowledge=2&lang=zh-CN
2、自定义字段携带到报表中显示,详细方案请参考以下说明情况:
以应收款明细表为例进行说明,如涉及到
应收\应付款汇总表
应收\应付明细表、
应收\应付往来对账明细表、
应收\应付账龄分析表、
到期债权\债务表、
已出库未应收明细表、
应收\应付未开票明细表、
应收\应付单开票核销明细表、
销售\采购发票账龄分析表、
进项\销项发票明细表
以上报表都可以按照下面的方式进行自定义字段携带到报表,理论上只要是继承SysReportBaseService类的,也就是说可以重写BuilderReportSqlAndTempTable方法的,都可以通过以下方式来做。
注意:
1、这里有一个区别,以上报表中有些字段是都记录在BOSIDE中的(所有字段都可以在BOSIDE中查到),而有些字段是动态加载的(BOSIDE中查不到完整的字段),如动态加载的需要显示字段,请多加一步重写GetReportHeaders,参照第5点。
2、客户对账单、供应商对账单增加二开字段请忽略1~5点,请参考第6点。
以下是详细步骤:
1、在BOSIDE中找到你需要处理的报表,确定其使用的服务插件是什么
2、使用visual studio新建一个类,并继承原报表的类
添加相关引用:
添加USING:
继承标准产品的报表插件:
注:只需要重载基类的两个方法:public override void BuilderReportSqlAndTempTable(IRptParams filter,stringtableName)public override void CloseReport()
3、在BOSIDE中,对原报表做一下扩展
注册插件扩展后,添加注册二次开发的插件,并把原报表服务插件取消启用
添加报表字段,在扩展后的报表元数据中添加字段,注意添加的字段名,需要与代码中的字段名保持一致
4、扩展报表过滤条件
添加过滤及显示字段,在显示隐藏列中,把二开字段加进去
至此,简单账表的添加自定义字段基本流程已经完成。
5、动态加载字段的显示方式
通过BOS IDE中查看到对应报表的字段是动态加载的,比如以下:
如果是此种类型的报表,需要多做一步,重写GetReportHeaders()方法才能显示自定义的字段,详见下图:
6、客户对账单、供应商对账单不是简单账表、属于动态列表,可以参考以下帖来做:
https://vip.kingdee.com/article/285119786168737788?productLineId=1&lang=zh-CN
推荐阅读