Compartir a través de


Nombres de columna y funciones de columna

Se aplica a: Aplicaciones de Canvas Aplicaciones basadas en modelos Power Platform CLI

Recupera nombres de columnas y valores de un objeto sin tipo.

Descripción

La función ColumnNames devuelve los nombres de todas las columnas de un registro sin tipo, devolviendo una tabla con todos los nombres de ese registro.

La función Columna devuelve el valor de una propiedad de un registro sin tipo con el nombre de columna proporcionado. El valor devuelto es un objeto sin tipo.

Las funciones ColumnNames y Column devuelven errores si el objeto sin tipo no representa un registro (es decir, si representa una tabla o un valor escalar o primitivo).

Sintaxis

Nombres de columna( Registro sin tipo )

  • UntypedRecord – Obligatorio. Un objeto sin tipo que representa un registro.

Columna( RegistroSinTipo, NombreDeColumna )

  • UntypedRecord – Obligatorio. Un objeto sin tipo que representa un registro.
  • ColumnName - Obligatorio. El nombre de la columna que se recuperará del registro dado.

Ejemplos

Acceso a valores de campos

Dada la siguiente cadena JSON en una variable llamada JsonString

{ "name": "Seattle", "population": 737000 }
  1. La siguiente fórmula devuelve una tabla de una sola columna con una columna Value que contiene los siguientes valores: "nombre", "población":

    ColumnNames( ParseJSON( JsonString ) )
    
  2. La fórmula siguiente devuelve el número 737000:

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

    2.1. Observe que esto es similar al operador . para registros sin tipo, pero no es necesario conocer el nombre de la columna de antemano.

  3. La fórmula siguiente devuelve el valor de texto "name: Seattle, population: 737000":

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

Valores en blanco

Dada la siguiente cadena JSON en una variable llamada JsonString

{ "text": "text value" , "number": 567, "empty": null }
  1. El intento de acceder a campos no existentes devuelve Blank(). La fórmula siguiente devuelve true:
    IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
    
  2. Los valores JSON null se consideran Blank(). La fórmula siguiente devuelve true:
    IsBlank( Column( ParseJSON( JsonString ), "empty" ) )
    

No registros

Llamar a las funciones Column o ColumnNames con objetos sin tipo que no representan registros devuelve un error. Todas las expresiones siguientes son erróneas:

Fórmula Motivo del error
NombresDeColumna( ParseJSON ( "[1, 2, 3]" ) ) Objeto sin tipo que representa una matriz
Columna( ParseJSON ( "23.45" ), "Valor" ) Objeto sin tipo que representa un número
ColumnNames( ParseJSON ( """hola""" ) ) Objeto sin tipo que representa un texto
Columna( ParseJSON ( "{""a"":false}" ).a, "a" ) Objeto sin tipo que representa un valor booleano