我正在 pentaho 报表设计器中创建一个报表,需要一些帮助来为我创建的参数设置默认值。
标记为日期的参数之一从表的日期列中获取数据。虽然我能够查看下拉列表中的所有日期,但我无法找到一种方法可以将此下拉列表的默认值设置为全部(意味着所有日期一起)。
有没有办法可以将“全部”值设置为默认值?
我正在 pentaho 报表设计器中创建一个报表,需要一些帮助来为我创建的参数设置默认值。
标记为日期的参数之一从表的日期列中获取数据。虽然我能够查看下拉列表中的所有日期,但我无法找到一种方法可以将此下拉列表的默认值设置为全部(意味着所有日期一起)。
有没有办法可以将“全部”值设置为默认值?
假设您从 PRD 中的 JDBC 连接获取过滤器的值,您可以编写这样的查询。(我使用过 Postgresql)。这将'All'
作为下拉列表中的第一个值和表中的其他不同日期值加载。(正确进行铸造)
SELECT 1 AS sort,'All' AS date
UNION
SELECT DISTINCT 2 AS sort,
tablename.datecolumn::date AS date
FROM
tablename
ORDER BY sort
然后在显示给用户选择日期的参数中,输入All
字段Default Value
并选择我们编写的查询。接下来假设您使用 KTR 将数据检索到报告中,您可以在“表格输入”步骤中包含以下查询,
(tablename.datecolumn IN (SELECT CASE WHEN('${date}' = 'All' OR '${date}' IS NULL) THEN tablename.datecolumn ELSE '${date}' END))
希望这会有所帮助。如果您还有任何问题,请在下面发表评论。因为这对我来说非常有效。