如果点击报表数据列的名称,使图表的系列名称或者分类轴动态变化又该如何实现呢 ?下面通过java报表工具FineReport来进行介绍。
前期准备工作(包括相关工具或所使用的原料等)java报表工具FineReport7.1.1大小:148.2M 适用平台:windows/linux 详细的操作方法或具体步骤
新建数据集
新建一张空白模板,添加数据集ds1:SELECT * FROM [销量]。
模板设计
动态数据列的实现
新增一个col的模板参数,默认值为:“销售员”,标题单元格B1直接使用公式=$col,动态数据列值所在单元格B2输入使用公式=ds1.group($col,,true),报表主体设计如下图:
注:B2单元格为图表的系列名称(动态变化),父格为A2,A2单元格是显示图表的分类轴数据,C2单元格为图表的系列值,对销量进行求和,根据B2单元格的变化而变化(动态变化)。
另:ds1.group($col,,true)公式的意思是,获取ds1数据集中col参数值数据列的所有值,并合并所有相同项,注意中间有一个空白的条件,需要两个逗号。

图表设计
合并动态列下方的一片单元格,插入图表,图表类型为柱形图,图表数据源为单元格数据源,分类轴为A2,系列名为B2,系列值为C2,如下图:

动态参数
在图表上方,动态列下方插入一行,输入各数据列的名称(即需要动态展现的数据列的名称),整个报表设计如下图:

选中所有数据列名称的单元格,即A3到C3单元格,右键,选择超级链接,点击“+”按钮,增加一个名为col的动态参数,如下图:

注:该动态参数的意义为:点击该超级链接时,就将当前被点击的单元格的值传递给参数col,参数col是动态列中使用的到的参数,因此动态列所在单元格就会显示被点击数据列的值,图表也就随着变化。
隐藏动态列所在的第一行和第二行,模板便完成了。
效果查看
保存该模板,点击分页预览,即可查看展示的效果。

- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
