Makro / Freitext (Auswertung)

Mit dem Auswertungstyp Makro/Freitext können Sie reinen Text oder formatierten Inhalt im Portal ausgeben. Die formatierten Inhalte eines Makros können Sie über HTML-Elemente erzeugen.

Konfiguration:

Eigenschaft

Beschreibung

Quelle

Hier wird angezeigt, welche Abfragen oder Attribute als Quelle konfiguriert sind. Sie haben auch hier die Möglichkeit über die Textbox oder die Schaltflächen rechts neben der Textbox Abfragen und Attribute zu referenzieren oder erstellen, die die Kontext-Objekte für das Makro bestimmen.

Makro-Typ

Wählen Sie hier den Makro-Typ des Makros aus:

  • Velocity Makro: Das Makro in der Eigenschaft Makro wird ausgeführt.

  • Java Klasse: die Java-Klasse in der Eigenschaft Makro-Java-Klasse wird ausgeführt.

Makro

Tragen Sie hier das Makro ein, das ausgeführt, oder den Text, der angezeigt werden soll. Das Makro oder der Text wird nur ausgeführt oder angezeigt, wenn Sie den Makro-Typ Velocity Makro eingestellt haben.

Die Ausgabe des Makros erfolgt in HTML-Format:

  • Ein Velocity-Makro muss HTML-Format erzeugen.

  • Freitext wird in HTML-Format umgewandelt und ausgegeben.

Siehe auch: Mehr zu Velocity Makros unter Velocity-Makros.

Makro-Java-Klasse

Hinterlegen Sie hier die Java-Klasse die ausgeführt werden soll. Die Java-Klasse muss den voll qualifizierten Namen einer Java-Klasse haben, die das Interface de.aeneis.report.AeneisMacro implementiert und einen öffentlichen Standardkonstruktor besitzt. Die Java-Klasse wird nur ausgeführt, wenn Sie den Makro-Typ Java Klasse gewählt haben.

Parameter

Erstellen und bearbeiten Sie hier Parameter für das Makro. Im Parameter können Sie eine Zeichenkette, einen boolschen Wert, ein Datum, eine Zahl, ein Objekt, eine Kategorie, ein Attribut oder einen Text als Parameter definieren. Parameter sind insbesondere zur Verwendung als Variablen sinnvoll.

Sichtbar

Unter diesem Attribut können Kategorien referenziert werden. Hierdurch kann die Sichtbarkeit / Ausführung eingeschränkt werden.

In den meisten Anwendungsszenarien werden Kategorien und zugriffskontrollbedingte Sichtbarkeiten benötigt.

Die Logik der Überprüfung ist wie folgt:

  1. Ist mindestens eine Kategorie angegeben, muss das Objekt eine Instanz von dieser Kategorie sein. Ansonsten werden keine Kategorieprüfungen durchgeführt

  2. Ist mindestens eine Benutzergruppe angegeben, muss der/die aktuelle Benutzer/-in ein Mitglied von mindestens einer dieser Benutzergruppen sein

  3. Ist mindestens eine Zugriffskontrollliste angegeben, muss der/die Benutzer/-in in der Zugriffskontrollliste die Berechtigung Anzeigen besitzen

  4. Ist mindestens eine Bedingungskomponente angegeben, muss mindestens eine Bedingung zutreffen.

Sollte diese Logik nicht ausreichen, kann über die Bedingungskomponenten eine differenzierte Logik konfiguriert werden.

Objekte getrennt berichten Wenn über die Eigenschaft Quelle mehrere Kontextobjekte für das Makro zurückgegeben werden, wird mit dieser Eigenschaft das Makro für jedes einzelne Objekt ausgeführt. Wenn die Eigenschaft deaktiviert ist, wird das Makro für alle Objekte zusammen ausgeführt.

Hinweis: Der Zugriff auf Quell- und Ergebnislisten und die Parameter über eine Java-Klasse ist in den Interfaces AeneisMacro und AeneisMacroContext dokumentiert. Diese sind im Aeneis-Installationsverzeichnis unter ..\doc\api\de\aeneis\report als html-Dateien abgelegt.

Für das Velocity-Makro stehen folgende zusätzliche Variablen zur Verfügung:

Variable

Beschreibung

component

Die Makro-Komponente.

sources

Die eingehenden Kontextobjekte, die vor der Ausführung des Makros bestimmt werden.

parameters

Alle Parameter-Objekte der Makro-Komponente.

context

Der Makro-Kontext selbst. Es implementiert das Interface de.aeneis.report.AeneisMacroContext und bietet Methoden für den Zugriff auf die Parameter-Werte.

Direkter Zugriff auf die Parameterattribute:

$context.getString(paraname,defaultValue)

Gibt den Wert des Parameterattributs Zeichenkette für den Parameter mit dem Namen paraname zurück.

Wenn kein Parameter mit diesem Namen gefunden wird, wird der übergebene String-Standardwert zurückgegeben.

$context.getBoolean(paraname,defaultValue)

Gibt den Wert des Parameterattributs Boolesch für den Parameter mit dem Namen paraname zurück.

Wenn kein Parameter mit diesem Namen gefunden wird, wird der übergebene Boolean-Standardwert zurückgegeben.

$context.getDate(paraname,defaultValue)

Gibt den Wert des Parameterattributs Datum für den Parameter mit dem Namen paraname zurück.

Wenn kein Parameter mit diesem Namen gefunden wird, wird der übergebene Date-Standardwert zurückgegeben.

$context.getNumber(paraname,defaultValue)

Gibt den Wert des Parameterattributs Zahl für den Parameter mit dem Namen paraname zurück.

Wenn kein Parameter mit diesem Namen gefunden wird, wird der übergebene Double-Standardwert zurückgegeben.

$context.getText(paraname,defaultValue)

Gibt den Wert des Parameterattributs Text für den Parameter mit dem Namen paraname zurück.

Wenn kein Parameter mit diesem Namen gefunden wird, wird der übergebene String-Standardwert zurückgegeben.

$context.getObjects(paraname)

Gibt ein Set von AeneisObjects der Objekte zurück, die unter dem Parameterattribut Objekte konfiguriert sind.

Wenn kein Parameter mit diesem Namen konfiguriert ist, wird ein leeres Set zurückgegeben.

$context.getCategories(paraname)

Gibt ein Set von AeneisCategorys der Kategorien, die unter dem Parameterattribut Kategorien konfiguriert sind zurück.

Wenn kein Parameter mit diesem Namen konfiguriert ist, wird ein leeres Set zurückgegeben.

$context.getAttributes(paraname)

Gibt ein Set von AeneisAttributes der Objekte, die unter dem Parameterattribute Objekte konfiguriert sind zurück.

Wenn kein Parameter mit diesem Namen konfiguriert ist, wird ein leeres Set zurückgegeben.