要求是生成连接到单个数据库的单个报告:
这两个查询都需要基于WHERE
子句的结果,该子句是动态提供的。
有人能指出一些如何实现这个目标的例子吗?
谢谢。
答案 0 :(得分:3)
您可以告诉JasperReports使用参数来使用$P!{PARAMETER_NAME}
语法定义部分查询。这告诉JasperReports使用PARAMETER_NAME
的文字值作为查询的一部分。然后你可以这样做:
WHERE_CLAUSE
的参数。WHERE_CLAUSE
设为默认值1=1
。SELECT * FROM table WHERE $P!{WHERE_CLAUSE}
$P!
表达式将文字SQL语句更改为:
SELECT * FROM table WHERE 1=1
这是一个有效的查询。请注意$P{}
和$P!{}
之间的区别 - 感叹号(!
)非常重要。
然后,您可以动态提供SQL条件。