Die unterschiedlichen Strukturen von Notes-Datenbanken und relationalen Datenbanken werden von gängigen Integrationswerkzeugen nur stiefmütterlich behandelt. Insbesondere konsequenter, differenzieller Abgleich zur Minimierung von Kommunikationszeiten/-kosten findet kaum Berücksichtigung. Und wie managet man Daten/Dokumente innerhalb großer Notes-Infrastrukturen mit oft Hunderten von Datenbanken? Wie bringt man zumindest in Ansätzen die oft dringend benötigten relationalen Eigenschaften von relationalen Datenbanken in die Notes-Welt? Aus jahrelanger Praxiserfahrung hat Team4 eine Suite von Back End-Produkten entwickelt, welche die genannten Herausforderungen angehen und sich bereits in mehr als 50 – teilweise sehr großen – Projekten bewährt haben. Seit 1996 gestaltet Team4 komplexe Unternehmenslösungen auf Basis von Lotus Notes mit einem besonderen Schwerpunkt bei CRM. Obwohl Lotus Notes über die Jahre zu einem umfangreichen und reifen Produkt gewachsen ist, vermisste Team4 – insbesondere bei der Integration mit bestehenden Unternehmenslösungen – Funktionalitäten. Auch der reiche Markt an Drittprodukten lieferte nicht die von Team4 gewünschte, einheitliche und bezahlbare Werkzeugsammlung. So nahm Team4 das Heft selbst in die Hand und gestaltete unter dem Namen „Back End-Produkte“ eine Sammlung von aufeinander abgestimmten Produkten mit einer einheitlichen Konfigurations- und Ablaufumgebung. Im Folgenden werden die einzelnen Produkte vorgestellt.

Team4 Transfer

Team4 Transfer schafft die Integration zwischen Lotus Notes-Anwendungen (technisch gesehen: Lotus Notes-Datenbanken) und bestehenden Unternehmensanwendungen wie beispielsweise ERP-, SCM-, Auftragsabwicklungs-, Buchhaltungs- oder Warenwirtschaftssystemen. Dabei ist Team4 Transfer spezialisiert auf den asynchronen Datenabgleich. Dieser ist immer dann geboten, wenn die Unternehmensdaten (oder Auszüge daraus) wirklich in Notes-Datenbanken eingebracht werden sollen, beispielsweise um die Daten dann auf ein Notebook zur autonomen Nutzung weiterzureplizieren. Typische Einsatzfälle sind der Abgleich von Kundenstammdaten, Bonitätsdaten, Absatz-/Umsatzdaten etc.

Aber auch in der umgekehrten Richtung kann ein Abgleich Sinn machen, wenn beispielsweise tagsüber Bestellungen mit einer mobilen Notes-Lösung erfasst werden und diese dann abends „in einem Rutsch“ an die zentrale Auftragsabwicklung übergeben werden sollen.

Abbildung 1: Team4 Transfer

Team4 Transfer ist modular aufgebaut (Abbildung 1). So genannte „Provider“ ermöglichen den Zugriff auf unterschiedliche Datenquellen, wie relationale Datenbanken (Oracle, Microsoft, IBM usw.), Dateisysteme (so genannte Flat Files) oder anwendungsspezifische Schnittstellen (z.B. RFC für SAP R/3).
Den Kern bildet die „Data Transfer Engine“. Sie sorgt für die Abarbeitung einzelner „Elementary Transfer Tasks“, die mit Lotus Notes-Formularen definiert werden.

Die „Elementary Transfer Tasks“ von Team4 Transfer

– ExecSQL kann SQL auf einem RDBMS ausführen.

– SQL2SQL überträgt Daten zwischen RDBMS.
– SQL2Notes überträgt Daten von einem RDBMS nach Lotus Notes.
– Notes2SQL überträgt Daten von Lotus Notes zu einem RDBMS.
– Txt2Notes erstellt aus einer strukturierten Textdatei Notes-Dokumente.
– Notes2Txt erstellt aus Notes-Dokumenten Datensätze in einer Textdatei.
– SAP2Notes erstellt Notes-Dokumente aus SAP-Tabellen.
– SAP2SQL überträgt SAP-Daten in ein beliebiges RDBMS.

So genannte „Templates“ umfassen komplette Zusammenstellungen von Transfer Tasks für die Kopplung zwischen konkreten Anwendungssystemen auf der Notes-Seite und der Seite der bestehenden betriebswirtschaftlichen Anwendung. So bieten Team4 und Partner beispielsweise Templates zur Datensynchronisation zwischen der Notes-Anwendung „Team4 CRM“ und SAP R/3 oder Command Oxaion. Für SAP R/3 umfasst das Template u. a. die Synchronisation von Debitorendaten auf Mandanten-, Buchungskreis- und Vertriebsbereichsebene, Partnerrollen und Ansprechpartner.
Die Konfiguration erfolgt durch das Erstellen und Ausfüllen von Formularen (Abbildung 2) zu den einzelnen Transfer Tasks. Als neues Element von Team4 Transfer ermöglicht der „Builder“ die automatische Generierung von „Teiltemplates“ (also kleineren zusammenhängenden Abfolgen von Transfer Tasks) aus Metadaten. Diese können beispielsweise aus den Datenbankdefinitionen der anzubindenden relationalen Datenbanken stammen.


Abbildung 2: Erstellen und Ausfüllen von Formularen

Aus der Projektarbeit von Team4, bei der mehr als 50 verschiedene Integrationen mittels Team4 Transfer realisiert wurden, ist eine Vielzahl von praxisbewährten „Teiltemplates“ für typische Integrationsabläufe entstanden. So wurden beispielsweise in Zusammenarbeit mit einem Informatiklehrstuhl der RWTH Aachen auch theoretische Grundlagen für einen möglichst effizienten Abgleich zwischen komplexen relationalen Datenstrukturen und den bei Lotus Notes gegebenen dokumentorientierten Strukturen entwickelt.

Während Team4 Transfer die „externe Integration“ leistet, sorgen Team4 Rep und Sync für die „interne Integration“ zwischen verschiedenen Lotus Notes-Datenbanken. Mit den Produkten können skalierbare, komplexe Notes-Lösungen mit Hunderten von verbundenen Notes-Datenbanken geschaffen werden. Dabei sind Team4 Rep und Sync auch für die Integration von bestehenden Notes-Datenbanken in neue Notes-Lösungen hilfreich.

Team4 Rep – Replikation in neuen Dimensionen

Team4 Rep realisiert den gesteuerten Austausch von Dokumenten zwischen Datenbanken. Ein typisches Szenario zeigt die Abbildung 3. Dabei arbeitet Team4 Rep im Gegensatz zur „normalen“ Notes-Replikation auch dann, wenn die zu replizierenden Datenbanken auf einem Server liegen – Replikation zwischen einer zentralen Datenbank und mehreren Satelliten-Datenbanken (verteiltes System).

Abbildung 3: Team4 Rep

Team4 Rep ermöglicht auch mehrstufige Satelliten-Hierarchien, beispielsweise über eine Zentrale zur Niederlassung und weiter zum Notebook-Datenbestand für einen einzelnen Außendienstmitarbeiter. Umgekehrt können mit Team4 Rep Teildatenbestände in eine Gesamtdatenbank zusammengeführt werden, beispielsweise in ein zentrales Data Warehouse. Mit dem Produkt können aber auch Datenabgleiche zwischen Datenbanken mit unterschiedlicher Gestaltung (z.B. zwischen englischer und deutscher Anwendung) vorgenommen werden. Das Herausziehen einzelner Dokumente nach vorgegebenen Kriterien zur Archivierung ist eine weitere typische Anwendung.
Wie bei Team4 Transfer werden die Datenverteilungen als „Tasks“ (definiert über Notes-Formulare) gesteuert. Da diese Steuerdokumente in einer zentralen, geschützten Datenbank liegen, kann Team4 Rep – im Gegensatz zur selektiven Replikation von Notes selbst – auch in datenkritischen Fällen eingesetzt werden, beispielsweise zur Verteilung von Händlerinformationen aus einer großen, zentralen Notes-Datenbank auf kleine Händlerdatenbanken, welche nur die für den jeweiligen Händler relevanten und erlaubten Daten enthalten. Team4 Rep berücksichtigt bei der Datenverteilung viele Notes-Spezifika. So werden beispielsweise Links auf andere Dokumente (Doc Links) bei der Verteilung mit Team4 Rep entsprechend der Verschiebung angepasst.

Team4 Sync – „Relationalität“ für Notes

Team4 Sync bringt Aspekte relationaler Datenbanken in die Notes-Welt. So ermöglicht Team4 Sync die Nachführung von Schlüsselwerten (Joins), die Weitergabe von Namensänderungen in abhängige Dokumente (Abbildung 4) oder die Umrechnung von Währungsfeldern mit aktualisierten Faktoren.

Abbildung 4: Team4 Sync

Aber Team4 Sync kann auch Werte in Notes-Datenbanken aggregieren. So können Zahlenwerte in verschiedenen Ausgangsdokumenten abgegriffen und die Summe in einem Zieldokument eingetragen werden. Ebenso können Textlisten vereinigt werden.
Team4 Sync kann im Rahmen dieser Prozesse Dokumente aktualisieren, erzeugen oder löschen. Es kann rekursive Strukturen verarbeiten und bearbeitet auch spezielle Feldtypen, wie Namensfelder, Lesefelder oder Autorenfelder. Quell- und Zieldatenbanken können verschieden sein. Quelldokumente und Zieldokumente als auch die zu erfolgenden Datenmanipulationen können sehr flexibel in entsprechenden Task-Dokumenten parametrisiert werden.

Team4 Sync arbeitet schneller als LotusScript-Agenten und ist damit skalierbar für große Datenmengen. Die Gestaltung der Datentransfers erfordert keine Design-Änderungen an den Applikationen (kann also auf bestehende Anwendungen aufgesetzt werden). Es ist keine Programmierung, sondern nur die Parametrisierung über entsprechende Formulare erforderlich.

Team4 Inform – Message Engine

Das jüngste Mitglied der Team4-Back End-Familie generiert auf flexibel parametrisierbare Ereignisse hin Messages (Notes-Mails). Die – wieder über einfache Formulare festgelegten – Parameter können Zeiten, Feldwerte etc. sein (Abbildung 5). So lässt sich beispielsweise für eine Angebotsdatenbank festlegen, dass bei jedem Angebot, welches länger als 4 Wochen im Status „offen“ steht, automatisch eine Hinweismitteilung an den Verantwortlichen ergeht. Mit Kopplungen verschiedener Messages lassen sich so auch kompliziertere Workflows abbilden. Wie bei allen Team4 Back End-Produkten liegt auch hier der Charme darin, dass sich auch Team4 Inform auf bestehende Anwendungen ohne Design-Modifikationen aufsetzen lässt.


Abbildung 5: Team4 Inform

Team4 Scheduler – Single Point of Control

Eine gemeinsame Scheduling- und Logging-Architektur macht aus den Team4 Back End-Produkten mehr als die Summe der Einzelteile. Der Scheduler sorgt – wiederum gesteuert durch einfache Task-Formulare – für einen zeitgesteuerten und ggf. konditionalen Ablauf aller Tasks der oben erläuterten Einzelprodukte. Dabei kann beliebig gemischt werden. So kann beispielsweise erst eine Datenübertragung aus dem ERP-System mittels Team4 Transfer und dann, nach dem erfolgreichen Abschluss, ein Unterverteilungsjob mittels Team4 Rep und/oder ein Nachführungsjob mittels Team4 Sync gestartet werden.

Die übergeordneten, generellen Tasks über alle Werkzeuge
– Composite Tasks dienen zum Strukturieren von Elementary Tasks zu beliebig komplexen Abläufen.
– Root Tasks stehen am Anfang eines Verarbeitungszweiges, enthalten Schedule-Informationen und werden vom Scheduler ausgeführt.
– List Tasks fassen Tasks zu übergeordneten Strukturen zusammen.
– Conditional Tasks dienen der Abarbeitung von Tasks in Abhängigkeit von Ergebnissen vorhergehender Tasks.
– Loop Tasks führen einen bestimmten Task bis zum Eintreffen eines Abbruchkriteriums aus.

Auch das Logging (in mehreren Tiefen definierbar) verläuft über alle Produkte einheitlich. Dabei können auch Meldungen bei definierbaren Situationen (Fehler, erfolgreicher Ablauf usw.) per e-Mail erfolgen.

Team4 GmbH

D–52134 Herzogenrath

Telefon: (+49) 02407/9582-0

www.team4.de