Fonctions ColumnNames et Column
S’applique à : Applications canevas Applications pilotées par modèle Power Platform CLI
Récupère les noms et les valeurs de colonnes d’un objet sans type.
Description
La fonction ColumnNames renvoie les noms de toutes les colonnes d’un enregistrement sans type, en renvoyant une table avec tous les noms de cet enregistrement.
La fonction Column renvoie la valeur d’une propriété d’un enregistrement sans type avec le nom de la colonne donnée. La valeur est renvoyée sous la forme d’un objet sans type.
Les fonctions ColumnNames et Column renvoient des erreurs si l’objet sans type ne représente pas un enregistrement (c’est-à-dire, s’il représente une table ou une valeur scalaire ou primitive).
Syntaxe
Noms de colonnes( UntypedRecord )
- UntypedRecord – Obligatoire. Un objet sans type qui représente un enregistrement.
Colonne( Enregistrement non typé, Nom de la colonne )
- UntypedRecord – Obligatoire. Un objet sans type qui représente un enregistrement.
- ColumnName - Obligatoire. Le nom de la colonne à récupérer à partir de l’enregistrement donné.
Exemples
Accéder aux valeurs de champ
Étant donné la chaîne JSON suivante dans une variable nommée JsonString
{ "name": "Seattle", "population": 737000 }
La formule suivante renvoie une table à une seule colonne avec une colonne
Value
contenant les valeurs suivantes : « nom », « population » :ColumnNames( ParseJSON( JsonString ) )
La formule suivante renvoie le nombre
737000
:Value( Column( ParseJSON( JsonString ), "population" ) )
2.1. Notez que ceci est similaire à l’opérateur
.
pour les enregistrements sans type, mais il n’est pas nécessaire que le nom de la colonne soit connu à l’avance.La formule suivante renvoie la valeur de texte
"name: Seattle, population: 737000"
:With( { untyped: ParseJSON( JsonString ) }, Concat( ColumnNames( untyped ), $"{Value}: {Column( untyped, Value )}", ", "))
Vide
Étant donné la chaîne JSON suivante dans une variable nommée JsonString
{ "text": "text value" , "number": 567, "empty": null }
- La tentative d’accès à des champs inexistants renvoie Blank(). La formule suivante renvoie
true
:IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
- Les valeurs
null
JSON sont considérées comme Blank(). La formule suivante renvoietrue
:IsBlank( Column( ParseJSON( JsonString ), "empty" ) )
Nonrecords
L’appel des fonctions Column ou ColumnNames avec des objets sans type qui ne représentent pas des enregistrements renvoie une erreur. Toutes ces expressions ci-dessous sont erronées :
Formule | Raison de l’erreur |
---|---|
Noms de colonnes (ParseJSON ( "[1, 2, 3]" ) ) | L’objet sans type représente un tableau |
Colonne( ParseJSON ("23.45" ), "Valeur" ) | L’objet sans type représente un nombre |
ColumnNames( ParseJSON ( """bonjour""" ) ) | L’objet sans type représente un texte |
Colonne( ParseJSON ( "{""a"":false}" ).a, "a" ) | L’objet sans type représente une valeur booléenne |