Compartir por


ColumnNames e funcións Column

Aplícase a: Aplicacións de lenzo Aplicacións baseadas en modelos Power Platform CLI

Recupera os nomes e os valores das columnas de an obxecto sen tipo.

Descripción

A función ColumnNames devolve os nomes de todas as columnas dun rexistro sen escribir, devolvendo unha táboa con todos os nomes dese rexistro.

A función Columna devolve o valor dunha propiedade dun rexistro sen escribir co nome da columna. O valor devólvese como obxecto sen tipo.

As funcións ColumnNames e Column devolven erros se o obxecto sen tipo non representa un rexistro (é dicir, se representa unha táboa ou un valor escalar ou primitivo).

Sintaxe

ColumnNames( UntypedRecord )

  • UntypedRecord – Obrigatorio. Un obxecto sen tipo que representa un rexistro.

Columna( UntypedRecord, ColumnName )

  • UntypedRecord – Obrigatorio. Un obxecto sen tipo que representa un rexistro.
  • ColumnName : é obrigatorio. O nome da columna que se vai recuperar do rexistro indicado.

Exemplos

Acceso a valores de campo

Dada a seguinte cadea JSON nunha variable chamada JsonString

{ "name": "Seattle", "population": 737000 }
  1. A seguinte fórmula devolve unha táboa dunha soa columna cunha Value columna que contén os seguintes valores: "nome", "poboación":

    ColumnNames( ParseJSON( JsonString ) )
    
  2. A seguinte fórmula devolve o número 737000:

    Value( Column( ParseJSON( JsonString ), "population" ) )
    

    2.1. Teña en conta que isto é semellante ao . operador de rexistros non tipificados, pero o nome da columna non é necesario coñecer previamente.

  3. A seguinte fórmula devolve o valor de texto "name: Seattle, population: 737000":

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

En branco

Dada a seguinte cadea JSON nunha variable chamada JsonString

{ "text": "text value" , "number": 567, "empty": null }
  1. Ao tentar acceder a campos inexistentes mostra Blank(). A fórmula seguinte devolve true:
    IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
    
  2. Os valores JSON null considéranse Blank(). A fórmula seguinte devolve true:
    IsBlank( Column( ParseJSON( JsonString ), "empty" ) )
    

Non rexistros

A chamada ás funcións Column ou ColumnNames con obxectos sen escribir que non representan rexistros devolve un erro. Todas as seguintes expresións son erróneas:

Fórmula Motivo do erro
ColumnNames( ParseJSON ("[1, 2, 3]" ) ) Obxecto sen tipo representa unha matriz
Columna( ParseJSON ("23.45"), "Valor" ) Obxecto sen tipo representa un número
ColumnNames( ParseJSON ("""hola""" )) Obxecto sen tipo representa un texto
Columna( ParseJSON ( "{""a"":false}" ).a, "a" ) Obxecto sen tipo representa un valor booleano