User Tools

Site Tools


Plugin installed incorrectly. Rename plugin directory 'swiftmail.backup' to 'swiftmail'.
en:software:tim:rules_matrix

This is an old revision of the document!


FIXME This page is not fully translated, yet. Please help completing the translation.
(remove this paragraph once the translation is finished)

Rules Matrix

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.


Creating a Matrix

A matrix can be created in the administrationsclient . In order to see the corresponding tab, the current user must have the role rulesadministrator.

matrix_reiter.jpg

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.

new_matrix.jpg


Define Columns

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.

columns_new.jpg

Nach einem Klick auf Speicher ist die Matrix angelegt und kann nun mit Werten befüllt werden.


Befüllen der Matrix

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.

matrix_overview.jpg

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.

Wird bei einem Feld ein Sternchen “*” ausgewählt, so gilt dies als Wildcard und ein beliebiger Wert wird bei der Auswertung angenommen.

Benutzen der Matrix per Actionhandler

Die Benutzung der Matrix per Handler wird hier MatrixHandler beschrieben.

Auswertungsbeispiele

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:

  • Es wird die Spalte mit der größten Übereinstimmung als Ergebnis angesehen.
  • Treffen mehr als eine Zeile überein, so wird der oberste Treffer verwendet.
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
en/software/tim/rules_matrix.1429600504.txt.gz · Last modified: 2021/07/01 09:55 (external edit)