Artikel-ID: 110516162

GBS AppDesigner: Daten von Dritt-Anwendungen integrieren

Schlagwörter:  Webanwendung  IBM Domino  Bedienung  Integration  IBM Notes  Formular

Der GBS AppDesigner ist ein flexibel einsetzbares Web 2.0 Entwicklungs-Framework.

Seine zentrale Aufgabe ist es, die Entwicklung moderner webfähiger und prozessgestützter Geschäftsanwendungen zu ermöglichen. Daneben können aber auch bestehende IBM Notes Anwendungen mit einem State-of-the-Art Web UI versehen werden. Einfache Anwendungen wie Zugangsberechtigungen, Pinboards oder FAQs lassen sich innerhalb einer Stunde realisieren.

Doch oftmals sollen Informationen aus anderen Anwendungen oder zentral gepflegten Vorgaben in das Formular eingebunden werden wie z. B. bei einer Genehmigung von Arbeitsmaterialien.

Das folgende Beispiel zeigt, wie mit Hilfe des „Dynamischen Dropdown“-Feldes derartige Informationen integriert werden können:

Das Formular „Material Order“ (siehe Abbildung 2) enthält drei Felder des Typs „Dynamic Data Dropdown“ („Dynamischer Dropdown“). Sie sollen aus einer Konfigurationsdatenbank Werte auslesen und die verfügbaren Handys und Office Drucker bzw. in dem dritten Feld alle Einträge anzeigen.

Lösung:

Abbildung 1
Tipps & Tricks für GBS AppDesigner, Oktober, 2013
Paramaterdokumente

In der GBS Einstellungsdatenbank können beliebige Parameterlisten über eigene Dokumente erstellt werden. Jedes Dokument (Parameterliste) bekommt einen eindeutigen Namen (z.B. „CellPhones“) und eine einfache Textliste, die pro Eintrag einen Parameter (z.B. „Samsung SIII) enthält.

Diese Parameter werden zentral durch einen Administrator verwaltet und bei der Dokumentenerstellung durch den Anwender ausgewählt.

Abbildung 2
Tipps & Tricks für GBS AppDesigner, Oktober 2013

Formular mit drei "Dynamic Data Dropdown" Feldern

Abbildung 3
Tipps & Tricks für GBS AppDesigner, Oktober 2013
Designelementdetails Dialogbox

Jedes Feld wird nun mit einer anderen Datenquelle verbunden. Dazu werden nicht die Validierungseinstellungen mit den Vorgabeformeln geöffnet sondern die Designelementdetails:

Als Formel können nun alle @Formula für XPages angewendet werden.

(Siehe IBM Designer Hilfe: IBM Domino Designer XPages Reference > JavaScript language elements (JavaScript))

Folgende Formel öffnet auf dem aktuellen Server (das ist der erste Array-Eintrag von @DBName()) eine Datenbank names sdir_app.nsf im Verzeichnis AppDesigner/Demo, welches sich unterhalb des Data-Verzeichnisses des Servers befindet:

@DbLookup([@DbName()[0],"AppDesigner/Demo/sdir_app.nsf"], ".HiddenLists", "OfficePrinter",2 )

Aus der Ansicht “.HiddenLists” holt sie sich alle Werte aus der zweiten Spalte, die für das Dokument “OfficePrinter” (Inhalt der ersten Spalte) vorhanden sind.

Allgemeiner ist die Formel

@DbLookup([@DbName()[0],pavGlobalSettingBean.getConfigPathByDBKey("RepDB")],".HiddenLists", "CellPhones", 2 )

Sie verwendet eine GBS PAVONE API Methode, um die in der Konfiguration der GBS AppDesigner-Anwendung vorgenommenen Pfade für eine Einstellungsdatenbank zu holen. Mit den Parametern „RoutDB“ (Process Directory), „OrgaDB“ (Organisation Directory) und „NABook” (IBM N&A) lässt sich der Zugriff auf weitere vorkonfigurierte Datenbank bewerkstelligen.

Abbildung 4
Tipps & Tricks für GBS AppDesigner, Oktober 2013
dynamisch gefülltes Feld

Das „Dynamic Data Dropdown“ Feld könnte wie folgt aussehen:

Als Kein-Eintrag könnte ein Eintrag „Kein“ oder einfach ein „|“-Zeichen in das Parameterfeld eingetragen werden. Das „|“-Zeichen bietet den Vorteil, dass tatsächlich nichts angezeigt wird.

Die Formel

@Unique(@DbColumn([@DbName()[0], "AppDesigner/Demo/sdir_app.nsf"], ".HiddenLists", 2) )

holt sich alle Einträge der zweiten Spalte der Ansicht “.HiddenLists“ und stellt durch @Unique zudem sicher, dass kein Eintrag doppelt in der angezeigten Liste erscheint!

Zuletzt aktualisiert am 17.05.2016


« vorheriger Artikel nächster Artikel »

Wie bewerten Sie diesen Artikel?

0/5 Sterne (0 Stimmen)
GBS AppDesigner: Daten von Dritt-Anwendungen integrieren 0 5 0

Ihr Kommentar

Zurück

Cookies erleichtern die Bereitstellung dieser Webseite. Mit der Nutzung dieser Webseite erklären Sie sich mit dem Einsatz von Cookies einverstanden. Mehr >>