Compartilhar via


ColumnNames e Column funções

Aplica-se a: Aplicativos de tela Copilot Studio Aplicativos baseados em modelo FUNÇÕES do Power Platform CLI Dataverse

Recupera nomes e valores de coluna de um valor dinâmico.

Descrição

A ColumnNames função retorna os nomes de todas as colunas de um registro dinâmico, retornando uma tabela com todos os nomes desse registro.

A Column função retorna o valor de uma propriedade de um registro dinâmico com o nome da coluna fornecido. O valor é retornado como um valor dinâmico.

As ColumnNames funções e Column as funções retornarão erros se o valor dinâmico não representar um registro (ou seja, se ele representar uma tabela ou um valor escalar ou primitivo).

Sintaxe

ColumnNames( DynamicRecord )

  • DynamicRecord – Obrigatório. Um valor dinâmico que representa um registro.

Column( DynamicRecord, ColumnName )

  • DynamicRecord – Obrigatório. Um valor dinâmico que representa um registro.
  • ColumnName - Obrigatório. O nome da coluna a ser recuperada do registro fornecido.

Exemplos

Acessar valores de campo

Considerando a seguinte cadeia de caracteres JSON em uma variável chamada JsonString

{ "name": "Seattle", "population": 737000 }
  1. A fórmula a seguir retorna uma tabela de coluna única com uma coluna Value contendo os seguintes valores: "nome", "população":

    ColumnNames( ParseJSON( JsonString ) )
    
  2. A fórmula a seguir retorna o número 737000:

    Value( Column( ParseJSON( JsonString ), "population" ) )
    
    • Observe que essa fórmula é semelhante ao . operador para registros dinâmicos, mas o nome da coluna não precisa ser conhecido com antecedência.
  3. A seguinte fórmula retorna o valor de texto "name: Seattle, population: 737000":

    With(
        { untyped: ParseJSON( JsonString ) },
        Concat(
            ColumnNames( untyped ),
            $"{Value}: {Column( untyped, Value )}",
            ", "))
    

Em branco

Considerando a seguinte cadeia de caracteres JSON em uma variável chamada JsonString

{ "text": "text value" , "number": 567, "empty": null }
  1. A tentativa de acessar campos não existentes retorna Blank(). A fórmula a seguir retorna true:
    IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
    
  2. Os valores null JSON são considerados Blank(). A fórmula a seguir retorna true:
    IsBlank( Column( ParseJSON( JsonString ), "empty" ) )
    

Sem registros

Chamar as Column funções ou ColumnNames com valores dinâmicos que não representam registros retorna um erro. Todas essas expressões na lista a seguir são incorretas:

Fórmula Razão do erro
ColumnNames( ParseJSON ( "[1, 2, 3]" ) ) O valor dinâmico representa uma matriz
Column( ParseJSON ( "23,45" ), "Value" ) O valor dinâmico representa um número
ColumnNames( ParseJSON ( """hello""" ) ) O valor dinâmico representa um texto
Column( ParseJSON ( "{"a"":false}" ).a, "a" ) O valor dinâmico representa um valor booliano