Allgemeine Informationen zum Thema "Scripting" finden Sie hier.
2. Bibliotheken
Im JavaScript-Editor
haben Sie im Bereich Bibliotheken
Zugriff auf die Intrexx Bibliothek für mobile Endgeräte und die Intrexx-Standardbibliothek. Wenn Sie einen Eintrag
in einer der Bibliotheken markiert haben, finden Sie unten rechts die folgenden Schaltflächen:
Beschreibung anzeigen
Hier finden Sie eine Beschreibung der aktuell ausgewählten Funktion mit Beispiel-Skript.
Link öffnen
Verlinkt auf entsprechende Seiten mit weiterführenden Informationen.
3. Intrexx Bibliothek für mobile Endgeräte
3.1. Werte auslesen und schreiben
3.1.1. In Eingabefeld oder Textfeld schreiben
Schreibt einen übergebenen Wert in ein Eingabefeld oder ein Ansichtsfeld.
4.1.3. UserWorkflowEvent triggern mit Ergebnisverarbeitung
Triggert einen UserWorkflowEvent, um damit einen Prozess auszulösen und überprüft den Status des Prozessablaufs.
Parameter: Die GUID des UserWorkflowEvents.
4.1.4. Velocity-Datei aufrufen und XML erhalten (Portal)
Form einer Seite an den Server schicken, XML aus einer VM-Datei zurück an den Browser senden und in ein statisches Textfeld schreiben.
var el = getElement("GUID_STATIC_TEXTFIELD");
ajaxVTL("internal/system/vm/custom/.vm", {
dataType: 'xml',
data: {
fr_param1: Browser.getValue(getElement("GUID_FORM_FIELD"))
},
success: function (data) {
Browser.setValue(el, data);
},
ixWaitAnim: {
element: el,
type: "overlay"
}
});
4.1.5. Velocity-Datei aufrufen und Text erhalten (Applikation)
Formulardaten senden und in ein statisches Textfeld schreiben. In der VM-Datei (aus dem Applikationspaket)
kann der Formularwert aus diesem Beispiel über $Request.get("fr_param1") ausgelesen werden.
var el = getElement("GUID_STATIC_TEXTFIELD");
ajaxAppVTL(".vm", {
dataType: 'text',
data: {
fr_param1: Browser.getValue(getElement("GUID_FORM_FIELD"))
},
success: function (data) {
Browser.setValue(el, data);
},
ixWaitAnim: {
element: el,
type: "overlay"
}
}, el);
4.1.6. Velocity-Datei aufrufen und JSON erhalten (Applikation)
Erzeugen einer eigenen JSON-Response innerhalb einer VM-Datei (aus dem Applikationspaket) und an den Browser senden.
var el = getElement("GUID_FROM_ANY_CONTROL");
ajaxAppVTL(".vm", {
dataType: 'json',
success: function (data) {
alert(data.myJSONAnswer);
},
ixWaitAnim: {
element: el,
type: "overlay"
}
}, el);
4.1.7. Groovy-Datei aufrufen und JSON erhalten (Portal)
Ruft eine portalweit gültige Groovy-Datei mit Ajax auf und sendet die Antwort an den Browser zurück.
Berechnet die Dauer der beiden übergebenen Werte aus HTML-Kontrollen mit dem Typ "Datum & Zeit"
und liefert sie als formatierten String der Form "2 Tage 3 Minuten" zurück.
Zeigt eine einfache Statusmeldung in der unteren rechten Ecke des Browsers an.
Alternativ kann statt "notify" auch "warn" oder "error" verwendet werden.
Notifier.status.notify("Einstellungen wurden übernommen.");
4.3.2. Meldung an einem HTML-Element ausgerichtet anzeigen
Zeigt eine einfache Statusmeldung unterhalb eines HTML-Elements an (an der linken unteren Ecke ausgerichtet).
Alternativ kann statt "notify" auch "error" verwendet werden.
Färbt Zeilen und Zellen einer Ansichtstabelle in Abhängigkeit eines Zahlenwertes ein.
Die Farbe kann hexadezimal oder als Name angegeben werden. Eingefärbt werden kann "row" = ganze Zeile (tr),
"cell" = ganze Zelle (td), "span" = Text der Zelle (span).
Beispiel
Färbt alle Zeilen, die im Feld viewcontrolD54BA2DD einen Wert größer als 10 besitzen):
Färbt Zeilen und Zellen einer Ansichtstabelle in Abhängigkeit des aktuellen Datumswerts ein.
Mögliche Vergleichswerte sind aktuelles Datum ("date") oder aktuelles Datum und aktuelle Zeit ("datetime").
Die Farbe kann hexadezimal oder als Name angegeben werden. Eingefärbt werden kann "row" = ganze Zeile (tr),
"cell" = ganze Zelle (td), "span" = Text der Zelle (span).
Beispiel
Färbt alle Zeilen, die im Feld viewcontrolD54BA2DD ein Datum haben, das kleiner ist als das aktuelle Datum:
Färbt Zeilen und Zellen einer Ansichtstabelle in Abhängigkeit eines Stringvergleichs.
Die Farbe kann hexadezimal oder als Name angegeben werden.
Eingefärbt werden kann "row" = ganze Zeile (tr), "cell" = ganze Zelle (td), "span" = Text der Zelle (span)
Beispiel
Färbt alle Zeilen, die im Feld viewcontrolD54BA2DD den Status "erledigt" besitzen:
Liefert den Elternknoten (die Zeile) des übergebenen Knotens.
getRow(node)
4.5.5. Spalte abfragen
Liefert den Elternknoten (die Spalte) des übergebenen Knotens.
getCol(node)
4.6. Werte auslesen und schreiben
4.6.1. In Ansichtsfeld / Textfeld schreiben (mit ID)
Schreibt einen übergebenen Wert in ein Ansichtsfeld oder ein statisches Textfeld,
das mit Hilfe von dessen DOM-ID (Attribut "ID" des HTMl-Elements) referenziert wird.
Sendet einen Text an die Zwischenablage. Sollte diese Funktion aus Sicherheitsgründen deaktiviert sein,
wird statt dessen ein Tooltip mit dem zu kopierenden Text angezeigt.
Übergabeparameter:
param1:
Text oder eine Aktionskontrolle. Im Falle einer Kontrolle wird aus dieser der URL des Sprungziels in die Zwischenablage kopiert.
param2:
Optionaler Parameter als Liste mit folgenden möglichen Übergabeparametern:
strMsgTitle - Titel der Rückmeldung an den Benutzer
strMsgBody - Text der Rückmeldung an den Benutzer, wenn der Text erfolgreich in die Zwischenablage kopiert werden konnte
bFallback - true (Default) oder false. Falls der Text nicht in die Zwischenablage kopiert werden konnte,
so wird im Falle von bFallback=true der Text in einem Tooltip angezeigt.
iTextHeight - Zeilenhöhe innherhalb der Tooltips (Default: 1)
iTextWidth - Breite des Tooltips (Default: 50)
strTextStyles - CSS-Styles für das Tooltip
4.7.7. Lokal formatierter String aus Number-/Datumsstring
Erzeugt einen lokal formatierten String aus einem Number- oder aus einem Datumsstring. Mit dem Parameter
"oHtml" wird eine Referenz auf eine Eingabekontrolle mit Typ "integer", "float", "currency" oder "datetime" erstellt.
Damit werden Typen- und Formatierungsvorgaben des Wertes definiert. "strValue" definiert den zu formatierenden Wert.
4.7.8. String formatieren und in Kontrolle schreiben
Erzeugt einen lokal formatierten String aus einem Number- oder aus einem Datumsstring und schreibt das Ergebnis in eine HTML-Eingabekontrolle.
toLocalString(oHtml, strValue)
oHtml - Referenz auf eine Eingabekontrolle mit Typ "integer", "float", "currency" oder "datetime".
Damit werden Typen- und Formatierungsvorgaben des Wertes definiert. Das Ergebnis wird in diese Kontrolle geschrieben.
strValue - zu formatierender Wert.
Parst einen lokal formatierten String zu einer Währung (Number-Objekt).
Beispiel
getCurrencyByLocalString("1.234");
Snippet
writeLocalString(oHtml, strValue);
4.7.10. Währungs-String aus lokal formatiertem String
Parst einen lokal formatierten String zu einem String im Währungsformat
(z.B. 1.234,56 -> 1234.56).
Beispiel
getCurrencyStringByLocal("1.234,56");
Snippet
getCurrencyStringByLocal(strValue);
4.8. WebSockets
Die JavaScript-Methoden im Zusammenhang mit WebSockets bieten die Möglichkeit Nachrichten (Topics) zu subskribieren und das Subskribieren wieder zu beenden.
Überprüft die übergebene Eingabekontrolle, als wäre die Option "Eingabe erforderlich" aktiviert oder
überprüft alle Kontrollen einer übergebenen Gruppierung, bei denen die Option "Eingabe erforderlich" gesetzt wurde.
Als zweiter Parameter kann optional ein alternativer Text angegeben werden, der im Fehlerfall
statt dem voreingestellten Text angezeigt wird.
Vergleicht den Wert einer Datumskontrolle ("date", "time" oder "datetime") mit dem aktuellen Datum.
Möglich für Eingabe- und Ansichtskontrollen. Bei Ansichtskontrollen muss das Expertattribut
jsobject = true (Boolean) gesetzt werden.
Mögliche Rückgabewerte:
-1, wenn ein Fehler aufgetreten ist oder die übergebene Kontrolle leer ist.
0, wenn das Datum kleiner als das aktuelle Datum ist.
1, wenn das Datum gleich dem aktuellen Datum ist.
2, wenn das Datum größer als das aktuelle Datum ist.
Snippet
dateComparedToNow(oHtmlDate);
4.11. Zeitintervall addieren / subtrahieren
Addiert oder subtrahiert einen Zeitanteil zu/von einem übergebenen JavaScript Datumsobjekt.
Mögliche Parameter:
"ms" - Millisekunden / "s" - Sekunden / "mi" - Minuten / "h" - Stunden / "d" - Tage / "mo" - Monate / "y" - Jahre
Beispiel
var dtNow = new Date();
var dtAdd1 = dateAdd("d", 1, dtNow); // addiert 1 Tag auf das aktuelle Datum
var dtAdd2 = dateAdd("h", -2, dtNow); // subtrahiert 2 Stunden vom aktuellen Datum
Snippet
dateAdd(typeOfInterval, intValue, oHtmlDate);
4.12. Seite einer Applikation öffnen
Führt eine Applikationsrequest aus und öffnet eine Seite einer Applikation in einem neuen Fenster.