万能报表每页打印行数控制【分享】
金蝶云社区-云社区用户4u731234
云社区用户4u731234
0人赞赏了该文章 2095次浏览 未经作者许可,禁止转载编辑于2017年04月07日 16:02:46

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

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

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


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

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

该怎么实现呢?

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

附上脚本:
[code]
/*
说明:控制万能报表每页打印行数
by wanghl 2017-4-7
*/

int count = 0;
//每页打印行数
int PerPageCount = 10;

//注意:Detail2 标识需要按照自己的标识进行修改
private void Detail2_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) {
if (count != 0 && count %PerPageCount == 0)
{
Detail2.PageBreak = DevExpress.XtraReports.UI.PageBreak.BeforeBand;
}
else
{
Detail2.PageBreak = DevExpress.XtraReports.UI.PageBreak.None;
}
count++;
}

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

完。
谢谢