您可以在分析和儀表板中參照變數。
變數的參照方式視您執行的作業而定。對於以對話方塊欄位顯示的作業,例如在篩選定義中參照變數,您只需要指定變數的類型和名稱 (不是完整語法)。
對於其他作業,例如在標題檢視中參照變數,您必須指定變數語法。您所使用的語法會根據變數類型的不同而有所不同,如下表所述。
| 類型 | 語法 | 範例 |
|---|---|---|
|
階段作業 |
@{biServer.variables['NQ_SESSION.variablename']} 其中 variablename 是階段作業變數的名稱,例如 DISPLAYNAME。 |
@{biServer.variables['NQ_SESSION.SalesRegion']} |
|
語意模型 (儲存區域) |
@{biServer.variables.variablename} 或 @{biServer.variables['variablename']} 其中 variablename 是變數的名稱,例如 prime_begin。 |
@{biServer.variables.prime_begin} 或 @{biServer.variables['prime_begin']} |
|
展示或要求 |
@{variables.variablename}[format]{defaultvalue} 或 @{scope.variables['variablename']} 其中: variablename 是簡報或要求變數的名稱,例如 MyFavoriteRegion。 (選擇性) format 是相依於變數資料類型的格式遮罩,例如 #、##0、MM/DD/YY hh:mm:ss。(請注意,此格式不會套用至預設值。) (選擇性) defaultvalue 是一個常數或變數參照,指示若未填入 variablename 所參照的變數時所要使用的值。 scope 會識別變數的辨識符號。如果變數是在多個層級 (分析、儀表板頁面及儀表板) 使用,而且您要存取特定值,您就必須指定範圍。(如果您未指定範圍,則優先順序依序為分析、儀表板頁面以及儀表板。) 當儀表板提示與可以有多個值的展示變數一起使用時,語法會視資料欄類型而有所不同。多個值會格式化為以逗號區隔的值,因此,會先將任何格式子句套用至每個值,再使用逗號予以結合。 |
@{variables.MyFavoriteRegion}{EASTERN REGION} 或 @{dashboard.MyFavoriteRegion}{EASTERN REGION} 或 @{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 的 ECMA Scripting 語言規格。名稱不得超出200個字元,也不得包含內嵌空格、保留字和特殊字元。如果您不熟悉 JavaScripting 語言需求,請參閱第三方參考資料。 |
@{global.variables.gv_date_n_time} |
您也可以在表示式中參照變數。如需在表示式中參照變數的準則,請參閱以下主題:
在表示式中參照階段作業變數時,請遵守以下準則。
例如:
"Market"."Region"=VALUEOF("NQ_SESSION"."SalesRegion")
在表示式中參照展示變數時,請遵守以下準則。
若要參照展示變數,請使用此語法:
@{variablename}{defaultvalue}
其中 variablename 是展示變數的名稱,defaultvalue (選擇性) 是常數或變數參照,指示若未填入 variablename 所參照的變數時所要使用的值。
若要將變數轉型 (即轉換) 為字串或包含多個變數,請在整個變數前後加上單引號,例如:
'@{user.displayName}'
如果 @ 符號之後未跟著 {,就會視為 @ 符號。使用可以有多個值的展示變數時,語法會視資料欄類型而有所不同。
針對指定的資料欄類型使用下列 SQL 語法,以產生有效的 SQL 敘述句:
文字 — (@{variablename}['@']{'defaultvalue'})
數值 — (@{variablename}{defaultvalue})
日期時間 — (@{variablename}{timestamp 'defaultvalue'})
日期 (只有日期) — (@{variablename}{date 'defaultvalue'})
時間 (只有時間) — (@{variablename}{time 'defaultvalue'})
例如:
'@{user.displayName}'