提供数据源的相关信息。

概述

数据源可以提供丰富的信息,用于优化用户体验。

可以使用-级别信息验证用户输入并在使用 Patch 函数前向用户提供即时反馈。 Validate 函数使用同一信息。

例如,可在数据源级别使用信息,以针对无权编辑或创建记录的用户禁用或隐藏“编辑”和“新建”按钮。

数据源中提供的信息量可能会不同,包括不提供任何信息。 Collections 不提供信息。 如果一条信息也不提供,则使用默认值,或返回空白。

说明

列信息

可以使用 DataSourceInfo 获取数据源的特定列的相关信息:

信息自变量 结果类型 说明
DataSourceInfo.DisplayName String 列的显示名称。 如果未定义显示名称,将返回列名称。
DataSourceInfo.MaxLength Number 列所能容纳的最大字符数。 仅适用于包含字符串的列。 如果未设置最大值,则返回空白。
DataSourceInfo.MaxValue Number 列所能容纳的最大数值。 仅适用于包含数字的列。 如果未设置最大值,则返回空白。
DataSourceInfo.MinValue Number 列所能容纳的最小数值。 仅适用于包含数字的列。 如果未设置最小值,则返回空白。
DataSourceInfo.Required Boolean 此列是否需要值? 如果数据源未对此进行设置,则返回 false

第三个自变量是字符串形式的列名称。 例如,集合人员中的“手机”列将传递为“Phone”(含双引号)。

数据源信息

还可以使用 DataSourceInfo 获取整体数据源的信息:

信息自变量 结果类型 说明
DataSourceInfo.AllowedValues Boolean 可以向用户授予对此数据源的哪些类型权限? 如果数据源未设置,则返回 空白 值。
DataSourceInfo.CreatePermission Boolean 当前用户是否有权在此数据源中创建记录? 如果数据源未设置,将返回 true
DataSourceInfo.DeletePermission Boolean 当前用户是否有权在此数据源中删除记录? 如果数据源未设置,将返回 true
DataSourceInfo.EditPermission Boolean 当前用户是否有权在此数据源中编辑记录? 如果数据源未设置,将返回 true
DataSourceInfo.ReadPermission Boolean 当前用户是否有权在此数据源中读取记录? 如果数据源未设置,将返回 true

语法

DataSourceInfo( DataSource, Information, ColumnName )

  • DataSource - 必需。 要使用的数据源。
  • Information – 必需。 要检索的信息类型。
  • ColumnName – 可选。 对于列级信息,为字符串形式的列名称。 例如,“手机”列将传递为“Phone”(含双引号)。 对于数据源级别的信息,不能使用 ColumnName 自变量。

    注意:对于列名称带空格的 SharePoint 和 Excel 数据源,将每个空格指定为“_x0020_”。 例如,将“Column Name”指定为“Column_x0020_Name”。

示例

本部分中的示例使用以下名为 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