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 )
- UntypedRecord – Erforderlich. Ein nicht typisiertes Objekt, das einen Datensatz darstellt.
Spalte( UntypisierterDatensatz, Spaltenname )
- 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 }
Die folgende Formel gibt eine einspaltige Tabelle mit einer
Value
-Spalte zurück, die die folgenden Werte enthält: „name“, „population“:ColumnNames( ParseJSON( JsonString ) )
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.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 }
- 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" ) )
- JSON-
null
-Werte werden betrachtet als Blank(). Die folgende Formel gibttrue
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 |
---|---|
Spaltennamen(ParseJSON ( "[1, 2, 3]" ) ) | Nicht typisiertes Objekt, das ein Array darstellt |
Spalte(ParseJSON ( "23.45" ), "Wert" ) | Nicht typisiertes Objekt, das eine Zahl darstellt |
Spaltennamen(ParseJSON ( """hallo""" ) ) | Nicht typisiertes Objekt, das einen Text darstellt |
Spalte (ParseJSON ( "{""a"":false}" ).a, "a" ) | Nicht typisiertes Objekt, das einen booleschen Wert darstellt |