生成报表的第 1 步是创建查询:
要创建查询:
名称
说明
类型
选择的类型决定了“查询”在“新建报表”和“编辑报表”对话框上出现在何处。
参数查询
定义为“参数查询”类型的查询用于显示可为此参数的值指定的一组选项。“参数查询”用于显示在为报表查询填充参数值时可使用的一组选项,这一组选项不是简单的已定义属性,而是一个需要定义的复杂查询。
报表查询
选择要包含在报表中的记录。可以应用安全筛选器,以便用户仅看到其有权看到的数据(基于其角色)和分配给他们的调节。若要对报表查询应用安全筛选器,请将以下语法添加到查询 WHERE CLAUSE 语句的结尾:
Oracle Hyperion Tax Governance 查询:$TAXOPS_SECURITY_CLAUSE$
应用了安全筛选器的示例 Tax Governance 查询:SELECT Task_name FROM fcc_tasks WHERE schedule_id = ~Schedule~ AND $TAXOPS_SECURITY_CLAUSE$
注:
因为 Tax Governance 附带的许多预定义查询均应用了安全筛选器,所以您可在构建自己的查询时使用这些查询作为示例。
提示:
如果您正在设计的报表将包含参数,则可以将报表设计为不显示记录或显示所有记录。下面分别提供了示例。这些示例假定您需要运行报表来显示包含“每月”频率的期间的列表。
参数查询:从 arm_frequencies 中选择 frequency_id 和 frequency_name
报表查询选项 1:(如果用户未提供频率值,则不返回任何期间):
Select p.period_name from arm_periods p, arm_period_frequencies pf where p.period_id = pf.period_id and pf.frequency_id = ~FREQUENCY~
报表查询选项 2:(如果用户未提供频率值,则返回所有记录):
Select p.period_name from arm_periods p, arm_period_frequencies pf where p.period_id = pf.period_id and pf.frequency_id = coalesce(~FREQUENCY~,pf.frequency_id)
在第二个选项中,coalesce()
函数将返回列表中的第一个非 null 值;因此,如果 FREQUENCY 为 null,则将返回 pf.frequency_id
,在此情况下,条件将始终为 true (pf.frequency_id = pf.frequency_id
),从而导致返回全部记录。
生成查询
在用户创建对数据库的查询时,允许用户选择产品中的任何现有属性用于查询和/或根据其进行筛选。随后对话框将生成匹配指定的属性和筛选器的 SQL,此时可以修改和优化 SQL。
查询
若要通过“查询”生成样本 XML 文件,请单击生成样本 XML。