Declare
Declare 陳述式用來建立欄位定義,您可以從中定義欄位或函數之間的關係。一組欄位定義可用來自動產生衍生的欄位,它們可用作維度。例如,您可以建立行事曆定義,並用以從日期欄位中產生相關維度,例如年份、月份、週和日。
您可以使用 Declare 設定新的欄位定義,也可以根據現有定義建立欄位定義。
設定新的欄位定義
語法:
definition_name:
Declare [Field[s]] Definition [Tagged tag_list ]
[Parameters parameter_list ]
Fields field_list
引數:
引數 | 描述 |
---|---|
definition_name | 欄位定義的名稱,以冒號結尾。 警告備註不要將 autoCalendar 用作欄位定義的名稱,因為該名稱要保留給自動產生的行事曆範本使用。 範例: Calendar: |
tag_list | 用逗號分隔的標記清單,套用至從欄位定義衍生的欄位。套用標記是可選的,但是若您不想套用用於指定排序順序的標記,比如 $date、$numeric 或 $text,衍生欄位在預設情況下會按照載入順序排序。 範例: '$date'Thank you for bringing this to our attention, and apologies for the inconvenience. |
parameter_list | 用逗號分隔的參數清單。參數定義為以下格式 name=value,並獲指派了一個起始值,當重新使用欄位定義時可覆寫該值。選用。 範例: first_month_of_year = 1 |
field_list | 當使用欄位定義時要產生的用逗號分隔的欄位清單。欄位定義為以下格式:<expression> As field_name tagged tag。使用 $1 參照資料欄位,衍生欄位應從該資料欄位產生。 範例: Year($1) As Year tagged ('$numeric') |
範例:
行事曆現已定義,您可以使用 Derive 子句將其套用至已經載入的日期欄位,在此情況下為 OrderDate 和 ShippingDate。
衍生欄位 (完整範例)
重新使用現有欄位定義
語法:
<definition name>:
Declare [Field][s] Definition
Using <existing_definition>
[With <parameter_assignment> ]
引數:
引數 | 描述 |
---|---|
definition_name | 欄位定義的名稱,以冒號結尾。 範例: MyCalendar: |
existing_definition | 建立新的欄位定義時要重新使用的欄位定義。新欄位定義的運作方式與其所基於的定義相同,但是如果您使用 parameter_assignment 來變更欄位運算式中使用的值則屬例外。 範例: Using Calendar |
parameter_assignment | 用逗號分隔的參數指派清單。參數指派定義為以下格式 name=value,並覆寫在基本欄位定義中設定的參數值。選用。 範例: first_month_of_year = 4 |
範例:
在此範例中,我們重新使用在之前的範例中建立的行事曆定義。這種情況下,我們想使用一個從 4 月開始的財務年度。將數值 4 指派至 first_month_of_year 參數即可實現,此操作會影響已定義的 DayNumberOfYear 欄位。
此範例假定您使用的是來自上一個範例的樣本資料和欄位定義。
當您重新載入資料指令碼後,產生的欄位在工作表編輯器中可用,且名稱為 OrderDate.MyCalendar.* 和 ShippingDate.MyCalendar.*。