Erweitern | ||||
---|---|---|---|---|
| ||||
|
Insbesondere Formeln / Sichtbarkeiten und Regeln müssen bei der Verwendung innerhalb einer Tabelle anders (dynamisch) funktionieren. Entsprechend benötigt die Anwendung mehr Vorkenntnisse zum Thema.
...
Beispiel der Adressierung. Je nach Herausforderung gilt es die Syntax der Regel / Formel anzupassen.
tableVeranstaltungen | ||||
---|---|---|---|---|
c1 | c2 | c3 | c4 | |
r1 | datum | zeit von | zeit bis | anzahl |
r2 | datum | zeit von | zeit bis | anzahl |
etc. | datum | zeit von | zeit bis | anzahl |
Der Formel-Wizard unterstützt dich bei der Anwendung von Formeln bei Tabellen.
...
Die Spalten (col) Adressierung wird jedoch nicht vorgeschlagen und muss daher individuell ergänzt / angewendet werden. Siehe Beispiel.
Summe von zeilenweise erfassten Werten bilden
Im Beispiel können bei einer Veranstaltung, mehrere Daten oder Zeitabschnitte erfasst werden. Es muss errechnet werden, wieviele Besucher insgesammt erwartet werden.
...
Damit konnte geprüft werden, ob eine der über "nodes" angesprochenen Werte über 499 (also mindestens 500) ist.
Regeln in der Tabelle
Im folgenden Beispiel sollen sich die Elemente "Beträge" je nach Status der Anfrage unterschiedlich, dem Status entsprechend logisch verhalten (Betrag zugesagt, macht keinen Sinn, wenn noch kein Anfrag gestestellt wurde).
...
Die Logik der Regeln ist immer dieselbe. Als Adressierungsziel wird die Spalte verwendet (nicht die Element ID). Das Ziel ist mit "../" > "../c3" jeweils dieselbe Zeile (row) - im Gegensatz zum vorherigen Beispiel (mit // ).
Regel 1
Bedingung | |
---|---|
nodeValue(".") == "keine_Anfrage" | |
Hauptaktion | Inverse Aktion |
setEditable(node("../c3"), false) && setEditable(node("../c4"), false) && setApplicationRequired(false,false, node("../c1")) && setApplicationRequired(false,false, node("../c3")) && setApplicationRequired(false,false, node("../c4")) && setValue(node("../c3"), NULL) && setValue(node("../c4"), NULL) |
- solange der Status "keine_Anfrage" gesetzt ist, sind die Beträge nicht editierbar (keine Eingabe möglich)
- solange der Status "keine_Anfrage" gesetzt ist, ist die Angabe "Förderstelle" nicht Pflicht
- solange der Status "keine_Anfrage" gesetzt ist, sind die Beträge nicht Pflichtfeld
- wenn der Status auf "keine_Anfrage" gesetzt wird, werden die Beträge gelöscht / (auf NULL) gesetzt.
Regel 2
Da die Aktion nur 500 Zeichen zulässt, muss manchmal eine zweite Regel mit derselben Bedigung gesetzt werden.
Bedingung | |
---|---|
nodeValue(".") == "keine_Anfrage" | |
Hauptaktion | Inverse Aktion |
setValue(node("../c3"), null) || setValue(node("../c4"), NULL) |
Regel 3
Bedingung | |
---|---|
nodeValue(".") == "Anfrage_offen" | |
Hauptaktion | Inverse Aktion |
setEditable(node("../c3"), true) && setEditable(node("../c4"), false) && setApplicationRequired(true,true, node("../c1")) && setApplicationRequired(true,true, node("../c3")) && setApplicationRequired(false,false, node("../c4")) && setValue(node("../c4"), NULL) |
Regel 4
Bedingung | |
---|---|
nodeValue(".") == "Anfrage_folgt" | |
Hauptaktion | Inverse Aktion |
setEditable(node("../c3"), true) && setEditable(node("../c4"), false) && setApplicationRequired(true,true, node("../c1")) && setApplicationRequired(true,true, node("../c3")) && setApplicationRequired(false,false, node("../c4")) && setValue(node("../c4"), NULL) |
Regel 5
Bedingung | |
---|---|
nodeValue(".") == "Foerderung_zugesagt" | |
Hauptaktion | Inverse Aktion |
setEditable(node("../c3"), true) && setEditable(node("../c4"), true) && setApplicationRequired(true,true, node("../c1")) && setApplicationRequired(true,true, node("../c3")) && setApplicationRequired(true,true, node("../c4")) |
Regel 6
Bedingung | |
---|---|
nodeValue(".") == "Foerderung_abgelehnt" | |
Hauptaktion | Inverse Aktion |
setEditable(node("../c3"), true) && setEditable(node("../c4"), false) && setApplicationRequired(true,true, node("../c1")) && setApplicationRequired(true,true, node("../c3")) && setApplicationRequired(false,false, node("../c4")) |
In Tabelle erfasste Werte in einem Auswahlfeld verwenden
Das entsprechende PlugIn (com.jaxfront.kaio.visualizer.TableColumnComboboxPlugin) muss auf dem System installiert sein.
...
Es stehen nur die vorher erfassten Parzellen zur Auswahl.
Die
...
Position in der Tabellenzeile anzeigen (Zeilennummer)
Lösung mit Position des Elementes in der Tabelle (welche Zeile, Row)
Dazu kann über eine Formel die Position (Zeile) ausgegeben werden. Im folgenden Beispiel wird mit
...