如何在参数选择pentaho报告中更改显示值

时间:2015-05-27 10:04:34

标签: pentaho

当参数列表中的数据为-1时,我需要显示“全部”。 只是显示在参数选择中。

帮我解决这个问题

谢谢, Keerthi KS

2 个答案:

答案 0 :(得分:1)

你可以改变你的sql。

例如: -

SELECT "ALL" AS column_name
UNION
SELECT column_name FROM table_name

在那个底层sql是你的43,44,45 sql。

如果你修改过这样的话。

在主sql中再次需要一点点更改。在sql中的meaining条件。

我认为你的问题会得到解决。

谢谢..

答案 1 :(得分:0)

如果您使用的是JDBC连接,则可以使用这样的简单查询。 (我用过Postgres)

SELECT 1 AS no,
'All' AS pid
UNION 
SELECT  2 AS no,
 '43' AS pid
UNION 
SELECT  2 AS no,
 '44' AS pid
UNION 
SELECT  2 AS no,
 '45' AS pid
order by no

如果不是,您可以使用PRD中数据集下的Table选项。在那里你可以像我上面那样对表进行硬编码。

之后,在PRD中打开参数,在默认值字段中键入All并配置Propt部分,以便从我们创建的数据集中获取数据。

如果从数据库中获取数据,则可以编写Case语句, 这是一个例子,如果你使用ktr。您可以在查询中包含此内容。

(productids IN (SELECT CASE WHEN('${paramproductid}' = 'All' OR '${paramproductid}' IS NULL) THEN productids ELSE '${paramproductid}'  END))

由于您的问题中的信息较少而做出的假设。