CX_JSON_OBJECT::PutTypedLiteralField
Beschreibung:
Diese Methode schreibt den übergebenen Wert in das angegebene Feld im JSON-Objekt.
Die Methode verhält sich wie PutTyped mit dem Unterschied, dass der übergebene Feldname als Feldname interpretiert wird und nicht als Navigationspfad und entsprechend keine Objektnavigation durchgeführt wird. Dies ermöglicht es, ein Feld zu schreiben, welches Navigationszeichen wie "." enthält, was mit PutTyped nicht möglich ist, da dort der Teil vor dem "." als Objekt-Datenfeld interpretiert wird und das Objekt (falls nicht vorhanden) implizit angelegt wird.
Falls per SetDataType ein Datentyp für das Zielfeld definiert ist, dann wird der übergebene Wert in diesen Zieltypen umgewandelt, ansonsten wird der übergenene Wert wie in PutTyped beschrieben interpretiert.
Code-Beispiel:
Var(json) CreateTransObject(CX_JSON_OBJECT) -> json "john" child[0].parent.name" json Call(PutTypedLiteralField) // -> "john" "jack" child[0].parent.name" json Call(GetTyped) // -> "jack" // result JSON { "child[0].parent.name":"john", "child": [ { "parent": { "name": "jack" } } ] }
Stack | Position | Objekttyp | Kurzbeschreibung |
---|---|---|---|
Stack(In) | Top | CX_JSON_OBJECT | Das JSON-Objekt in welches der Feldwert geschrieben werden soll |
Top-1 | STRING | Der Name des Felds, welches ausgelesen werden soll | |
Top-2 |
ANY |
Der Feldwert der geschrieben werden soll | |
Stack(Out) | Top | - | - |