Power Apps での DataSourceInfo 関数

データ ソース に関する情報を提供します。

概要

データ ソースは、ユーザー エクスペリエンスを最適化するために貴重な情報を提供できます。

Patch 関数を使用する前に、 レベルの情報を使用して、ユーザー入力を検証し、ユーザーに即時フィードバックを提供することができます。 Validate 関数はこの同じ情報を使用します。

データ ソース レベルで情報を使用して、たとえば、レコード を編集および作成するためのアクセス許可を持たないユーザーに対して、編集 および 新規作成 ボタンを無効または非表示にすることができます。

データ ソースは提供する情報の量によって異なり、まったく提供しないものもあります。 コレクション は情報を提供しません。 情報が提供されない場合は、既定が使用されるか、もしくは 空白 が返されます。

注意

現在、Microsoft Lists では DataSourceInfo 関数はサポートされていません。

説明

列情報

DataSourceInfo を使用すると、データ ソースの特定の列に関する情報を取得できます。

情報の引数 結果の種類 内容
DataSourceInfo.DisplayName 文字列 列の表示名。 表示名が定義されていない場合は、列名を返します。
DataSourceInfo.MaxLength 番号 列が保持できる最大文字数。 文字列が含まれている列にのみ適用されます。 最大数が設定されていない場合は、空白 を返します。
DataSourceInfo.MaxValue 番号 列が保持できる最大数値。 数値が含まれている列にのみ適用されます。 最大数が設定されていない場合は、空白 を返します。
DataSourceInfo.MinValue 番号 列が保持できる最小数値。 数値が含まれている列にのみ適用されます。 最小値が設定されていない場合は、空白 を返します。
DataSourceInfo.Required Boolean 値はこの列に必要ですか? データ ソースによって設定されていない場合は、false を返します。

3 番目の引数は、文字列としての列の名前です。 たとえば、人物 コレクションの 電話 の列は、二重引用符を含む "Phone" として渡されます。

データ ソースの情報

DataSourceInfo を使用すると、データ ソース全体に関する情報を取得することもできます。

情報の引数 結果の種類 内容
DataSourceInfo.AllowedValues Boolean このデータ ソースに対してユーザーに付与できるアクセス許可の種類は何ですか? データ ソースによって設定されていない場合は、空白 を返します。
DataSourceInfo.CreatePermission Boolean 現在のユーザーは、このデータ ソースでレコードを作成するアクセス許可を持っていますか? データ ソースによって設定されていない場合は、true を返します。
DataSourceInfo.DeletePermission Boolean 現在のユーザーは、このデータ ソースでレコードを削除するアクセス許可を持っていますか? データ ソースによって設定されていない場合は、true を返します。
DataSourceInfo.EditPermission Boolean 現在のユーザーは、このデータ ソースでレコードを編集するアクセス許可を持っていますか? データ ソースによって設定されていない場合は、true を返します。
DataSourceInfo.ReadPermission Boolean 現在のユーザーは、このデータ ソースでレコードを読み取りするアクセス許可を持っていますか?: データ ソースによって設定されていない場合は、true を返します。

注意

現在のユーザーが要求された権限を持っているかどうか判断できない場合、DataSourceInfo を返します。 実際の操作が実行されると、サーバーによってアクセス許可が再度チェックされ、許可されていない場合はエラーが表示されます。 現時点では、DataSourceInfo による権限チェックは、Microsoft Dataverse を使用する場合にのみ可能です。

構文

DataSourceInfo( DataSource, Information, ColumnName )

  • DataSource – 必須。 使用するデータ ソース。

  • 情報 – 必須。 取得する情報の種類。

  • ColumnName – オプション。 列レベルの情報の場合は、列名を文字列として指定します。 電話 の列は、二重引用符を含む "電話" として渡されます。 データ ソース レベルの情報に関しては、ColumnName 引数を使用することはできません。

    注意

    名前にスペースが使われている SharePoint と Excel のデータ ソースの場合、各スペースを "_x0020_" として指定します。 たとえば、"Column Name""Column_x0020_Name" として指定します。

このセクションの例は、IceCream という名前のデータ ソースを使用します。

Icecream の例

このデータ ソースは、次の情報も提供します。

  • 数量 の表示名は "手持ち在庫数量" です。
  • Flavor の最大長は 30 文字です。
  • Flavor 列には値を含める必要があります。 数量 列は必須ではありません。
  • 最小 数量 は 0 です。
  • 最大 数量 は 100 です。
  • 現在のユーザーは、IceCream データ ソースのレコードの読み取りおよび編集を行うことができますが、レコードを作成および削除することはできません。
計算式 内容 結果
DataSourceInfo( IceCream, DataSourceInfo.DisplayName, "Quantity" ) IceCream データ ソースの 数量 列の表示名を返します。 "手持ち在庫数量"
DataSourceInfo( IceCream, DataSourceInfo.MaxLength, "Flavor" ) IceCream データ ソースの Flavor 列の文字列の最大長を返します。 30
DataSourceInfo( IceCream, DataSourceInfo.Required, "Flavor" ) IceCream データ ソースの Flavor 列は必須ですか? 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 データ ソースのレコードを削除できますか?

注意

ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)

この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。