上一主题: 数据对象下一主题: 添加数据对象


运行时变量

数据对象可以使用运行时变量,以动态更改行为和选择标准。

对于“查询”数据对象,可以在 SQL 查询中使用运行时变量。 作为先决条件,请在“变量”列表中定义这些运行时变量。 该列表包括默认“查询”变量,您可以添加您自己的变量。

例如,考虑基于 SQL 查询生成显示用户列表的报告。 数据对象可以取 Last_Name 值作为运行时变量来指明姓氏的开始字符。 将提示数据对象的用户提供 Last_Name 值。 您可以在 SQL 语句中使用名为 %Last_Name% 的“字符串”类型的运行时变量。 使用该变量将结果限制为以用户输入的值开始的用户记录。 下面是一个 SQL 语句查询示例:

SELECT first_name,middle_name,last_name FROM ca_contact WHERE (ca_contact.last_name like '%Last_Name%%')

注意:只会针对 SQL 查询中的运行时变量提示用户输入值。

对于插件数据对象,您可以将运行时变量作为“名称-值”对传递给 Java 类。 作为先决条件,请验证 Java 报告插件类可以接受“名称-值”对作为插件数据对象的值。

例如,考虑 com.ca.usm.reporting.Plugins.RequestFulfillmentReport 插件类。 该插件类接受名为 START_DATE 的“日期”类型的参数。 因此,在使用该插件类的数据对象中,START_DATE 是必填项。 在这种情况下,请执行以下操作之一:

您可以随运行时变量使用上下文系统变量来作为:

上下文系统变量如下所示:

名称

变量

当天

%TODAY%

前一天

%TODAY%-Days(1)

后一天

%TODAY%+Days(1)

每月第一天

%START_OF_CURRENT_MONTH%

每月最后一天

%END_OF_CURRENT_MONTH%

每年第一天

%START_OF_CURRENT_YEAR%

每年最后一天

%END_OF_CURRENT_YEAR%

用户域(业务单位)

%USER_DOMAIN%

用户 ID

%USER_ID%

添加 Query 运行时变量

您可以添加自定义运行时变量以用于“查询”数据对象。 例如,添加一个查询运行时变量以用作下拉列表变量。

要添加 Query 运行时变量

  1. 依次单击“管理”、“报告构建器”。

    将显示“报告构建器”页面,在其主菜单下方左侧菜单中有选定的“数据对象”。

  2. 执行以下操作之一

    根据您是创建还是编辑数据对象,页面会相应发生变化。

  3. 单击“创建变量”。

    将显示“创建运行时变量”或“编辑运行时变量”对话框。

  4. 在提供的窗口项中指定名称、类型及其他数据。 请使用以下准则:
  5. 单击“创建变量”。

    目录系统将保存您的变量定义。

您可以在 SQL 查询中对查询数据对象使用该变量。 运行数据对象时,系统将提示用户输入值。

注意:添加作为下拉列表变量的查询运行时变量时,最终生成的下拉列表中的值数目上限为 1000。 如果报告查询返回的值多于 1000 个,则系统会截断这些多余值。 这样,用户将无法在下拉列表中看到这些值。 如有必要,您可以增加下拉列表中显示的值数目,使其大于 1000。 有关详细信息,请参阅《实施指南》