Methoden in den Expertenregeln
Komponente
setIdentifier(identifier: String)-
Ändert die "Bezeichnung technisch" einer Komponente zur Laufzeit. Kann zum Beispiel genutzt werden um die XML-Tags in unserem proprietären XML anzupassen
Beispiel:
setIdentifier(identifier: String)$component.setIdentifier("neueBezeichnungTechnisch") getIdentifier(): String-
Liefert die "Bezeichnung technisch" einer Komponente. Nutzbar um eine Komponente in einer Liste von Komponenten zu identifizieren
Beispiel:
getIdentifier(): StringList<Component> components = $panel.getComponents() for (Component c : components){ if("gesuchterIdentifier".equals(c.getIdentifier())){ //Do something } } setPdfRenderOption(pdfRenderOption: PdfRenderOption)-
Ändert "Anzeige im PDF" zur Laufzeit
Mögliche Werte: RENDERED, NOT_RENDERED, RENDERED_IF_FILLED
Es wird ein Import benötigt:
import de.formsolutions.metaform.enums.PdfRenderOptionBeispiel:
setPdfRenderOption(pdfRenderOption: PdfRenderOption)$component.setPdfRenderOption(PdfRenderOption.RENDERED); getPdfRenderOption(): PdfRenderOption-
Liefert die PdfRenderOption der Componente
Es wird ein Import benötigt:
import de.formsolutions.metaform.enums.PdfRenderOptionBeispiel:
getPdfRenderOption(): PdfRenderOptionboolean fieldRenderedInPdf = PdfRenderOption.RENDERED.equals($component.getPdfRenderOption()); setAssistantRenderOption(assistantRenderOption: AssistantRenderOption)-
Ändert "Anzeige im Assistent" zur Laufzeit
Mögliche Werte: RENDERED, NOT_RENDERED
Es wird ein Import benötigt:
import de.formsolutions.metaform.enums.AssistantRenderOptionBeispiel:
setAssistantRenderOption(assistantRenderOption: AssistantRenderOption)$component.setAssistantRenderOption(AssistantRenderOption.RENDERED); getAssistantRenderOption(): AssistantRenderOption-
Liefert die AssistantRenderOption
Es wird ein Import benötigt:
import de.formsolutions.metaform.enums.AssistantRenderOptionBeispiel:
getAssistantRenderOption(): AssistantRenderOptionboolean fieldIsHidden = AssistantRenderOption.NOT_RENDERED.equals($component.getAssistantRenderOption()); setTemplateRenderOption(templateRenderOption: TemplateRenderOption)-
Ändert "Anzeige in der Druckvorlage"
Es wird ein Import benötigt:
import de.formsolutions.metaform.enums.TemplateRenderOption getTemplateRenderOption(): TemplateRenderOption-
Liefert den Status von "Anzeige in der Druckvorlage"
Es wird ein Import benötigt:
import de.formsolutions.metaform.enums.TemplateRenderOption setWidth(width: FieldWidth)-
Ändert die Breite eines Feldes zur Laufzeit. Mögliche Werte:
FULL, FOUR_FIFTH, THREE_QUARTERS, TWO_THIRDS, THREE_FIFTH, HALF, TWO_FIFTH, ONE_THIRD, ONE_QUARTER, ONE_FIFTHBenötigt Import:
import de.formsolutions.util.FieldWidthBeispiel:
setWidth(width: FieldWidth)$component.setWidth(FieldWidth.TWO_THIRDS); getWidth(): FieldWidth-
Liefert die Breite eines Feldes zur Laufzeit.
Benötigt Import:
import de.formsolutions.util.FieldWidth setNeeded(needed: Boolean)-
Setzt Sichtbarkeit zur Laufzeit
Beispiel:
setNeeded(needed: Boolean)//Einblenden einer Komponente $component.setNeeded(true); //Ausblenden $component.setNeeded(false); isNeeded(): Boolean-
Liefert Sichtbarkeit zur Laufzeit
Beispiel:
isNeeded(): Booleanboolean componentIsVisible = $component.isNeeded(); //true => sichtbar, false => nicht sichtbar setNeededValueHasChanged(neededValueHasChanged: Boolean)-
Updated bei Bedarf den Status der Komponente, damit diese dynamisch auf Änderungen auf dem gleichen Panel reagieren kann.
Beispiel:
setNeededValueHasChanged(neededValueHasChanged: Boolean)//Übertrag des Wertes von $component2 auf $component mit dynamischer Anzeige boolean oldValue = $component.getStringValue(); $component.setStringValue($componen2.getStringValue()); boolean newValue = $component.getStringValue(); if(oldValue != newValue){ $component.setNeededValueHasChanged(true); } setStringValue(value: String)-
Der Klassiker: Setzt einen Wert in eine Komponente in der Bürgersicht
Beispiel:
setStringValue(value: String)$component.setStringValue("HelloWorld!"); getStringValue(): String-
Extrahiert einen Wert aus der Bürgersicht
Beispiel:
getStringValue(): StringString Buergereingabe = $component.getStringValue();
Kontrollkästchen
- setChecked(checked: Boolean)
-
Mittels "true" wird der Haken im Kontrollkästchen gesetzt, bei "false" entfernt
Beispiel:
setChecked(checked: Boolean)((Checkbox) $component).setChecked(true); ((Checkbox) $component).setChecked(false); isChecked(): Boolean-
Prüft, ob das Kontrollkästchen angehakt wurde
Beispiel 1:
isChecked(): Booleanboolean value = ((Checkbox) $component).isChecked();Beispiel 2:
isChecked(): Booleanif( ((Checkbox) $component).isChecked() ){ //Do something }
Objektgruppe
isRequired(required: Boolean)-
Definiert ob die Objektgruppe eine Pflichtgruppe sein soll
Beispiel:
setRequired(required: Boolean)((Compositecomponent) $component).setRequired(true); getRequired(): Boolean-
Prüft ob die Objektgruppe verpflichtend ist
Beispiel:
getRequired(): Booleanboolean required = ((Compositecomponent) $VARIABLENNAME).getRequired(); setTitleI18n(labelI18n: I18n)-
Entfernt - ersetzt durch setPublicLabel(publicLabel: String). Aufrufe müssen aus Bestandsregeln entfernt werden, das diese sonst nicht ausgeführt werden können. getTitleI18n()-
Entfernt - ersetzt durch getPublicLabel(). Aufrufe müssen aus Bestandsregeln entfernt werden, das diese sonst nicht ausgeführt werden können. setLegendI18n(labelI18n: I18n)-
Definiert den Text der öffentlichen Bezeichnung
Veraltet – ersetzt durch setPublicLabel(publicLabel: String). Die Methode existiert nur noch als Kompatibilitäts-Schicht, damit bereits gespeicherte Regeln weiterhin kompilieren. Intern wird ausschließlich der deutsche Wert ("de") des übergebenenI18nübernommen, alle anderen Sprachen werden verworfen. Bitte in neuen Regeln nicht mehr verwenden.Beispiel:
setLegendI18n(labelI18n: I18n)I18n i18n = new I18n(); i18n.addI18nItem("de", "Beispielwert"); ((Compositecomponent) $VARIABLENNAME).setLegendI18n(i18n); getLegendI18n(): I18n-
gibt den Wert der öffentlichen Bezeichnung zurück
Veraltet – ersetzt durch getPublicLabel(): String. Die Methode existiert nur noch als Kompatibilitäts-Schicht und liefert einI18n, das den deutschen Wert der öffentlichen Bezeichnung enthält (nienull). Bitte in neuen Regeln nicht mehr verwenden.Beispiel:
getLegendI18n(): I18nI18n i18n = ((Compositecomponent) $VARIABLENNAME).getLegendI18n(); String label = i18n.getI18nItem("de"); setPublicLabel(publicLabel: String)-
Definiert den Text der öffentlichen Bezeichnung. Nachfolger von
setLegendI18n(labelI18n: I18n)Neu in Version 4.114.0 Beispiel:
setPublicLabel(publicLabel: String)((Compositecomponent) $VARIABLENNAME).setPublicLabel("Beispielwert"); getPublicLabel(): String-
gibt den Wert der öffentlichen Bezeichnung zurück. Nachfolger von
getLegendI18n(): I18nNeu in Version 4.114.0 Beispiel:
getPublicLabel(): StringString label = ((Compositecomponent) $VARIABLENNAME).getPublicLabel(); setComponents(components: List<Component>)-
Setzt eine Liste von Komponenten in eine Objektgruppe
Beispiel:
setComponents(components: List<Component>)((Compositecomponent) $objektgruppe).setComponents(List<Component> components); getComponents(): List<Component>-
Liefert alle Komponenten, die in der Objektgruppe sind
Beispiel:
getComponents(): List<Component>+List<Component>+ components = ((Compositecomponent) $objektgruppe).getComponents();
Autovervollständigung
setAutoCompletionType(autoCompletionType: AutoCompletionType)getAutoCompletionType(): AutoCompletionTypesetAutoCompletionValidationType(autoCompletionValidationType: AutoCompletionValidationType)getAutoCompletionValidationType(): AutoCompletionValidationTypesetAutoCompleteServiceName(autoCompleteServiceName: String)getAutoCompleteServiceName(): StringsetDataListId(dataListId: String)getDataListId(): StringgetMapping(): Map<String, AutoCompletionField>
Verstecktes Feld
setValue(value: String)-
Setzt den Wert des versteckten Feldes
getValue(): String-
Ruft den Wert des versteckten Feldes ab
Datei-Hochladen
setMaxSize(maxSize: double)-
Setzt maximale Dateigröße in MB
getMaxSize(): double-
Ruft maximale Dateigröße in MB ab
setFilename(filename: String)-
Ändert den Dateinamen der hochgeladenen Datei
getFilename(): String-
Liefert den Dateinamen der hochgeladenen Datei
setContentType(contentType: String)getContentType(): String
I18n
Zur Verwendung in Komponenten
Die komplette Klasse I18n ist veraltet. Alle mehrsprachigen Beschriftungs-Felder der Komponenten wurden durch einfache String-Felder mit dem deutschen Wert ersetzt (z. B. labelI18n → publicLabel, hintI18n → hint, textI18n → text, placeholderI18n → placeholder, i18n → title bzw. publicLabel). Die im Folgenden beschriebenen Methoden sowie alle get...I18n()/set...I18n(I18n)-Methoden der Komponenten existieren nur noch als Kompatibilitäts-Schicht für bereits gespeicherte Regeln. In neuen Regeln bitte durchgängig die String-Methoden verwenden.
|
setKey(key: String)getKey(): StringsetI18nItems(i18nItems: Map<String, String>)getI18nItems(): Map<String, String>addI18nItem(language: String, value: String)getI18nItem(language: String): StringgetI18nItem(locale: Locale): String
Input
setHintI18n(hintI18n: I18n)-
Setzt den Hinweistext des Feldes
Veraltet – ersetzt durch setHint(hint: String). Nur noch Kompatibilitäts-Schicht; es wird ausschließlich der deutsche Wert ("de") übernommen. getHintI18n(): I18n-
Liefert den Hinweistext als I18n
Veraltet – ersetzt durch getHint(): String. Nur noch Kompatibilitäts-Schicht; liefert einI18nmit dem deutschen Hinweistext. setHint(hint: String)-
Setzt den Hinweistext des Feldes. Nachfolger von
setHintI18n(hintI18n: I18n)Neu in Version 4.114.0 Beispiel:
setHint(hint: String)((Input) $component).setHint("Bitte tragen Sie hier Ihren Vornamen ein."); getHint(): String-
Liefert den Hinweistext des Feldes. Nachfolger von
getHintI18n(): I18nNeu in Version 4.114.0 Beispiel:
getHint(): StringString hinweis = ((Input) $component).getHint(); setLabelI18n(labelI18n: I18n)-
Setzt die Beschriftung des Feldes
Veraltet – ersetzt durch setPublicLabel(publicLabel: String). Nur noch Kompatibilitäts-Schicht; es wird ausschließlich der deutsche Wert ("de") übernommen. getLabelI18n(): I18n-
Liefert die Beschriftung des Feldes
Veraltet – ersetzt durch getPublicLabel(): String. Nur noch Kompatibilitäts-Schicht; liefert einI18nmit der deutschen Beschriftung. setPublicLabel(publicLabel: String)-
Setzt die Beschriftung ("öffentliche Bezeichnung") des Feldes. Nachfolger von
setLabelI18n(labelI18n: I18n)Neu in Version 4.114.0 Beispiel:
setPublicLabel(publicLabel: String)((Input) $component).setPublicLabel("Vorname"); getPublicLabel(): String-
Liefert die Beschriftung ("öffentliche Bezeichnung") des Feldes. Nachfolger von
getLabelI18n(): I18nNeu in Version 4.114.0 Beispiel:
getPublicLabel(): StringString beschriftung = ((Input) $component).getPublicLabel(); setRequired(required: Boolean)-
Setzt, ob die Komponente ein Pflichtfeld sein soll
isRequired(): Boolean-
Ruft Pflichtfeld-Status der Komponente auf
setReadOnly(readOnly: Boolean)-
Setzt, ob die Komponente schreibgeschützt sein soll
isReadOnly(): Boolean-
Prüft, ob eine Komponente schreibgeschützt ist
Output
setLabel(label: String)getLabel(): StringsetTextI18n(textI18n: I18n)-
Setzt die Beschriftung des Feldes
Veraltet – ersetzt durch setText(text: String). Nur noch Kompatibilitäts-Schicht; es wird ausschließlich der deutsche Wert ("de") übernommen. getTextI18n(): I18n-
Liefert die Beschriftung des Feldes
Veraltet – ersetzt durch getText(): String. Nur noch Kompatibilitäts-Schicht; liefert einI18nmit dem deutschen Text. setText(text: String)-
Setzt den Text des Ausgabefeldes. Nachfolger von
setTextI18n(textI18n: I18n)Neu in Version 4.114.0 Beispiel:
setText(text: String)((Output) $component).setText("Hallo Welt!"); getText(): String-
Liefert den Text des Ausgabefeldes. Nachfolger von
getTextI18n(): I18nNeu in Version 4.114.0 Beispiel:
getText(): StringString text = ((Output) $component).getText();
Field
setPlaceholderI18n(placeholderI18n: I18n)-
Veraltet – ersetzt durch setPlaceholder(placeholder: String). Nur noch Kompatibilitäts-Schicht; es wird ausschließlich der deutsche Wert ("de") übernommen. getPlaceholderI18n(): I18n-
Veraltet – ersetzt durch getPlaceholder(): String. Nur noch Kompatibilitäts-Schicht; liefert einI18nmit dem deutschen Platzhaltertext. setPlaceholder(placeholder: String)-
Setzt den Platzhaltertext des Feldes. Nachfolger von
setPlaceholderI18n(placeholderI18n: I18n)Neu in Version 4.114.0 Beispiel:
setPlaceholder(placeholder: String)((Field) $component).setPlaceholder("z. B. Musterstraße 1"); getPlaceholder(): String-
Liefert den Platzhaltertext des Feldes. Nachfolger von
getPlaceholderI18n(): I18nNeu in Version 4.114.0 Beispiel:
getPlaceholder(): StringString platzhalter = ((Field) $component).getPlaceholder(); setDefaultValue(defaultValue: String)-
Setzt den Standardwert
getDefaultValue(): String-
Liefert den Standardwert
Datumskomponente
setType(type: Type)getType(): TypesetValue(value: Date)getValue(): Date
Für die Beschriftungen der einzelnen Datums-/Zeit-Eingabefelder gibt es keine Kompatibilitätsschicht: Die ...I18n-Methoden wurden vollständig entfernt und durch ...Placeholder-Methoden mit String ersetzt. Regeln, die noch setMinuteI18n(…) und Co. verwenden, kompilieren nicht mehr und müssen angepasst werden.
|
setMinuteI18n(minuteI18n: I18n)-
Entfernt – ersetzt durch setMinutePlaceholder(minutePlaceholder: String). getMinuteI18n(): I18n-
Entfernt – ersetzt durch getMinutePlaceholder(): String. setMinutePlaceholder(minutePlaceholder: String)-
Setzt die Beschriftung des Minuten-Feldes. Nachfolger von
setMinuteI18n(minuteI18n: I18n)Neu in Version 4.114.0 Beispiel:
setMinutePlaceholder(minutePlaceholder: String)((Datetimefield) $component).setMinutePlaceholder("Minute"); getMinutePlaceholder(): String-
Liefert die Beschriftung des Minuten-Feldes. Nachfolger von
getMinuteI18n(): I18nNeu in Version 4.114.0 setHourI18n(hourI18n: I18n)-
Entfernt – ersetzt durch setHourPlaceholder(hourPlaceholder: String). getHourI18n(): I18n-
Entfernt – ersetzt durch getHourPlaceholder(): String. setHourPlaceholder(hourPlaceholder: String)-
Setzt die Beschriftung des Stunden-Feldes. Nachfolger von
setHourI18n(hourI18n: I18n)Neu in Version 4.114.0 getHourPlaceholder(): String-
Liefert die Beschriftung des Stunden-Feldes. Nachfolger von
getHourI18n(): I18nNeu in Version 4.114.0 setDayI18n(dayI18n: I18n)-
Entfernt – ersetzt durch setDayPlaceholder(dayPlaceholder: String). getDayI18n(): I18n-
Entfernt – ersetzt durch getDayPlaceholder(): String. setDayPlaceholder(dayPlaceholder: String)-
Setzt die Beschriftung des Tages-Feldes. Nachfolger von
setDayI18n(dayI18n: I18n)Neu in Version 4.114.0 getDayPlaceholder(): String-
Liefert die Beschriftung des Tages-Feldes. Nachfolger von
getDayI18n(): I18nNeu in Version 4.114.0 setMonthI18n(monthI18n: I18n)-
Entfernt – ersetzt durch setMonthPlaceholder(monthPlaceholder: String). getMonthI18n(): I18n-
Entfernt – ersetzt durch getMonthPlaceholder(): String. setMonthPlaceholder(monthPlaceholder: String)-
Setzt die Beschriftung des Monats-Feldes. Nachfolger von
setMonthI18n(monthI18n: I18n)Neu in Version 4.114.0 getMonthPlaceholder(): String-
Liefert die Beschriftung des Monats-Feldes. Nachfolger von
getMonthI18n(): I18nNeu in Version 4.114.0 setYearI18n(yearI18n: I18n)-
Entfernt – ersetzt durch setYearPlaceholder(yearPlaceholder: String). getYearI18n(): I18n-
Entfernt – ersetzt durch getYearPlaceholder(): String. setYearPlaceholder(yearPlaceholder: String)-
Setzt die Beschriftung des Jahres-Feldes. Nachfolger von
setYearI18n(yearI18n: I18n)Neu in Version 4.114.0 getYearPlaceholder(): String-
Liefert die Beschriftung des Jahres-Feldes. Nachfolger von
getYearI18n(): I18nNeu in Version 4.114.0 setDateI18n(dateI18n: I18n)-
Entfernt – ersetzt durch setDatePlaceholder(datePlaceholder: String). getDateI18n(): I18n-
Entfernt – ersetzt durch getDatePlaceholder(): String. setDatePlaceholder(datePlaceholder: String)-
Setzt die Beschriftung des Datums-Feldes. Nachfolger von
setDateI18n(dateI18n: I18n)Neu in Version 4.114.0 getDatePlaceholder(): String-
Liefert die Beschriftung des Datums-Feldes. Nachfolger von
getDateI18n(): I18nNeu in Version 4.114.0
Numerisches Feld / Dezimalfeld
setMinValue(minValue: BigDecimal)-
Setzt den minimalen Wert, der in der Bürgersicht eingegeben werden kann
getMinValue(): BigDecimal-
Liefert den minimal eingebbaren Wert
setMaxValue(maxValue: BigDecimal)-
Setzt den maximalen Wert, der in der Bürgersicht eingegeben werden kann
getMaxValue(): BigDecimal-
Liefert den maximal eingebbaren Wert
setPrecision(precision: Short)-
Setzt die maximale Anzahl der eingebbaren Nachkommastellen
getPrecision(): Short-
Liefert die maximale Anzahl an Nachkommastellen
setDecimal(decimal: Boolean)-
Setzt, ob eine Dezimalzahl eingegeben werden kann
isDecimal(): Boolean-
Liefert, ob eine Dezimalzahl eingegeben werden kann
setValue(value: BigDecimal)getValue(): BigDecimalsetType(type: NumericFieldSpecialType)getType(): NumericFieldSpecialType
Komponenten mit Kardinalität
Nur bestimme Komponenten besitzen die Optionen für die Kardinalität (Multikomponenten).
Diese sind Compositecomponent, Selectlist, Textfield, Numericfield, Datetimefield und Fileupload
Um die folgenden Methoden zu nutzen, muss also immer auf einen dieser Typen gecastet werden.
Alle hier beschrieben Getter haben auch einen entsprechenden Setter.
getMultiIterationsSettings(): MultiIterationSettings-
Beherbergt alle neuen Konfigurationen zur Kardinalität
Beispiel:
getMultiIterationsSettings(): MultiIterationSettings((Compositecomponent) $objektgruppe).getMultiIterationsSettings() getIteratedComponents(): List<Component>-
Liefert eine Liste aller "Einzel-Komponenten" der Kardinalität
Beispiel:
getIteratedComponents(): List<Component>List multiComponents = ((Compositecomponent) $objektgruppe).getMultiIterationsSettings().getIteratedComponents(); getMinimumIterations(): int-
Liefert die minimal auszufüllende Zahl von Wiederholungen
Beispiel:
getMinimumIterations(): intint minAnzahl = ((Compositecomponent) $comp).getMultiIterationsSettings().getMinimumIterations(); getMaximumIterations(): int-
Liefert die maximal auszufüllende Zahl von Wiederholungen
Beispiel:
getMaximumIterations(): intint maxAnzahl = ((Compositecomponent) $comp).getMultiIterationsSettings().getMaximumIterations();
Die klassische "Wenn Haken angehakt, dann zeige Feld"-Regel sieht für eine Objektgruppe mit Kardinalität also folgendermaßen aus:
Beispiel
package de.formsolutions.metaform
import de.formsolutions.metaform.model.*
import java.util.List
rule "set needed textfeld"
when
Component($multikomponente:searchInputComponent("Objektgruppe"), $multikomponente != null)
Component($c1:searchInputComponent("Objektgruppe.Textfeld (einzeilig)"), $c1 != null)
Component($c2:searchInputComponent("Objektgruppe.Kontrollkästchen"), $c2 != null)
then
//Initialzustand
boolean oldNeededC1 = $c1.isNeeded();
boolean bedingungC1 = "ja".equals($c2.getStringValue());
$c1.setNeeded(bedingungC1);
if(oldNeededC1 != bedingungC1){
$c1.setNeededValueHasChanged(true);
}
//Iteriere durch Liste
List<Component> singleComponents = ((Compositecomponent) $multikomponente).getMultiIterationsSettings().getIteratedComponents();
if(singleComponents != null){
for(Component singleComponent : singleComponents){
boolean bedingung = false;
for(Component component : ((Compositecomponent) singleComponent).getComponents()){
if("Kontrollkästchen".equals(component.getIdentifier())){
bedingung = "ja".equals(component.getStringValue());
}
}
for(Component component : ((Compositecomponent) singleComponent).getComponents()){
if("Textfeld (einzeilig)".equals(component.getIdentifier())){
boolean oldNeeded = component.isNeeded();
component.setNeeded(bedingung);
if(oldNeeded != bedingung){
component.setNeededValueHasChanged(true);
}
}
}
}
}
end
Panel
setIdentifier(identifier: String)-
Ändert die technische Bezeichnung des Panels
getIdentifier(): String-
Liefert die technische Bezeichnung des Panels
setI18n(i18n: I18n)-
Veraltet – ersetzt durch setTitle(title: String). Nur noch Kompatibilitäts-Schicht; es wird ausschließlich der deutsche Wert ("de") übernommen. getI18n(): I18n-
Veraltet – ersetzt durch getTitle(): String. Nur noch Kompatibilitäts-Schicht; liefert einI18nmit dem deutschen Titel des Panels. setTitle(title: String)-
Setzt den Titel (die Überschrift) des Panels. Nachfolger von
setI18n(i18n: I18n)Neu in Version 4.114.0 Beispiel:
setTitle(title: String)$panel.setTitle("Persönliche Angaben"); getTitle(): String-
Liefert den Titel (die Überschrift) des Panels. Nachfolger von
getI18n(): I18nNeu in Version 4.114.0 Beispiel:
getTitle(): StringString titel = $panel.getTitle(); setComponents(components: List<Component>-
Setzt eine List<Component> als Komponenten zur Laufzeit im Panel angezeigt werden
getComponents(): List<Component>-
Liefert alle Komponenten des Panels als List<Component>
Beispiel:
getComponents(): List<Component>List<Component> components = $panel.getComponents(); for( Component c : components){ //Do Something } setNeeded(needed: Boolean)-
Setzt, ob das Panel angezeigt werden soll oder nicht
isNeeded(): Boolean-
Prüft, ob das Panel angezeigt wird
setDisplayed(displayed: Boolean)-
Setzt, ob das Panel schon angezeigt wurde oder nicht
isDisplayed(): Boolean-
Prüft, ob das Panel schon angezeigt wurde
setComplete(complete: Boolean)-
Setzt, ob das Panel schon vollständig ausgefüllt wurde
isComplete(): Boolean-
Prüft, ob das Panel schon vollständig ausgefüllt wurde
setResettable(resettable: Boolean)-
Setzt, ob das Panel zurücksetzbar ist
isResettable(): Boolean-
Prüft, ob das Panel zurücksetzbar ist
addComponent(component: Component)-
Fügt dem Panel eine Komponente hinzu
resetComponents(): void-
Setzt alle Komponenten auf dem Panel zurück
isForcedInPdf(): BooleangetInputComponent(component : String)-
Liefert die Komponente mit dem mitgegebenen Technischen Bezeichner. Ist die Komponente in einer Objektgruppe, muss der Technische Bezeichner der Objektgruppe(n) vor dem Technischen Bezeichner der Komponente mit einem Punkt abgetrennt werden
Beispiel:
getInputComponent(component : String)Component comp = $panel.getInputComponent("MeineObjektgruppe.MeinFeld"); hasValues(): BooleanhasVisibleComponents(): Boolean
Ein Panel kann dabei genau wie Komponenten im when-Teil der Regel als Variable definiert werden.
Folgendes Beispiel iteriert durch alle Komponenten auf der niedrigsten Ebene des Panels und setzt den Wert "Hallo Welt", wenn es sich um eine Textfeld handelt.
Beispiel
package de.formsolutions.metaform
import de.formsolutions.metaform.model.*
import java.util.List
rule "setze Hallo Welt in Textfelder"
when
$panel:Panel(identifier == "TechnischerBezeichnerPanel")
then
List<Component> components = $panel.getComponents();
for(Component c : components){
if(c instanceof Textfield){
c.setStringValue("Hallo Welt!");
}
}
end
|
Soll durch alle Komponenten des Panels iteriert werden, muss man eine rekursive Funktion schreiben. Elemente, die zum Beispiel in einer Objektgruppe oder in einem Baustein (Reference) liegen, werden so nicht gefunden. |
Dropdown / Optionsfelder
setOrderAlphabetically(orderAlphabetically: Boolean)-
Setzt, ob die einzelnen Elemente des Dropdowns alphabetisch sortiert sein sollen
isOrderAlphabetically(): Boolean-
Prüft, ob die Elemente alphabetisch sortiert sind
setDisplayType(displayType: DisplayType)getDisplayType(): DisplayTypesetSelectlistitems(selectlistitems: List<Selectlistitem>)-
Setzt eine List<Selectlistitem> - Damit können die Einträge des Dropdowns manipuliert werden (zum Beispiel neue hinzugefügt werden)
getSelectlistitems(): List<Selectlistitem>-
Liefert eine Liste von Selectlistitems
setSelectlistcolumns(selectlistcolumns: List<Selectlistcolumn>)getSelectlistcolumn(): List<Selectlistcolumn>setSelectedItem(selectedItem: Selectlistitem)getSelectedItem(): SelectlistitemsetPreSelectedItemValue(preSelectedItemValue: String)getPreSelectedItemValue(): StringsetFetchValuesFromList(fetchValuesFromList: Boolean)getFetchValuesFromList(): BooleansetListId(listId: String)getListId(): StringsetLabelColumn(labelColumn: String)getLabelColumn(): StringsetOrderColumn(orderColumn: String)getOrderColumn(): StringsetValueColumn(valueColumn: String)getValueColumn(): StringsetItemAlignment(itemAlignment: ItemAlignment)getItemAlignment(): ItemAlignmentsetFilterExpression(filterExpression: String)getFilterExpression(): StringaddSelectListlitem(selectlistitem: Selectlistitem)injectSelectlistitems(itemList: List<Selectlistitem>)
Selectlistcolumn
setIdentifier(identifier: String)getIdentifier(): StringsetI18n(i18n: I18n)-
Entfernt (da das Feld "hinter" dieser Methode nirgends verwendet/ausgewertet wurde) – es gibt weder einen Kompatibilitäts-Schicht noch eine String-Nachfolgemethode. Eine Spalte besitzt nur noch ihre technische Bezeichnung (identifier). Regeln, die diese Methode verwenden, kompilieren nicht mehr und müssen angepasst werden. getI18n(): I18n-
Entfernt (da das Feld "hinter" dieser Methode nirgends verwendet/ausgewertet wurde) – es gibt weder einen Kompatibilitäts-Schicht noch eine String-Nachfolgemethode. Zur Identifikation einer Spalte ist stattdessengetIdentifier(): Stringzu verwenden.
Selectlistitem
setI18n(i18n: I18n)-
Veraltet – ersetzt durch setPublicLabel(publicLabel: String). Nur noch Kompatibilitäts-Schicht; es wird ausschließlich der deutsche Wert ("de") übernommen. getI18n(): I18n-
Veraltet – ersetzt durch getPublicLabel(): String. Nur noch Kompatibilitäts-Schicht; liefert einI18nmit der deutschen Beschriftung des Eintrags. setPublicLabel(publicLabel: String)-
Setzt die angezeigte Beschriftung des Eintrags. Nachfolger von
setI18n(i18n: I18n)Neu in Version 4.114.0 Beispiel:
setPublicLabel(publicLabel: String)Selectlistitem item = new Selectlistitem(); item.setPublicLabel("Beispieleintrag"); item.setValue("beispieleintrag"); ((Selectlist) $component).addSelectListlitem(item); getPublicLabel(): String-
Liefert die angezeigte Beschriftung des Eintrags. Nachfolger von
getI18n(): I18nNeu in Version 4.114.0 Beispiel:
getPublicLabel(): StringString beschriftung = ((Selectlist) $component).getSelectedItem().getPublicLabel(); setValue(value: String)getValue(): StringsetColumnValues(columnValues: Map<String, String>)getColumnValues(): Map<String, String>