万能报表每页打印行数控制【分享】
金蝶云社区-天冥异
天冥异
4人赞赏了该文章 1,091次浏览 未经作者许可,禁止转载编辑于2018年08月02日 17:23:37

需求:万能报表打印每页只显示10行分录数据。

实现:先上效果,
自定义的业务单据,
单据编号为007的单据,单据体体有个小数类型字段,
添加了16行分录,数值分别从1.0-16.0。


我们按每页10条分录进行万能报表的控制打印,
万能报表的实际展现效果,
007号单据对应的万能报表,
第一页万能报表展现了单据体的1.0-10.0,只展现了10行分录,

切换到下一页,第二页,万能报表007号预览显示剩余的6行分录数据。



相关的具体配置实现:
万能报表模板,设计的比较简单,
我们是想控制明细带区,也就是绑定单据体的 Detail2带区只打印10行,


该怎么实现呢?

从上面的截图我们可以看到,
万能报表支持脚本控制,对的,我们想要显示10行,就通过脚本控制实现。
选择区段,添加打印前事件,添加控制脚本,


附上脚本:


  1. /*

  2. 说明:控制万能报表每页打印行数

  3. by wanghl 2017-4-7

  4. */


  5. int count = 0;

  6. //每页打印行数

  7. int PerPageCount = 10;


  8. //注意:Detail2 标识需要按照自己的标识进行修改

  9. private void Detail2_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) {

  10. if (count != 0 && count %PerPageCount == 0)

  11. {

  12.   Detail2.PageBreak = DevExpress.XtraReports.UI.PageBreak.BeforeBand;  

  13. }

  14. else

  15. {

  16.   Detail2.PageBreak = DevExpress.XtraReports.UI.PageBreak.None;   

  17. }

  18. count++;

  19. }



复制代码


脚本配置好后,也就实现了看到的效果,

完。
谢谢


图标赞 4
4人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!