新增集合屬性

屬性是由管理員集中定義並用於許多地方的使用者定義欄位。您可以為屬性指定不同的值類型:「日期」、「日期和時間」、「清單」、「數字」、「文字」及「True 或 False」。

對於集合,您可以新增日期計算屬性,例如資料收集期間的「開始日期」和「結束日期」。您也可以將歷史維度屬性值保留在現有資料表單上。

如何新增集合屬性:

  1. 在「首頁」上,按一下應用程式,然後按一下補充資料
  2. 按一下左側的集合頁籤。
  3. 選取某個集合,然後按一下編輯。隨即會顯示「編輯收集」視窗。
  4. 按一下「屬性」頁籤。它會顯示下列欄:
    • 鍵 ID:指出屬性是否為鍵 ID。如果該集合有資料存在,您就可以修改鍵 ID 和屬性。

      註:

      • 依預設會選取「實體」的鍵 ID指派工作流程核取方塊選項。當您新增屬性時,您可以選取一或多個屬性作為「鍵 ID」。
      • 「補充資料管理程式」不支援使用「計算」類型的屬性作為「鍵 ID」屬性。如果您選取此類型的屬性作為「鍵 ID」,則收集中可能會發生未預期的行為和錯誤。
    • 指派工作流程:顯示收集間隔中定義的工作流程。這是無法編輯的屬性。
    • 保留:指出維度屬性的值是否應保留在參照的表單中。此欄僅適用於屬性的維度參照類型。
    • 名稱:屬性的名稱。
    • 維度名稱:此欄僅適用於維度屬性,並提供維度名稱。
    • 屬性類型 (如果有現有屬性則會顯示):指出屬性的類型:
      • 輸入
      • 維度參照
      • 已計算
    • 資料類型:日期、日期與時間、整數、清單、多行文字、數字、文字、True/False、或是/否
    • 總計:可讓您指定屬性的總計方法:
      • 總和:相加總計
      • 平均值:含有資料的列平均值。沒有資料的列不會計入分母中。
      • 計數:含有資料的列數
      • :不計算總計
  5. 按一下新增圖示,然後按下列任何一項:

新增收集的屬性

若要新增收集的屬性,請執行下列動作:

  1. 在「建立新屬性」視窗中,在特性頁籤上指定下列內容:
    • 名稱:輸入屬性的名稱。最多可輸入 80 個字元。
    • 描述:輸入描述。最多可輸入 255 個字元。
    • 選取輸入已計算選項作為屬性類型。

      輸入是預設值,而且會啟用驗證頁籤。對於已經開啟的期間及已經建立的表單例項,不適用所修改的驗證規則。進行的變更僅適用於新表單例項。

      如果您選取已計算,則會啟用計算頁籤。

      註:

      當您選取輸入已計算並儲存屬性後,就無法在建立屬性之後變更此設定值。變更屬性類型會置換先前指定的驗證或計算。
    • 資料類型:選取下列其中一項作為資料類型。在您選取資料類型之後,也可以選取必要和/或使用值選項。
      • 日期
      • 日期時間
      • 整數
      • 清單:按一下新增,然後輸入屬性的值。「清單」是只限所屬集合使用的,無法與其他集合共用。
      • 多行文字:如果您選取此選項,請選取 3 到 50 行的行數。預設值為 3。「多行文字」可決定「動作」對話方塊中,在不捲動表單的情況下所顯示的文字行數。長度上限應該是 2000 個字元。不過,文字區域的寬度是固定不變的。

        如果資料類型必須要有值,請選取必要核取方塊。如果您選取使用值核取方塊,則您為行數輸入的值也會預設用於此處。超過此限制後,就會成為捲動文字。

      • 數字:選取此選項以指定格式選項。這會置換系統設定值偏好設定區段中的預設設定值。

        註:

        您只能對此屬性輸入數值。
        • 小數位數:輸入要顯示的小數位數。
        • 顯示為百分比:顯示百分比符號。
        • 使用千分位分隔符號:顯示千分位分隔符號 (例如 1,000.00)。系統顯示會顯示使用者地區設定的千分位分隔符號。
        • 幣別:選取幣別。
        • 負數格式:選取如何顯示負數。
        • 縮放:縮放數字。範圍是 1000 到 1000000000000。
      • 文字:最多輸入 255 個字元
      • True/False
      • 是/否
    • 必要:如果為必要屬性,您必須在資料輸入期間在此欄位中輸入值。
    • 使用值:如果您指定此值,則系統會將設計工具輸入的值套用至使用者建立的任何記錄。您可以在資料輸入期間變更預設值。
  2. 按一下確定儲存屬性。「建立新屬性」視窗關閉。
  3. 在「編輯收集」視窗中,按一下儲存以儲存收集。

    註:

    您必須儲存新屬性和收集。完成此作業之後,您才能存取屬性的驗證頁籤或計算頁籤。
  4. 選取您已建立的屬性,然後按一下編輯圖示。

    隨即會顯示「編輯屬性」視窗。

  5. 如果您選取了輸入選項 (步驟 1),則可以在驗證頁籤上新增條件表示式:
    1. 按一下新增。表格中會新增一個列。
    2. 按一下第一列中的欄以顯示下拉清單,您可以在其中選取運算子並相應地輸入 Value1Value2
    3. 如果您需要第二個條件,請按一下新增以新增另一列。
    4. 按一下第二列中的欄以顯示下拉清單,您可以在其中選取連接詞,例如或是
    5. 按一下確定以儲存條件。
  6. 如果您選取了已計算選項 (步驟 1),則可以在計算頁籤上新增計算。選取計算類型
    • 將值指派給清單:選取相關聯的屬性
    • 條件:新增計算定義的條件。
    • 指令碼:提供計算定義並選取屬性和函數。
  7. 若要新增計算運算式,請依照下表所述指定資料類型和計算類型。

    表格 32-2 資料類型與計算類型

    在特性頁籤上選取的資料類型 計算類型 描述
    適用於所有資料類型 選取將值指派給清單,然後選取屬性值。

    您必須儲存「清單」屬性值。

    根據對「清單」成員的指派傳回屬性值。
    適用於所有資料類型 條件 對於指定的屬性,如果符合指定的條件則傳回屬性值 A。如果不符合條件,則傳回屬性值 B。
    清單 將清單指派給值 根據屬性值,從清單傳回相關成員。
         
         
         
    整數、數字、文字 指令碼

    請參閱指令碼函數

    任意格式的指令碼計算。「整數」、「多行文字」、「數字」或「文字」類型的屬性可以使用指令碼。
  8. 按一下確定儲存屬性。

    註:

    系統只會把屬性的變更套用到後續的資料收集期間。

指令碼函數

  • 絕對值:傳回指定數字的絕對值。如果數字少於零,則會傳回數字的正值。如果指定的數字等於或大於零,則會傳回指定的數字。

    ABS(<Number>)

  • 新增月:傳回日期偏移,即從開始日期算起的指定月數。日期將一律落在指定的月份偏移中。如果開始日期不在偏移月份的日期值之內,將會使用偏移月份的最後一天。例如,EDate (31-Jan-2017, 1) 會傳回 (28-Feb-2017)。對於月份,請輸入開始日期之前或之後的月數。正值月份會產生未來日期。負值會產生過去的日期。

    ADD_MONTH(<Start Date>, <Months>, <Length>)

    範例:ADD_MONTH(DATE(2017, 2, 15) 3)

  • 前期平均值:計算前 X 期數值金額的平均值。

    AVERAGE_PRIOR(<Value>, <Number of Periods>, <To Currency*>

    範例:AVERAGE_PRIOR( {Balance (Reporting)}, '2', 'EUR'

  • 日期:傳回以指定的年、月和日整數值為基礎的日期值。

    DATE(<Year>, <Month>, <Day>)

  • 日期差異:傳回兩個日期之間的天數、時數、分鐘數或秒數差異。對於 DATE 1 和 DATE 2,可使用值 TODAY 和 NOW,分別代表目前的日期 (不含時間元素) 和日期時間。

    DATE_DIFF(<Date1>, <Date2>, <Type>)

    範例:DATE_DIFF('TODAY', {Preparer End Date}, 'DAYS') or DATE_DIFF({Preparer End Date}, 'NOW', 'HOURS')

  • :以整數傳回日期的天數值

    DAY(<DATE>)

  • 擷取文字:傳回值內從指定的位置開始的子字串。

    SUBSTRING(<Value>, <Location>, <Length>)

    範例:SUBSTRING( {Name} , 5, 10)

  • If Then Else:可讓使用者將條件計算插入指令碼計算。IF_THEN_ELSE 計算也可以巢狀化來支援 ELSE IF 類型計算。

    IF_THEN_ELSE(<Condition>, <Value1>, <Value2>)

    範例:

    IF_THEN_ELSE( {Risk Rating} = 'Low', 'Good',
    IF_THEN_ELSE( {Risk Rating} = 'Medium', 'Better',
    IF_THEN_ELSE({Risk Rating} = 'High', 'Best','Bad')))
    
  • Length:把文字值視為參數,並傳回一個整數,也就是該文字的字元數。如果該值為空白/空值,計算作業會傳回 0。

    Length ({<attribute>})

    範例:LENGTH('Value') 會傳回 5,而 LENGTH({Name}) 會傳回該物件名稱的字元數。

    下列範例為搭配 SUBSTRING 來使用上述計算作業,以擷取文字值的最後 4 個字元。

    SUBSTRING( {MyString}, LENGTH ({MyString}) - 4

  • 小寫:傳回小寫的值。

    LOWERCASE(<Value>)

    範例:LOWERCASE( {Description} )

  • 最大值:傳回屬性清單中的最大值。不限參數個數。

    MAX(<Value1>, <Value2>,<ValueN>)

    範例:MAX( TRANSLATE( {Source System Balance (Entered)}, 'USD', 'Accounting'), TRANSLATE( {Source System Balance (Functional)}, 'USD', 'Accounting'), TRANSLATE( {Source System Balance (Reporting)}, 'USD', 'Accounting') )

  • 前期最大值:傳回前 X 期的最大值。

    MAX_PRIOR (<Value>, <Number of Periods>)

    範例:MAX_PRIOR( {Balance (Functional)}, '6', 'CAD', 'REC')

  • 最小值::傳回屬性清單中的最小值。不限參數個數。

    MIN(<Value1>, <Value2>,<ValueN>)

    範例:MIN( TRANSLATE( { Balance (Entered)}, 'CAD', 'REC'), TRANSLATE( {Balance (Functional)}, 'CAD', 'REC'), TRANSLATE( {Balance (Reporting)}, 'CAD', 'REC') )

  • 前期最小值:傳回前 X 期的最小值。

    MIN_PRIOR (<Value>, (<Value>, <Number oMIN_PRIOR( {Source System Balance (Functional)}, '6', 'EUR', 'Simplified')

  • :以整數 (1-12) 傳回日期的月份值

    MONTH (<DATE>)

  • 次方:將某數乘以另一數的冪次。

    POWER(x,y) 其中 x=BASE NUMBER,而且 y=EXPONENT,x 和 y 可以是屬性或計算,只要兩者都是數值即可。

    範例:POWER(3,4)=81

    註:

    分數將簡化為該數的根。例如,POWER(27, 1/3) = 3 為立方根。

    負值將執行反轉的指數計算。例如,POWER(2, -2) = 1 / (2^2) = 1 / 4 = .25

  • 前期:傳回指定前一期的值。

    PRIOR(<Value>, <Number of Periods Prior>)

    範例:PRIOR( {Source System Balance (Entered)}, '1', 'EUR'')

  • Round:傳回四捨五入的值至指定的小數位數。

    ROUND(<Value>, <Decimal Places>)

    範例:ROUND( ({Scripted Translate} /7), 4)

  • 前期總和:傳回前 X 期的值總和。

    SUM_PRIOR(<Value>, <Number of Periods>)

    範例:SUM_PRIOR( {Balance (Reporting)}, '3', 'EUR')

  • 文字位置:傳回屬性值內子字串的位置,1 代表開頭位置。

    INSTRING(<Value>, <Value To Search>)

    範例:INSTRING( UPPERCASE( {Name} ), 'TAX' )

  • 轉換:使用指定的匯率類型將幣別屬性轉換為數值屬性。

    TRANSLATE(<Value>, <To Currency>, <Rate Type>)

    範例:TRANSLATE( {Balance (Entered)}, 'EUR', 'Acct')

  • 大寫:傳回大寫的值。

    UPPERCASE(<Value>)

    範例:UPPERCASE( {Name} )

  • :以整數傳回日期的年度值。

    YEAR (<DATE>)

新增計算屬性的範例

  1. 建立含有下列屬性的收集:

    Int1輸入為屬性類型,資料類型整數。按一下確定,然後從「編輯收集」中選取 Int1 作為 鍵 ID

    TextInput輸入為屬性類型,資料類型文字

  2. 儲存資料。
  3. 建立稱為 TextCalc 的屬性,其屬性類型為已計算資料類型為「文字」。
  4. 計算頁籤中,指定下列內容:
    • 計算類型:選取指令碼
    • 新增函數:選取 TextLocation,然後按一下新增

      INSTRING(<Value>, <Value To Search>) 新增至計算定義。

    • 按一下 <Value> 然後輸入值 (以單引號括住並區分大小寫),或是在新增屬性中,選取 TextInput 屬性,然後按一下新增

      <Value> 變更為 {TextInput}

    • <Value to Search> 取代為 'tion'

      備註:請確保您將 <xxx> 取代為單引號:'xxx'。例如,INSTRING({TextInput}, 'tion')

  5. 按一下確定以儲存屬性。

從維度新增屬性

在「從維度新增屬性」視窗中:

  1. 選取維度
  2. 可用的屬性清單中選取屬性,然後將它們移至選取的屬性清單。

    系統包括維度的鍵屬性作為「選取的屬性」。您無法清除鍵屬性。

  3. 按一下確定

    「從維度新增屬性」視窗隨即關閉,且選取的屬性會顯示在「編輯收集」視窗中。

  4. 您可以選取保留欄中的核取方塊,以指出屬性的值應保留在參照的表單中。如果已更新維度屬性,則不會在參照該屬性的表單中更新變更。如果您未選取此核取方塊,則參照的屬性會使用最新的變更進行更新。在您儲存收集之後,就無法變更此設定值。
  5. 按一下儲存儲存並關閉