需求:万能报表打印每页只显示10行分录数据。
实现:先上效果,
自定义的业务单据,
单据编号为007的单据,单据体体有个小数类型字段,
添加了16行分录,数值分别从1.0-16.0。
我们按每页10条分录进行万能报表的控制打印,
万能报表的实际展现效果,
007号单据对应的万能报表,
第一页万能报表展现了单据体的1.0-10.0,只展现了10行分录,
切换到下一页,第二页,万能报表007号预览显示剩余的6行分录数据。
相关的具体配置实现:
万能报表模板,设计的比较简单,
我们是想控制明细带区,也就是绑定单据体的 Detail2带区只打印10行,
该怎么实现呢?
从上面的截图我们可以看到,
万能报表支持脚本控制,对的,我们想要显示10行,就通过脚本控制实现。
选择区段,添加打印前事件,添加控制脚本,
附上脚本:
/*
说明:控制万能报表每页打印行数
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++;
}
复制代码
脚本配置好后,也就实现了看到的效果,
完。
谢谢
推荐阅读