Função DataSourceInfo

Aplica-se a: Aplicativos Canvas Aplicativos baseados em modelos

Fornece informações sobre uma fonte de dados.

Visão geral

As fontes de dados podem fornecer uma infinidade de informações para otimizar a experiência do usuário.

Você pode usar as informações no nível da coluna para validar a entrada do usuário e fornecer comentários imediatos ao usuário antes de usar a função Patch. A função Validate usa essas mesmas informações.

Você pode usar informações no nível de fonte de dados, por exemplo, para desabilitar ou ocultar os botões Editar e Novo para usuários que não tenham permissões para editar nem criar registros.

O volume de informações fornecidas pelas fontes de dados varia, incluindo não fornecer informação alguma. As coleções não fornecem informações. Se parte das informações não for fornecida, serão usadas as opções padrão, ou em branco será retornado.

Nota

Atualmente, a função DataSourceInfo não é suportada em Microsoft Listas.

Description

Informações da coluna

Você pode usar o DataSourceInfo para obter informações sobre uma determinada coluna de uma fonte de dados:

Argumento de Informações Tipo de Resultado Descrição
Informações da fonte de dados.Nome de exibição Cadeia de Caracteres Nome de exibição para a coluna. Se nenhum nome de exibição for definido, o nome da coluna será retornado.
DataSourceInfo.ComprimentoMáximo Número Número máximo de caracteres que a coluna pode conter. Aplica-se somente às colunas que contêm cadeias de caracteres. Se um máximo não for definido, em branco será retornado.
Informações da fonte de dados.Valor máximo Número Valor numérico máximo que uma coluna pode conter. Aplica-se somente às colunas que contêm números. Se um máximo não for definido, em branco será retornado.
Informações da fonte de dados.ValorMínimo Número Valor numérico mínimo que uma coluna pode conter. Aplica-se somente às colunas que contêm números. Se um mínimo não for definido, em branco será retornado.
DataSourceInfo.Obrigatório Booliano Esta coluna exige um valor específico? Se não for definido pela fonte de dados, falso será retornado.

O terceiro argumento é o nome de uma coluna como uma cadeia de caracteres. Por exemplo, a coluna Phone na coleção People seria nomeada como "Phone" com aspas duplas.

Informações da fonte de dados

Você também pode usar o DataSourceInfo para obter informações sobre uma fonte de dados como um todo:

Argumento de Informações Tipo de Resultado Descrição
DataSourceInfo.Valores Permitidos Booliano Quais tipos de permissões podem ser concedidos aos usuários nessa fonte de dados? Se isso não for definido pela fonte de dados, em branco será retornado.
DataSourceInfo.CreatePermission Booliano O usuário atual tem permissão para criar registros nessa fonte de dados? Se não definido pela fonte de dados, true será retornado.
DataSourceInfo.DeletePermission Booliano O usuário atual tem permissão para excluir registros nesta fonte de dados? Se não definido pela fonte de dados, true será retornado.
DataSourceInfo.EditPermission Booliano O usuário atual tem permissão para editar os registros nesta fonte de dados? Se não definido pela fonte de dados, true será retornado.
DataSourceInfo.Permissão de Leitura Booliano O usuário atual tem permissão para ler registros nesta fonte de dados? Se não definido pela fonte de dados, true será retornado.

Nota

DataSourceInfo retorna true se não puder determinar se o usuário atual tem a permissão solicitada. As permissões serão verificadas novamente pelo servidor quando a operação real for realizada, e um erro será exibido se não houver permissão. Neste momento, a verificação de permissões com DataSourceInfo só é possível quando se usa o Microsoft Dataverse.

Sintaxe

DataSourceInfo( DataSource, Informações [, ColumnName] )

  • DataSource – Obrigatório. A fonte de dados a ser usada.
  • Informações – Obrigatório. O tipo de informações que você deseja recuperar.
  • ColumnName – Opcional. O nome da coluna para a qual recuperar informações no nível da coluna. Para obter informações no nível de fonte de dados, o argumento ColumnName não pode ser usado.

Observação

Antes da versão 3.24042 do Power Apps, os nomes das colunas eram especificados com uma cadeia de texto usando aspas duplas e, se conectados a uma fonte de dados também precisavam ser nomes lógicos. Por exemplo, o nome lógico "cr43e_name" entre aspas duplas foi usado em vez do nome de exibição Name sem aspas. Para fontes de dados do SharePoint e do Excel que contêm nomes de colunas com espaços, cada espaço foi especificado com "_x0020_", por exemplo "Nome da coluna" como "Column_x0020_Name". Após esta versão, todos os aplicativos foram atualizados automaticamente para a nova sintaxe descrita neste artigo.

Exemplos

Os exemplos nesta seção usam esta fonte de dados, chamada IceCream:

Exemplo Sorvete.

A fonte de dados também fornece estas informações:

  • O nome de exibição em Quantidade é "Quantity on Hand".
  • O comprimento máximo de Sabor é de 30 caracteres.
  • A coluna Sabor deve conter um valor. A coluna Quantidade não é necessária.
  • O valor mínimo para Quantidade é 0.
  • O valor máximo para Quantidade é 100.
  • O usuário atual pode ler e editar os registros da fonte de dados IceCream, mas não pode criar nem excluir registros.
Fórmula Descrição Resultado
DataSourceInfo(Sorvete, DataSourceInfo.DisplayName, Quantidade) Retorna o nome de exibição da coluna Quantidade da fonte de dados IceCream. "Quantity on Hand"
DataSourceInfo(Sorvete, DataSourceInfo.ComprimentoMáximo, Sabor) Retorna o comprimento máximo da cadeia de caracteres da coluna Sabor da fonte de dados IceCream. 30
DataSourceInfo(Sorvete, DataSourceInfo.Obrigatório, Sabor) A coluna Sabor da fonte de dados IceCream é necessária? verdadeiro
DataSourceInfo(Sorvete, DataSourceInfo.Obrigatório, Quantidade) A coluna Quantidade da fonte de dados IceCream é necessária? falso
DataSourceInfo(Sorvete, DataSourceInfo.MaxValue, Quantidade) Retorna o valor numérico máximo para a coluna Quantidade da fonte de dados IceCream. 100
DataSourceInfo(Sorvete, DataSourceInfo.ValorMínimo, Quantidade) Retorna o valor numérico mínimo para a coluna Quantidade da fonte de dados IceCream. 0
DataSourceInfo(Sorvete, DataSourceInfo.ReadPermission) O usuário atual tem permissão para ler registros da fonte de dados IceCream? verdadeiro
DataSourceInfo(Sorvete, DataSourceInfo.EditPermission) O usuário atual tem permissão para editar registros na fonte de dados IceCream? verdadeiro
DataSourceInfo(Sorvete, DataSourceInfo.CreatePermission) O usuário atual tem permissão para criar registros na fonte de dados IceCream? falso
DataSourceInfo(Sorvete, DataSourceInfo.DeletePermission) O usuário atual tem permissão para excluir registros da fonte de dados IceCream? falso