提供資料來源的相關資訊。

概觀

資料來源可以提供豐富的資訊來最佳化使用者經驗。

您可以使用資料行層級的資訊來驗證使用者輸入,並在使用 Patch 函式之前立即提供回應給使用者。 Validate 函式會使用這個相同的資訊。

您可以使用資料來源層級的資訊,例如,為沒有編輯和建立記錄權限的使用者停用或隱藏 [編輯] 和 [新增] 按鈕。

資料來源會依其提供資訊量而異,包括完全沒有提供任何項目。 集合不會提供資訊。 如果未提供資訊,則會使用預設值,或傳回空白。

說明

資料行資訊

您可以使用 DataSourceInfo 以取得資料來源的特定資料行相關資訊︰

資訊引數 結果類型 說明
DataSourceInfo.DisplayName 字串 資料行的顯示名稱。 如果未定義任何顯示名稱,則會傳回資料行名稱。
DataSourceInfo.MaxLength 數字 資料行可以保存的最大字元數。 僅適用於包含字串的資料行。 如果未設定最大值,則會傳回空白。
DataSourceInfo.MaxValue 數字 資料行可以保存的最大數值。 僅適用於包含數字的資料行。 如果未設定最大值,則會傳回空白。
DataSourceInfo.MinValue 數字 資料行可以保存的最小數值。 僅適用於包含數字的資料行。 如果未設定最小值,則會傳回空白。
DataSourceInfo.Required 布林值 這個資料行是否需要值? 如果資料來源未設定,則會傳回 false

第三個引數是做為字串之資料行的名稱。 例如,連絡人集合中的電話資料行會做為「電話」(包括雙引號) 傳遞。

資料來源資訊

您還可以使用 DataSourceInfo 以取得資料來源的完整相關資訊︰

資訊引數 結果類型 說明
DataSourceInfo.AllowedValues 布林值 可以將此資料來源的哪些類型的權限授與使用者? 如果資料來源未設定,則會傳回「空白」。
DataSourceInfo.CreatePermission 布林值 目前的使用者是否具有在此資料來源中建立記錄的權限? 如果資料來源未設定,則會傳回 true
DataSourceInfo.DeletePermission 布林值 目前的使用者是否具有在此資料來源中刪除記錄的權限? 如果資料來源未設定,則會傳回 true
DataSourceInfo.EditPermission 布林值 目前的使用者是否具有在此資料來源中編輯記錄的權限? 如果資料來源未設定,則會傳回 true
DataSourceInfo.ReadPermission 布林值 目前的使用者是否具有在此資料來源中讀取記錄的權限? 如果資料來源未設定,則會傳回 true

語法

DataSourceInfo( DataSource, Information, ColumnName )

  • DataSource – 必要項目。 要使用的資料來源。
  • Information – 必要項目。 您想要擷取的資訊類型。
  • ColumnName – 選擇性。 針對資料行層級資訊,資料行名稱做為字串。 電話資料行會做為(包括雙引號) 傳遞。 針對資料來源層級的資訊,無法使用 ColumnName引數。

範例

本章節中的範例使用這個名為 IceCream 的資料來源:

資料來源也提供了這項資訊︰

  • 數量的顯示名稱為「庫存量」。
  • 類別的最大長度為 30 個字元。
  • 類別資料行必須包含一個值。 數量資料行並非必要項目。
  • 最小數量為 0。
  • 最大數量為 100。
  • 目前的使用者可以讀取和編輯 IceCream 資料來源的記錄,但無法建立或刪除記錄。
公式 說明 結果
DataSourceInfo( IceCream, DataSourceInfo.DisplayName, "Quantity" ) 傳回 IceCream 資料來源的數量資料行之顯示名稱。 「庫存量」
DataSourceInfo( IceCream, DataSourceInfo.MaxLength, "Flavor" ) 傳回 IceCream 資料來源的類別資料行字串的最大長度。 30
DataSourceInfo( IceCream, DataSourceInfo.Required, "Flavor" ) 是否需要 IceCream 資料來源的類別資料行? true
DataSourceInfo( IceCream, DataSourceInfo.Required, "Quantity" ) 是否需要 IceCream 資料來源的數量資料行? false
DataSourceInfo( IceCream, DataSourceInfo.MaxValue, "Quantity" ) 傳回 IceCream 資料來源的數量資料行之最大數值。 100
DataSourceInfo( IceCream, DataSourceInfo.MinValue, "Quantity" ) 傳回 IceCream 資料來源的數量資料行之最小數值。 0
DataSourceInfo( IceCream, DataSourceInfo.ReadPermission) 目前的使用者是否可以讀取 IceCream 資料來源中的記錄? true
DataSourceInfo( IceCream, DataSourceInfo.EditPermission) 目前的使用者是否可以編輯 IceCream 資料來源中的記錄? true
DataSourceInfo( IceCream, DataSourceInfo.CreatePermission) 目前的使用者是否可以建立 IceCream 資料來源中的記錄? false
DataSourceInfo( IceCream, DataSourceInfo.DeletePermission) 目前的使用者是否可以刪除 IceCream 資料來源中的記錄? false