皕杰报表是一款性价比高、功能灵活的Java报表工具。在数据展示中,一个常见的需求是如何根据手动选择的列名去展示想要的数据,下面我们就介绍一下皕杰报表如何做动态列查询报表。本例中报表示例为05动态查询table.brt。
动态列查询相关示例体验网址:http://demo.bijetsoft.com/iface (体验账号密码:admin/1)
动态列查询相关brt下载网址:http://www.bijetsoft.com/product-download.html
(下载最新版本,最新版本中含有相关brt文件)
1.新建报表命名为05动态查询table.brt
2.新建参数type,列名type值为需要展示的列。参数属性如图所示
3.新建数据集ds:="SELECT 供应商ID"+if(@type=null,"",","+tostr(@type))+",国家,传真,主页 FROM 供应商"。如图所示
4.动态列查询报表设计如图所示
A3单元格中表达式为:=ds.select(供应商ID),设置为纵向扩展
B2单元格中表达式为:=@type,设置为横向扩展
B3单元格中表达式为:=if(@type=null,"",eval("ds."+B2))
C3单元格中表达式为:=ds.国家
D3单元格中表达式为:=ds.传真
E3单元格中表达式为:=ds.主页
将参数type拖拽到表单设计界面单元格中,控件类型选复选框,数据来源选择来自指定列表,复选框数据值为数据集sql中供应商表中的字段。如下图所示
勾选公司名称、城市、地区,点击查询按钮,如下图所示
勾选公司名称、联系人姓名、电话,点击查询按钮,如下图所示