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 }
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 ) )
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.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 }
- El intento de acceder a campos no existentes devuelve Blank(). La fórmula siguiente devuelve
true
:IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
- Los valores JSON
null
se consideran Blank(). La fórmula siguiente devuelvetrue
: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 |