1

在 Jasperreports 中,我想将默认值表达式作为查询字符串输入到参数中,以便能够动态地为用户提供正确的默认值,但不会强迫他选择它。

到底有没有?

我猜结果应该是这样的(即使它不起作用):

在此处输入图像描述

我将其用于具有单值选择方法的表单(用户可以编写他/她想要的任何数字,但我希望从数据库中选择默认值)。

4

1 回答 1

-1

以下是我的处理方式:

用户从输入控件中选择一个值(在我的示例中,我将其称为 $P{time_toggle})。然后,我有另一个参数 ($P{time_constraint}),它从 $P{time_toggle} 获取用户输入,并根据它决定将什么 SQL 字符串注入到主查询中。$P{time_constraint} 的默认值表达式如下所示:

      $P{time_toggle} == "rolling_quarter" ? "..." : (
           $P{time_toggle} == "rolling_30_days" ? "..." : (...
           )
      )

然后,在我的主要报告查询中,我引用了 $P{time_constraint}:

     SELECT * FROM tblTable WHERE $P!{time_constraint}

为了设置默认时间段,我将 $P{time_toggle} 的默认值表达式设置为我想要的默认值。

于 2013-06-14T11:57:56.193 回答