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

For the next step number of columns has the created. Every column needs a name and a coumn type. A column type defines the type of the content. Normal column types are used for evaluation and “result” column types are used for results and are not considered for the evaluation. There are different column types:

Column Type Description
STRING A normal characterband where text can be defined.
RESULT_STRING Result column / A normal characterband where text can be defined.
LONG This column is for integers.
RESULT_LONG Result column / This column is for integers.
FLOAT This row is for floating decimals.
RESULT_FLOAT Result column / This row is for floating decimals.
BOOLEAN This column is for true or false values.
RESULT_BOOLEAN Result column / This column is for true or false values.
IDENTITY This column is for users that are created in the system.
RESULT_IDENTITY Result column / This column is for users that are created in the system.

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.1429601420.txt.gz · Last modified: 2021/07/01 09:54 (external edit)