如何在计算列上过滤 Birt(参数)?

How can I filter in Birt (Parameter) on a computed column?

是否可以添加一个参数以按计算列进行过滤?如果可以,如何操作?

我有一份报告,它给出了 material 的账单级别,并且在 Birt 中使用以下表达式将其设置为计算列的级别:

var result = "" ;
for(i = 0; i< row["depth"]; i++) {
result = result + "." 
}
result = result + row["depth"] ;
result;

我找到了解决方案并认为其他人可能会觉得这很有用。

如何创建使用单个数据集的级联参数。

  1. 在数据资源管理器中,right-click 报表参数,然后选择:新建级联参数。

  2. 在新建级联参数中,如果不想使用默认名称,可以在级联参数名称中指定不同的名称。您指定的名称仅出现在数据资源管理器的报表参数列表中。

  3. 在“提示文本”中,指定出现在“输入参数”对话框中的参数组的名称。

  4. Select 单个数据集。

  5. 为这组级联参数创建报表参数。

  6. 在参数中,选择添加。在添加级联参数上,指定以下值:

    在名称中,键入参数名称。 在数据集中,select 数据集 returns 用于填充所有参数列表的值。 在“值”中,select 包含要在 运行 时间传递给 SQL 查询或筛选条件的值的字段。

  7. 在显示文本中,可选择 select 一个字段,其中包含您要向用户显示的值。例如,要传递给 SQL 查询或筛选条件的值来自 productcode 字段,但您希望向用户显示来自 productname 字段的值。

  8. 选择确定。

  9. 在“属性”中,设置此报表参数的其他属性,包括提示文本、显示类型和默认值。

  10. 要创建下一个报表参数,请选择“添加”,然后按照相同的步骤操作,直到设置好级联参数组的所有级别。

  1. 完成组中所有报表参数的创建后,选择“确定”。级联参数出现在数据资源管理器的报表参数中。