# Umgang mit JSON-Arrays
# Elementzugriff
Um auf die Elemente eines JSON-Arrays zugreifen zu können, kann die Klasse SpinList (opens new window) von Camunda genutzt werden. Das unten stehende Beispiel aus einem Script-Task zeigt den Zugriff auf das erste Element einer Liste, das in eine neue Variable gespeichert wird.
/*
* Erstes Element aus der Liste der DMS-COOs
* an eine Variable des Execution-Context uebergeben.
*/
const fileCoos = execution.getVariable('sachakten');
const spinListFileCoos = S(execution.getVariable('sachakten')).elements(); //SpinList
const firstCoo = spinListFileCoos.get(0);
execution.setVariable('firstCoo', firstCoo);
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# Konkatenieren
Um zwei Listen zusammenzuführen und sie wiederum an eine Prozessvariable zu übergeben, kann die Methode addAll()
der SpinList (opens new window)
verwendet werden. Da für Listen von COO-Nummern pures JSON-Array verwendet wird, was valides JSON ist, muss die Liste
zunächst mit toString
ausgegeben und mit S()
wieder in ein JSON-Objekt umgewandelt werden. Eine direktere
Variante ist leider nicht bekannt.
const coos_1 = execution.getVariable('coos_1');
const coos_2 = execution.getVariable('coos_2');
const coosSpinList_1 = S(coos_1).elements(); //SpinList
const coosSpinList_2 = S(coos_2).elements(); //SpinList
coosSpinList_1.addAll(coosSpinList_2);
execution.setVariable('contentCoos', S(coosSpinList_1.toString()));
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
Die Variable 'contentCoos' ist nun vom Typ Json
.