可以在分析、仪表盘、KPI 和代理中引用变量。引用变量的方式取决于您所执行的任务。
对于通过对话框中的字段提供的任务,只能指定变量的类型和名称 (而不是完整语法),例如在过滤器定义中引用变量。
对于其他任务 (例如在标题视图中引用变量),可以指定变量语法。所使用的语法取决于变量类型,如表中所述。
注:
在此语法中,如果 @ 符号后面未跟随大括号 ({),则将其视为一个 @ 符号。变量类型 | 语法 | 示例 |
---|---|---|
会话 |
@{biServer.variables['NQ_SESSION.variablename']} 其中 variablename 是会话变量的名称,例如 DISPLAYNAME。 有关可使用的系统会话变量列表,请参阅 Oracle Business Intelligence Enterprise Edition 元数据资料档案库构建器指南中的关于系统会话变量。 |
@{biServer.variables['NQ_SESSION.USER']} |
资料档案库 |
@{biServer.variables.variablename} 或 @{biServer.variables['variablename']} 其中 variablename 是资料档案库变量的名称,例如 prime_begin。 |
@{biServer.variables.prime_begin} 或 @{biServer.variables['prime_begin']} |
表示或请求 |
@{variables.variablename}[format]{defaultvalue} 或 @{scope.variables['variablename']} 其中:
注:将仪表盘提示用于可以具有多个值的表示变量时,语法会因列类型的不同而异。多个值将格式化为以逗号分隔的值,因此,任何格式化子句将在各个值使用逗号联接起来之前应用。 |
@{variables.MyFavoriteRegion}{EASTERN REGION} 或 @{MyFavoriteRegion} 或 @{dashboard.variables['MyFavoriteRegion']} 或 (@{myNumVar}[#,##0]{1000}) 或 (@{variables.MyOwnTimestamp}[YY-MM-DD hh:mm:ss]{) 或 (@{myTextVar}{A, B, C}) |
全局 |
@{global.variables.variablename} 其中 variablename 是全局变量的名称,例如,gv_region。引用全局变量时,必须使用全限定名称,如示例中所示。 注:全局变量的命名惯例必须遵守 JavaScript 的 EMCA 脚本编写语言规范。名称不能超过 200 个字符,不能包含嵌入空格、保留关键字以及特殊字符。如果您不熟悉 JavaScripting 语言要求,请查看第三方参考。 |
@{global.variables.gv_date_n_time} |
您也可以在表达式中引用变量。下表中介绍了有关在表达式中引用变量的准则。
变量类型 | 准则 | 示例 |
---|---|---|
会话 |
|
"Market"."Region"=VALUEOF(NQ_SESSION."SalesRegion") |
资料档案库 |
|
CASE WHEN "Hour" >= VALUEOF("prime_begin") AND "Hour" < VALUEOF("prime_end") THEN 'Prime Time' WHEN ... ELSE...END |
表示 |
注:如果 @ 符号后面未跟随 {,则将其视为一个 @ 符号。 使用可以具有多个值的表示变量时,语法会因列类型的不同而异。 在 SQL 中为指定列类型使用以下语法以生成有效的 SQL 语句:
|
"Market"."Region"=@{MyFavoriteRegion}{EASTERN REGION} 或 "Products"."P4 Brand"=(@{myTextVar}['@']{BizTech}) 或 "Products"."PO Product Number"=(@{myNumVar}{1000}) 或 "Sales Person"."E7 Hire Date"=(@{myDateTimeVar}{timestamp '2013-05-16 00:00:01'}) 或 "Time"."Total Fiscal Time"=(@{myDateVar}{date '2013-05-16'}) 或 "Time"."Time Right Now"=(@{myTimeVar}{time '00:00:01'}) 使用 SQL 时,对于多值 (指定的数据类型):
或
或
|
有关可引用变量的特定区域,请参阅在何处可以引用变量?