目录
1.1、错误描述
1.2、解决方案
1.1、错误描述
今天在处理一个有关Jasper Studio报表模板制作的线上问题,需要根据某个报表子数据源是否为空,来决定对应的组件是否显示,找了好久的资料都没有实现,最后找到一种解决办法。就是通过自定义变量,然后变量的取值是来自子报表数据源,判断子报表数据源是否为空即可,具体的解决方案,查看下面详细内容。
1.2、解决方案
- 第一步:创建一个变量,然后在变量中使用表达式判断,子报表数据源是否为空。
- 注意啦:变量类型选择Boolean。
// 将这个表达式,复制到变量表达式里面
(((net.sf.jasperreports.engine.data.JsonDataSource)$P{REPORT_DATA_SOURCE}).subDataSource("子数据源的节点名称")).next();
如下图所示:
- 第二步:在需要控制组件显示和隐藏的地方,根据变量值来判断即可。
到此,Jasper studio报表工具中,如何判断subDataSource()子报表数据源是否为空的问题就解决啦。