首页 > 其他 > 详细

BIRT 如何处理横向分栏

时间:2020-06-16 18:36:10      阅读:48      评论:0      收藏:0      [点我收藏+]

比如要处理这么个场景:将数据记录横向排布为三列显示。效果图如下:

 

 

 

BIRT可以对数据纵向分栏,很难实现记录横向摆放并分栏的布局,有网友提出:把数据集绑定到List元素上,在网格中排列一个或多个数据字段,采用嵌入子网格等手段来实现,但都属于理论性阶段,并没有给出完整的示例,可想而知,即便能实现,也是需要写复杂的脚本和杂乱的网格拼接。工作量巨大。源数据格式如下:

 

 

 

一些特殊的布局版面,很难通过报表工具本身提供的功能直接实现,但如果准备出合适的数据源,就能大大降低报表设计的难度,集算器SPL就可以辅助BIRT准备好已分栏的数据,BIRT只管接收处理后的数据并展现即可。代码如下:

 

A

B

C

1

=myDB.query("select EId,Name,Dept from emp where EId>=? and EId<=? order by EId ",begin,end)

 

2

=A1.step(3,1)

=A1.step(3,2)|[null]

=A1.step(3,3)|[null]

3

=A2.derive(B2(#).EID:EID2,B2(#).NAME:NAME2,B2(#).DEPT:DEPT2,C2(#).EID:EID3,C2(#).NAME:NAME3,C2(#).DEPT:DEPT3)

4

return A3

 

 

其实还有很多类似的格式布局问题在BIRT中处理不太方便,但有集算器SPL的辅助却很简单,感兴趣可以参考:解决BIRT报表特殊布局的若干示例

集算器提供了JDBC驱动,可以很方便的与BIRT等报表工具集成,BIRT调用SPL脚本有使用和获得它的方法。

关于集算器安装使用、获得免费授权和相关技术资料,可以参见如何使用集算器

BIRT 如何处理横向分栏

原文:https://www.cnblogs.com/xiaohuihui-11/p/13143447.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!