Summe in Repeats

In diesem Beispiel werden Berechnungen mit Komponentenwerten innerhalb eines Repeats durchgeführt.

Innerhalb einer Zeile wird für die Komponente total die Anzahl mit dem Preis multipliziert. Da der Calculator in einem Element innerhalb des Repeats definiert ist, gilt die Berechnung für jede "total"-Komponente in jeder Zeile. Dabei kommen zwei Referenzierungsvarianten zum Einsatz, die hier zum gleichen Ergebnis führen.

<value component="count"/>
referenziert die Komponente "count" relativ, also innerhalb derselben Zeile wie die aktuelle Komponente "total".

<value component="/repeat//price"/>
referenziert die Komponente "price" absolut, beginnend von der Root-Ebene. Da für den Pfad-Teil "repeat" kein Index angegeben ist, wird derselbe Index verwendet, wie die aktuelle Komponente "total", für die die Berechnung ausgeführt werden soll. Man bleibt also in derselben Zeile. Bei mehreren Repeat-Komponenten in einem Formular wäre es auf diese Weise möglich, in anderen Tabellen dieselbe Zeile zu referenzieren.

Für die Berechnung der Gesamtsumme in der Komponente "sum" wird ebenfalls ein Element innerhalb des Repeats absolut referenziert (<value component="/repeat//total"/>). Der Unterschied besteht aber darin, dass sich "sum" selbst außerhalb eines Repeats befindet und daraus kein Index in den Referenz-Pfad übernommen werden kann. Dadurch werden alle "total"-Komponenten referenziert und die Summe über alle Zeilen gebildet.

Formular
Anzahl
*
Preis
*
Gesamt
*
 
 
*