Pentaho报表设计器:将值列表作为要报告的参数传递

时间:2015-10-28 17:51:07

标签: sql list parameters pentaho pentaho-report-designer

报告目标:通过统计比较对球员进行绩效分析

Desired Report Layout

请参阅布局并阅读。玩家姓名需要从列表中添加,可以是输入文本框,多重检查框,下拉列表等。如果我在此列表中选择Jake Tyler,报告应刷新并向我显示他的统计信息。然后当我选择亚当·斯密时,他应该出现在Jake下面的下一个条目中,并带有各自的统计数据。

我知道如何使用Pentaho参数将各个玩家作为参数传递给查询,并使用SQL将其标记为:

 'where  PlayerName = ${playername}'

但我需要知道如何以类似的方式传递多个玩家名称,以使用多值字符串参数生成此报告。

请您指导一下如何做到这一点?我听过像x-actions这样的东西可以工作,但我不知道如何使用它。我相信这会帮助很多想要实现类似的东西的人,这些东西对他们来说似乎很复杂。

1 个答案:

答案 0 :(得分:1)

您只需使用where PlayerName IN (${playername})即可。 该列表应该从参数正确传递给查询。 并且参数也应该正确获取数据。
例如

    select 'Jake Taylor' as pn
    union
    select 'Adam Smith' as pn
    union 
    select 'Chris Lawson' as pn

    select distinct column_name from table_name

这可以发送到参数(在Add parameter窗口中),您的主查询可以按我上面使用IN

的说明准备


NB :您只能使用Display types,例如:Multi value listMulti selection box等。不会仅仅传递单个值的下拉菜单。