根据用户输入在 Pentaho 报表中显示/隐藏字段

Posted

技术标签:

【中文标题】根据用户输入在 Pentaho 报表中显示/隐藏字段【英文标题】:Show / Hide Fields in Pentaho Report Based on User Input 【发布时间】:2013-10-25 19:24:08 【问题描述】:

我正在尝试根据用户输入在 Pentaho 报告中显示/隐藏字段。

例如,我想为用户提供一个复选框,说“显示产品数量”——如果未选中该框,它将不会在报告中包含该列。

有没有办法在 Pentaho 报表设计器中做到这一点,也许使用参数?

感谢您的帮助-莫妮卡

【问题讨论】:

【参考方案1】:

是的,你有一半的答案。有一个是/否参数“ShowProductCount”

然后在条件字段上,转到可见属性,单击 + 公式图标并输入:

=IF([ShowProductCount]="Yes"; TRUE(); FALSE())

简单! :)

【讨论】:

感谢您的回复,@Codek。我制作了一个表,其中 TRUE 和 FALSE 作为值,以及提供这些选择的参数。但是,当我将可见属性设置为公式时,它并没有消失。事实上,如果我只是将属性设置为 visible = "false" 而没有公式,它仍然不会消失。是否有一些我没有正确设置的设置? 回答我自己的问题,我需要将带设置为 "invisble-consumes-space" = FALSE 以使空白消失。【参考方案2】:

除上述答案外,还有更多内容。例如,如果您不希望某个字段显示在报告上,您可以通过 Codek 传递上面提到的值,但该字段不会显示,但它的空间会显示。该字段必须在 BAND 中,并且必须将波段布局设置为 ROW。此外,在您不想显示或根据用户选择显示的字段上,您必须在 size & position - invisible-consumes-space = false 下设置该字段的样式属性。

【讨论】:

以上是关于根据用户输入在 Pentaho 报表中显示/隐藏字段的主要内容,如果未能解决你的问题,请参考以下文章

pentaho - 将数据传递给报表查询

Pentaho 报表设计器中的参数对齐

为啥每次数据库发生变化都需要刷新 Pentaho 报表数据缓存

报表设计器 Pentaho

导出到 Pentaho 报告结果到 csv 或 excel

Pentaho 报告:日期选择器参数未解析为用户控制台网页报告