问:A4横印,当报表要显示的数据栏位过多时,一页无法全部显示,需要换页分开显示。也就是比如12个月的年报,一页显示前6个月,另一页显示后6个月。如何实现这种分页?这样影响当数据记录多的分页吗?
答:这种同行字段分页,在报表上直接实现不出来的。
所以应该从数据上入手
假设你的表tt是这样,xx,m1,m2,m3..m12
sql:
select xx,m1 as a1,m2 as a2...m6 as a6, 1 as flag from tt
union
select xx,m7 as a1,m8 as a2...m12 as a6, 2 as flag from tt
将这个sql传给报表,并按flag进行分组,然后设置每组分一页,就能实现上半年,下面年分页显示了
並且可以結合對Section進行設置抑制顯示的公式來控制分組後對應業資料的表頭:
設報表設計有2個區段Section:
SectionA為1到6月的數據資料列頭,
SectionB為7到12月的數據資料列頭
接下來為對flag進行的分組.
則對SectionA設置抑制顯示公式:
//當flag=1即為1到6月時,公式返回false不抑制顯示,否則公式返回true進行抑制顯示
if({tt.flag} = '1')
then false
else true
對SectionB設置抑制顯示公式:
if({tt.flag} = '2')
then false
else true
這樣就實現了對應月份資料顯示對應的列頭了
例如:
/
設置抑制顯示
结果: