1

我正在 pentaho 报表设计器中创建一个报表,需要一些帮助来为我创建的参数设置默认值。

标记为日期的参数之一从表的日期列中获取数据。虽然我能够查看下拉列表中的所有日期,但我无法找到一种方法可以将此下拉列表的默认值设置为全部(意味着所有日期一起)。

有没有办法可以将“全部”值设置为默认值?

4

1 回答 1

0

假设您从 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))

希望这会有所帮助。如果您还有任何问题,请在下面发表评论。因为这对我来说非常有效。

于 2015-02-05T07:31:21.937 回答