Partager via


ColumnNames et Column fonctions

S’applique à : Applications Canvas Copilot Studio Basées sur des modèles , applications Power Platform CLI Dataverse functions

Récupère les noms de colonnes et les valeurs d’une valeur dynamique.

Description

La ColumnNames fonction retourne les noms de toutes les colonnes d’un enregistrement dynamique, retournant une table avec tous les noms de cet enregistrement.

La Column fonction retourne la valeur d’une propriété à partir d’un enregistrement dynamique avec le nom de colonne donné. La valeur est retournée en tant que valeur dynamique.

Les ColumnNames fonctions retournent Column des erreurs si la valeur dynamique ne représente pas un enregistrement (autrement dit, s’il représente une table ou une valeur scalaire ou primitive).

Syntaxe

ColumnNames( DynamicRecord )

  • DynamicRecord – Obligatoire. Valeur dynamique qui représente un enregistrement.

Column( DynamicRecord, ColumnName )

  • DynamicRecord – Obligatoire. Valeur dynamique 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 }
  1. La formule suivante renvoie une table à une seule colonne avec une colonne Value contenant les valeurs suivantes : « nom », « population » :

    ColumnNames( ParseJSON( JsonString ) )
    
  2. La formule suivante renvoie le nombre 737000 :

    Value( Column( ParseJSON( JsonString ), "population" ) )
    
    • Notez que cette formule est similaire à l’opérateur . pour les enregistrements dynamiques, mais que le nom de colonne n’a pas à être connu au préalable.
  3. 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 }
  1. La tentative d’accès à des champs inexistants renvoie Blank(). La formule suivante renvoie true :
    IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
    
  2. Les valeurs null JSON sont considérées comme Blank(). La formule suivante renvoie true :
    IsBlank( Column( ParseJSON( JsonString ), "empty" ) )
    

Nonrecords

L’appel ou les ColumnColumnNames fonctions avec des valeurs dynamiques qui ne représentent pas les enregistrements retournent une erreur. Toutes ces expressions de la liste suivante sont erronées :

Formule Raison de l’erreur
ColumnNames( ParseJSON ( « [1, 2, 3] » ) La valeur dynamique représente un tableau
Column( ParseJSON ( « 23.45 » ), « Value » ) La valeur dynamique représente un nombre
ColumnNames( ParseJSON ( « ""hello"" » ) ) La valeur dynamique représente un texte
Column( ParseJSON ( « {""a"" » :false} » ).a, « a » ) La valeur dynamique représente une valeur booléenne