Expression-Ordner

Produktlinien: Standard, Expert
Module: Leistung & CRM
Erstellt: 20.06.2003, Änderung:
Artikel an Vertec 6.2 angepasst: Abfragen definieren.
Mehr ansehen

Ein Expression-Ordner berechnet den Ordnerinhalt anhand einer OCL-Expression. Sie können so Filterordner erstellen, die immer nur die Einträge anzeigen, die den Kriterien entsprechen. Ein Beispiel für einen Expressionordner wäre z.B. die Anzeige aller Bearbeiter, die Überstunden geleistet haben, die Aufteilung der Adressen nach Kantonen etc.

Klicken Sie mit der rechten Maustaste auf den Ordner, in dem Sie den Expression-Ordner erzeugen möchten, und klicken Sie auf Neu > Expression-Ordner. Es erscheint das Eigenschaften-Fenster, in dem Sie folgende Angaben machen können:

BezeichnungUnter diesem Namen wird der Ordner im Baum dargestellt.
ExpressionHier können Sie eine OCL-Expression eingeben. Sie können diese entweder von Hand eintippen oder sie über den OCL-Expression-Editor zusammenstellen.
Neu KlasseWenn auf diesem Ordner neue Objekte erzeugt werden sollen, können Sie hier den Typ dieser Objekte angeben.
IndexÜber den Index kann die Sortierung im Baum angegeben werden. Vertec sortiert die Ordner einfach nach aufsteigendem Index. Wird nichts angegeben, werden die Ordner alphabetisch sortiert.
Icon

Allen Icons in Vertec ist eine Zahl zugeordnet. Wenn Sie für diesen Ordner ein anderes Icon benutzen wollen als das Standard-Ordner Icon (-1), können Sie die Index des gewünschten Icons hier eingeben. Die entsprechenden Zahlen finden Sie im Artikel Icons.

Ein Expression-Ordner ist auf einen Blick daran zu erkennen, dass er im Standard-Icon ein Zahnrädchen abgebildet hat.

Eigene Liste für jeden Typ:Wenn der Ordner Einträge von verschiedenen Typen beinhaltet, kann für jeden Typ eine eigene Liste angezeigt werden. Siehe dazu den Artikel Ordnerinhalte mit separater Liste pro Typ.

Abfragen definieren

Ab Vertec 6.2 können bei Expression-Ordnern Abfragen definiert und die eingegebenen Parameter in der Ordner-Expression sowie in den Spalten-Expressions verwendet werden.

Es müssen keine Abfragen definiert werden, damit der Expression-Ordner funktioniert, es reicht auch, nur eine Expression anzugeben. Möchte man jedoch gewisse Suchparameter übergeben können, welche vom User abgefragt werden, können dafür Abfragen definiert werden.

Über den Button Abfragen definieren… öffnet sich der Dialog für die Erstellung der Abfragen.

Die Feld-Bezeichnungen werden wie bei den SQL-Ordnern als Variablennamen übernommen, mit vorangestelltem var. Im obigen Beispiel gibt es also aus diesem Feld eine Variable varteamleiterkrzel, welche in der OCL Expression sowie in den Spaltenexpressions der Listeneinstellungen verwendet werden kann:

projektbearbeiter->select(teamleiter.kuerzel=varteamleiterkrzel)

Der OCL Expression Editor kennt diese Variablennamen zeigt die Expression als gültig an.

Es können wie beim SQL-Ordner auch mehrere Suchfelder definiert werden. Diese werden mit dem + im Abfrage-Dialog erstellt.

Einzelne Abfragefelder können mit dem Button wieder entfernt werden.

Sobald man im Abfrage-Dialog auf OK klickt, wird die Abfrage angelegt und auf der Oberfläche das entsprechende Feld angezeigt:

Die Ordner-Suche kann auch unmittelbar ausgeführt werden, indem im Abfrage-Dialog die Sofort Suche aktiviert wird. Damit wird die Suche beim Anzeigen des Ordners mit den Standard-Suchparametern (z.B. der angemeldete Benutzer) direkt ausgeführt, ohne dass extra noch auf Suchen geklickt werden muss.

Weitere Suchen können wie gewohnt durch Ändern der Suchparameter und mittels Suchbutton erfolgen.

Die gesamte Abfrage wird durch Klick auf den Button Alle entfernen im Abfrage-Dialog gelöscht, und der Expression-Ordner verhält sich wieder wie ein "gewöhnlicher" Expression-Ordner.

Bei Expression-Ordnern mit Abfrage wird auf dem Eigenschaften-Dialog zusätzlich ein Klassenname angezeigt:

Bei Expression-Ordnern ohne Abfrage ist dieses Feld ausgeblendet, da es nicht benötigt wird, weil sich die Klasse aus der Expression von selbst ergibt.

Der Inhalt von Expression-Ordnern werden bei der Anzeige berechnet. Die angezeigten Daten entsprechen also immer dem augenblicklichen Stand. Bei grossen Datenmengen kann die Anzeige eines solchen Expession-Ordners einige Zeit dauern.