在資料載入編輯器中使用變數
Qlik Sense 中的變數是一個容器,儲存靜態值或計算,例如數值或英數值。當您在應用程式中使用變數時,對變數進行的任何變更都會套用至使用變數的每個位置。 您可以在變數概述或在指令碼中使用資料載入編輯器定義變數。您可在資料載入指令碼中使用 Let 或 Set 陳述式設定變數值。
概述
如果變數值的第一個字元為等號「=」,Qlik Sense 會嘗試將值評估為公式 (Qlik Sense 運算式),然後顯示或傳回結果,而非傳回實際的公式文字。
使用時,變數值會替代其變數。變數可用於指令碼中以用作貨幣符號展開,也可用於各種控制陳述式中。如果相同的字串在指令碼中重複多次 (如路徑),這就非常適用。
Qlik Sense 會在指令碼執行的開端,設定某些特別的系統變數,而不論其先前的值為何。
定義變數
定義變數時,下列的語法:
或
let variable = expression
會被使用。Set 命令將文字指派給變數等號右側,然而 Let 命令會評估運算式。
變數會區分大小寫。
Examples:
set HidePrefix = $ ; // 變數會取得字元 ‘$’ 作為值。
let vToday = Num(Today()); // 傳回今天的日期序號。
刪除變數
若您從指令碼中移除變數並重新載入資料,則變數會留在應用程式中。如果您要從應用程式中完全移除變數,則還必須從變數概述中刪除變數。
如需詳細資訊,請參閱 刪除變數。
載入變數值作為欄位值
如果您想要在 LOAD 陳述式中載入變數值作為欄位值,且美元展開的結果是文字而不是數字或運算式,那麼您需要在單括號中附上展開變數。
Example:
此範例將包含指令碼錯誤清單的系統變數載入表格中。您可能注意到,If 子句中的
變數計算
有數種方法可搭配使用變數與 Qlik Sense 中計算的值,則結果會取決於您定義它的方式,以及您在運算式中調用它的方式。
在此範例中,我們載入部分內嵌資料:
讓我們定義兩個變數:
在第二個變數中,我們在運算式之前新增等號。這將導致在變數展開之前對它進行計算,並且會評估運算式。
如果您按原樣使用
如果您新增貨幣符號展開,並在運算式中調用
最終,如果您調用
Dim | $(vSales) | $(vSales2) |
---|---|---|
A | 350 | 1560 |
B | 470 | 1560 |
C | 740 | 1560 |
如您可以看到的,
下列指令碼變數可用: