Share via


Funktionen „ColumnNames“ und „Column“

Gilt für: Canvas-Apps Modellgesteuerte Apps Power Platform CLI

Ruft Spaltennamen und -werte aus einem nicht typisierten Objekt ab.

Eigenschaft

Die ColumnNames-Funktion gibt die Namen aller Spalten aus einem nicht typisierten Datensatz zurück und gibt eine Tabelle mit allen Namen aus diesem Datensatz zurück.

Die Column-Funktion gibt den Wert einer Eigenschaft aus einem nicht typisierten Datensatz mit dem angegebenen Spaltennamen zurück. Der Wert wird zurückgegeben als nicht typisiertes Objekt.

Die ColumnNames- und Column-Funktionen geben Fehler zurück, wenn das nicht typisierte Objekt keinen Datensatz darstellt (d. h. wenn es eine Tabelle oder einen Skalar- oder Grundwert darstellt).

Syntax

ColumnNames( UntypedRecord )

Column( UntypedRecord, ColumnName )

  • UntypedRecord – Erforderlich. Ein nicht typisiertes Objekt, das einen Datensatz darstellt.
  • ColumnName – Erforderlich. Der Name der Spalte, die aus dem angegebenen Datensatz abgerufen werden soll.

Beispiele

Zugreifen auf Feldwerte

Die folgende JSON-Zeichenfolge in einer Variablen mit dem Namen JsonString vorausgesetzt

{ "name": "Seattle", "population": 737000 }
  1. Die folgende Formel gibt eine einspaltige Tabelle mit einer Value-Spalte zurück, die die folgenden Werte enthält: „name“, „population“:

    ColumnNames( ParseJSON( JsonString ) )
    
  2. Die folgende Formel gibt die Zahl 737000 zurück:

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

    2.1. Beachten Sie, dass dies dem Operator . für nicht typisierte Datensätze ähnelt, der Spaltenname jedoch nicht vorher bekannt sein muss.

  3. Die folgende Formel gibt den Textwert "name: Seattle, population: 737000" zurück:

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

Leerstellen

Die folgende JSON-Zeichenfolge in einer Variablen mit dem Namen JsonString vorausgesetzt

{ "text": "text value" , "number": 567, "empty": null }
  1. Der Versuch, auf nicht vorhandene Felder zuzugreifen, gibt Blank() zurück. Die folgende Formel gibt true zurück:
    IsBlank( Column( ParseJSON( JsonString ), "does not exist" ) )
    
  2. JSON-null-Werte werden betrachtet als Blank(). Die folgende Formel gibt true zurück:
    IsBlank( Column( ParseJSON( JsonString ), "empty" ) )
    

Nonrecords

Beim Aufrufen der Funktionen „Column“ oder „ColumnNames“ mit nicht typisierten Objekten, die keine Datensätze darstellen, wird ein Fehler zurückgegeben. Alle folgenden Ausdrücke sind falsch:

Formel Ursache für Fehler
ColumnNames( ParseJSON ( "[1, 2, 3]" ) ) Nicht typisiertes Objekt, das ein Array darstellt
Column( ParseJSON ( "23.45" ), "Value" ) Nicht typisiertes Objekt, das eine Zahl darstellt
ColumnNames( ParseJSON ( """hello""" ) ) Nicht typisiertes Objekt, das einen Text darstellt
Column( ParseJSON ( "{""a"":false}" ).a, "a" ) Nicht typisiertes Objekt, das einen booleschen Wert darstellt