This is an old revision of the document!
This page is not fully translated, yet. Please help completing the translation.
(remove this paragraph once the translation is finished)
The Rules Matrix is used für evaluation of Business Rules. It is possible to create different matrixes with custom columns. Afterwards the matrix gets filled with rows. These rows can be evaluated with the help of an actionhandler. The row with the best match will be used as the result row. If not all columns match exactly, the row with the next best result is used.
A matrix can be created in the administrationsclient . In order to see the corresponding tab, the current user must have the role rulesadministrator.
With “Add Matrix” it is possible to create a custom number of matrixes. When clicking, a new popup is opened in which the structure of the matrix can be defined. First the matrix needs a name, in this example “decision”. Also the owner group of the matrix has to be defined. All users in this group are able to see the matrix und to change it. Only groups in which the current user is member are shown.
Im nächsten Schritt müssen eine beliebige Anzahl an Spalten angelegt werden. Jeder Spalte muss ein Name und ein Spaltentyp gegeben werden. Ein Spaltentyp definiert hierbei die Art des Inhalts. Normale Spaltentypen werden ausgelesen, wohingegen “Result” Typen als Ergebnis Spalten dienen und nicht für die Auswertung verwendet werden. Hierbei wird zwischen verschiedenen Typen unterschieden:
Spaltentyp | Beschreibung |
---|---|
STRING | Normale Zeichenkette. Hier kann Freitext eingeben werden. |
RESULT_STRING | Ergebnisspalte / Normale Zeichenkette. Hier kann Freitext eingeben werden. |
LONG | Hier können ganze Zahlen eingegeben werden. |
RESULT_LONG | Ergebnisspalte / Hier können ganze Zahlen eingegeben werden. |
FLOAT | Hier werden Gleitkommazahlen eingetragen. |
RESULT_FLOAT | Ergebnisspalte / Hier werden Gleitkommazahlen eingetragen. |
BOOLEAN | Hier werden wahr oder falsch Werte eingetragen. |
RESULT_BOOLEAN | Ergebnisspalte / Hier werden wahr oder falsch Werte eingetragen. |
IDENTITY | Hier können Systembenutzer die im System angelegt sind ausgewählt werden. |
RESULT_IDENTITY | Ergebnisspalte / Hier können Systembenutzer die im System angelegt sind ausgewählt werden. |
In folgendem Beispiel werden 3 Spalten angelegt die durchsucht werden sollen und hierbei von unterschiedlichem Spaltentyp sind. Es wurde ebenfalls eine Ergebnisspalte angelegt in welcher in Benutzer als Ergebnis ausgegeben werden soll.
Nach einem Klick auf Speicher ist die Matrix angelegt und kann nun mit Werten befüllt werden.
Das nachfolgenden Bild zeigt eine bereits befüllte Matrix. Hier ist es möglich die komplette Matrix zu entfernen, zu bearbeiten, neue Zeilen hinzuzufügen und Spalten wieder zu löschen.
Element | Beschreibung |
---|---|
1 | Über diesen Button lässt sich die gesamte Matrix wieder entfernen. |
2 | Hier wird die Matrix mit allen eingegebenen Zeilen angezeigt. |
3 | Über diesen Button lässt sich die Matrix bearbeiten. Jedoch ist es nicht möglich den Spaltentyp der bereits bestehenden Spalten zu verändern. Sie können jedoch gelöscht, bzw. neu hinzugefügt werden. |
4 | Über diesen Button lassen sich ganze Zeilen wieder entfernen. |
5 | Hier lassen sich neue Spalten hinzufügen. |
Möchte man nun eine neue Zeile hinzufügen, so wird ein Popup angezeigt. In diesem werden je nach Spaltentyp verschiedene Felder angezeigt. Bei String z.B. ein einfaches Eingabefeld. Bei Identity wird eine Liste aller angelegten Benutzer dargestellt. Bei Boolean wird eine Liste mit wahr oder falsch angezeigt.
Die Benutzung der Matrix per Handler wird hier MatrixHandler beschrieben.
Als Grundlage dieser Auswertungen setzen wir die befüllte Beispielstabelle von oben mit 3 Suchwerten und einer Ergebnisspalte. Die folgende Tabelle zeigt die Ergebnisse für einige fiktive Auswertungen anhand der folgenden Regeln:
Suchwert 1 | Suchwert 2 | Suchwert 3 | Ergebnis |
---|---|---|---|
Freising | true | 20 | Group_1 |
Freising | true | 89 | wiki |
Freising | false | 20 | Group_1 |
Freising | false | 8267 | Group_1 |
München | true | 213 | Prozess Manager |
Timbuktu | false | 89 | wiki |