在 Birt 中按报表参数显示/隐藏交叉表

Display / Hide Crosstabs by Report Parameters in Birt

我在一份报告中制作了不同的交叉表。我只想显示一个由报告参数选择的交叉表。其他应该隐藏。

有什么解决办法吗?

  1. 你应该select你的十字架table
  2. 在属性中,select 'visibility'
  3. 勾选 'hide element'
  4. 然后进入表达式
  5. 输入您的报告参数。例如,如果报表参数不是 'test',则隐藏交叉表。为此,您将在函数表达式中输入“parameterName != 'test'”。

清楚了吗?

谢谢 Fanny,但我通过在 beforeFactory() 方法中编写这段代码解决了这个问题。

    var oTab = reportContext.getReportRunnable().designHandle.getDesignHandle().findElement("PeriodTab");
    var cTab = reportContext.getReportRunnable().designHandle.getDesignHandle().findElement("WeekTab");
    var pTab = reportContext.getReportRunnable().designHandle.getDesignHandle().findElement("MonthTab");

    if (params["cmbPeriodType"].value == "PeriodTab") {
        oTab.drop();
        pTab.drop();
    }
    else if (params["cmbPeriodType"].value == "WeekTab") {
        pTab.drop();
        cTab.drop();
    }

    else {
        oTab.drop();
        cTab.drop();
    }