Partajați prin


ColumnNames și funcții Column

Se aplică pentru: planșă de lucru apps Model-driven apps Power Platform CLI

Preia numele și valorile coloanelor din an obiect fără tip.

Descriere

Funcția ColumnNames returnează numele tuturor coloanelor dintr-o înregistrare netipificată, returnând un tabel cu toate numele din acea înregistrare.

Funcția Column returnează valoarea unei proprietăți dintr-o înregistrare netipificată cu numele de coloană dat. Valoarea este returnată ca an obiect fără tip.

Funcțiile ColumnNames și Column returnează erori dacă obiect fără tip nu reprezintă o înregistrare (adică dacă reprezintă un tabel sau o valoare scalară sau primitivă).

Sintaxă

ColumnNames( UntypedRecord )

  • UntypedRecord – Obligatoriu. Un obiect fără tip care reprezintă o înregistrare.

Coloană( UntypedRecord, ColumnName )

  • UntypedRecord – Obligatoriu. Un obiect fără tip care reprezintă o înregistrare.
  • ColumnName - Obligatoriu. Numele coloanei care urmează să fie preluată din înregistrarea dată.

Exemple

Accesarea valorilor câmpurilor

Având în vedere următorul șir JSON într-o variabilă numită JsonString

{ "name": "Seattle", "population": 737000 }
  1. Următoarea formulă returnează un tabel cu o singură coloană cu o coloană Value conținând următoarele valori: „nume”, „populație”:

    ColumnNames( ParseJSON( JsonString ) )
    
  2. Următoarea formulă returnează numărul 737000:

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

    2.1. Observați că acesta este similar cu . operatorul pentru înregistrările netipizate, dar numele coloanei nu trebuie să fie cunoscut în prealabil.

  3. Următoarea formulă returnează valoarea textului "name: Seattle, population: 737000":

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

Blanks

Având în vedere următorul șir JSON într-o variabilă numită JsonString

{ "text": "text value" , "number": 567, "empty": null }
  1. Încercarea de a accesa câmpuri inexistente returnează Blank(). Următoarea formulă returnează true:
    IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
    
  2. Valorile JSON null sunt considerate Blank(). Următoarea formulă returnează true:
    IsBlank( Column( ParseJSON( JsonString ), "empty" ) )
    

Non-înregistrări

Apelarea funcțiilor Column sau ColumnNames cu obiecte netipizate care nu reprezintă înregistrări returnează o eroare. Toate aceste expresii de mai jos sunt eronate:

Formula Motivul erorii
ColumnNames( ParseJSON ("[1, 2, 3]" ) ) Obiect fără tip reprezintă o matrice
Coloană( ParseJSON ("23.45"), "Valoare" ) Obiect fără tip reprezintă un număr
ColumnNames( ParseJSON ("""bună ziua""" )) Obiect fără tip reprezintă un text
Coloană( ParseJSON ( "{""a"":false}" ).a, "a" ) Obiect fără tip reprezintă o valoare Boolean