VL 8 Einführung in Domino Designer LV Groupware- und...

81
Universität Potsdam Lehrstuhl für Wirtschaftsinformatik und Electronic Government Univ.-Prof. Dr.-Ing. Norbert Gronau August-Bebel-Str. 89 14482 Potsdam Tel. (0331) 977-3379 Fax (0331) 977-3406 http://wi.uni-potsdam.de VL 8 Einführung in Domino Designer Prof. Dr.-Ing. Norbert Gronau Dipl.-Inform. Barbara Pogorzelska Wintersemester 2008/2009 LV Groupware- und Workflowsysteme

Transcript of VL 8 Einführung in Domino Designer LV Groupware- und...

Page 1: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Universität PotsdamLehrstuhl für Wirtschaftsinformatik

und Electronic GovernmentUniv.-Prof. Dr.-Ing. Norbert Gronau

August-Bebel-Str. 8914482 Potsdam

Tel. (0331) 977-3379Fax (0331) 977-3406

http://wi.uni-potsdam.de

VL 8Einführung in Domino Designer

Prof. Dr.-Ing. Norbert GronauDipl.-Inform. Barbara PogorzelskaWintersemester 2008/2009

LV Groupware- und Workflowsysteme

Page 2: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Agenda

Notes/Domino, Administrator und Designer

Programmierkonzepte

Domino Designer

Gestaltungselemente

Übung

Page 3: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Die verschiedenen Notes Clients

1. Lotus Notes – damit arbeitet der Anwender2. Lotus Domino Designer – damit arbeitet der Anwendungsentwickler3. Lotus Domino Administrator – damit arbeitet der Administrator

4. IBM Lotus Domino Web Access (DWA) (ehemalige Bezeichnung iNotes WebAccess) läuft im Webbrowser und kann (konfigurierbar) Active-X verwenden

JAVA wird in DWA nur verwendet, wenn Instant Messaging (SameTime) verwendet wird5. IBM Lotus Domino WebMail – läuft im Webbrowser und bietet eine geringere Funktionalität als DWA

Webmail verwendet JAVA und ist für jene Anwender gedacht, deren Browser nicht mit DWA arbeiten6. IBM Lotus Domino Access für Microsoft Outlook (DAMO) – ein Zusatzprogram für Microsoft Outlook um

auf den Domino Server zuzugreifen

Page 4: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Notes-Client

Grafischer Personal Information Manager (PIM) mit integriertem WebbrowserGrundfunktionen: E-Mail, Calendaring, Scheduling, Task-Management, elektronische Formulare, ...Server-Funktionen, die auch im Client zur Verfügung stehen: Volltextsuche, Replikation, Komprimierung von Datenbanken, Agenten, ...Client kann auch als eigenständige Anwendung betrieben werden

Notes/Domino, Administrator und Designer

Page 5: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Domino Administrator

Grafische Administrations- BenutzeroberflächeVerteilung der Administrationsaufgaben auf mehrere Bildschirme und RegisterkartenAdministration des Domino-Servers auch über Web-basierte Oberfläche

Notes/Domino, Administrator und Designer

Page 6: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Domino Designer

Spezieller Notes-ClientIntegrierte Entwicklungsumgebung zum Entwurf von AnwendungenGesamte Prozess der Anwendungsentwicklung vom Entwurf, über die Implementierung, das Debugging und die Dokumentation findet im Rahmen einer einheitlichen grafischen Benutzeroberfläche stattVerwendung von verschiedenen Programmiertechniken (einfache Makrosprache - Java-Anwendung)

Notes/Domino, Administrator und Designer

Page 7: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Agenda

Notes/Domino, Administrator und Designer

Programmierkonzepte

Domino Designer

Gestaltungselemente

Übung

Page 8: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Allgemein

Programmierkonzepte

Erforderliche Programmierkenntnisse

Mäc

htig

keit

und

Flex

ibili

tät

Einfache Aktionen

Notes- Formeln

JavaScript/ LotusScript

Java

API-Programmierung

Grundsätzlich existieren mehrere Möglichkeiten zur Entwicklung einer Anwendung im Domino-Umfeld.

AuswahlkriterienEinfachheitPortabilitätAblaufgeschwindigkeitWartungsaufwandNotwendiger Schulungsaufwand

EntwicklungsmethodenNative Domino-Methoden (einfache Aktionen, Formeln, JavaScript, LotusScript und Java)Externe Methoden (Entwicklung außerhalb der Entwicklungsumgebung von Notes, z.B. API-Programmierung)

Page 9: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Programmierkonzepte von Notes 1/3

Programmierkonzepte

Einfache AktionenVordefinierte BausteineRecht komplexe Befehlssequenzen möglichZ.B. Dokumente löschen, verschieben, senden, Feldwerte verändern, Agenten starten, ...Richten sich in erster Linie an Endbenutzer

Notes FormelnVergleichbar mit dem Konzept eines programmierbaren TaschenrechnersAuswertung von einfachen bis hin zu sehr komplexen AusdrückenAusführen von Notes-spezifischen BefehlenWenn-Dann-Bedingungen oder einfache strukturierte Programmierung

Page 10: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Programmierkonzepte von Notes 2/3

Programmierkonzepte

Lotus ScriptIm Gegensatz zu Notes-Formeln ist LotusScript eine ProgrammierspracheObjektorientiertes Basic-Derivat (ausgestattet mit Notes-spezifischen Klassen)Entwicklung von Anwendungen in strukturierter GestaltungKonzept der Objektorientierung

Java ScriptAusführung einer Webanwendung auf dem Client (Serverentlastung)Direkte Eingabe von JavaScript-Codefragmente zu jedem SeitenelementProgrammierer wird durch die automatische Anzeige der relevanten Events, die Syntax-Prüfung, farbliche Kennzeichnung des Codes sowie einen Referenzbrowser zur Anzeige des Domain-Object-Modells unterstützt

Page 11: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Programmierkonzepte von Notes 3/3

Programmierkonzepte

JavaObjektorientierte Sprache zur Entwicklung von netzwerkorientierten AnwendungenClient-Seite: Java-Programme in Form von Applets (kleine Anwendungen) oder Stand-alone-AnwendungenServer-Seite: Java-Anwendungen in Form von Servlets (serverseitige Pendant zu Applets) oder Stand-alone-Anwendungen

Page 12: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Programmierstil

Konfigurierbarkeit einer AnwendungAnwendungen sollen in beliebigen Umgebungen laufen, daher keine Referenzen auf Datenbanken oder Server im CodeKonfiguration von Referenzen über ProfildokumentenErmöglicht das schnelle Anpassen einer Anwendungen

SchlüsselwortfelderWerte für ein Schlüsselwortfeld können zur Laufzeit berechnet werdenSchlüsselwörter in Profildokumenten hinterlegenAlias-Werte verwenden (Wert | Alias)

Subs und FunktionenVerwendung von LotusScript-LibrariesEinzelne Library: kleine funktionelle einheitenstrukturierte LibraryLotusScript-Libraries sollten sich nicht rekursiv verwenden

Namensgebung für DesignelementeDesignelement mit denen der Anwender nicht direkt arbeitet, sollten versteckt werdenDesignelemente, die innerhalb der Codierung verwendet werden, sollten durch ein dem Namen vorangestelltes spezielles Zeichen ($) kenntlich gemacht werden

Page 13: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Agenda

Notes/Domino, Administrator und Designer

Programmierkonzepte

Domino Designer

Gestaltungselemente

Übung

Page 14: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Vorteile des Designers

Domino Designer

Wiederverwendung durch Schablonen und gemeinsame ElementeEine Schablone ist das Gerüst einer Domino-DatenbankErmöglichen den Aufbau eines Repository von GestaltungselementenVereinfachen die Verteilung von AnwendungenSchablonen bereits vorhanden, z.B. DiskussionsDB, Dokumentenverwaltung, Teamroom, Persönliches Journal

Prototyping-orientierte EntwicklungIntegrierte Entwicklungsumgebung ermöglicht schnelle prototypische Entwicklung von Anwendungen (Rapid Application Development)Breites Angebot an unterstützten Programmierkonzepten (einfache Aktionen, Formeln, JavaScript, LotusScript, Java)Bereits eingebaute Funktionen

Page 15: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Domino Designer

Erstellung neuer DatenbankenÄnderung des Designs vorhandener DatenbankenAnlegen und Verändern der verschiedenen Gestaltungselemente wie Masken, Ansichten, Seiten, RahmenEntwicklungsumgebung für Formelsprache (sog. @Befehle und @Funktionen), LotusScript (mit Debugger), Java oder JavaScript

Grundelemente einer Notes-Datenbank sindMasken (Forms) zum Erstellen, Ändern und Anzeigen von DokumentenMasken lassen sich vielfältig dynamisch darstellenAnsichten (Views) zur tabellarischen Darstellung von DokumentenFür die Anzeige im Web-Browser kann HTML-Quellcode direkt vorgegeben werden, bzw. man kann HTML-Gestaltungselemente wie Layer grafisch erzeugen und diese zum Beispiel auch dynamisch ein- und ausblenden

http://de.wikipedia.org/wiki/Lotus_Domino#Der_Domino_Server

Domino Designer

Page 16: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Notes Datenbanken

AllgemeinIm Gegensatz zu relationale Datenbanken Dokumenten-basierte DatenbankenDateinamen von Lotus-Notes-Datenbanken enden mit dem Suffix .NSF „Notes storage facility“Datenbankvorlagen (Schablonen) enden mit dem Suffix .NTF „Notes template file“

DokumentDaten und Gestaltungselemente werden in Form von Dokumenten abgelegtJedes Dokument hat eine eindeutige IDÄnderung am Masken- oder Ansichtenlayout hat keine Auswirkung auf gespeicherte DatenMehrere Felder (Items) unterschiedlicher Typen (z.B. Text oder Zahl)Inhalt ist von der Anzeige entkoppeltMasken (Forms) zum Anzeigen und Ändern der DokumentinhalteMasken können frei gestaltet werdenAnsichten (Views) zur tabellarischen Anzeige von gefilterten DokumentenAusführung von ereignis- oder zeitgesteuerten Aktionen mittels Agenten

Eine Datenbank hat folgende IdentifikationsmerkmaleDatenbanktitel: für den Anwender sichtbarDateiname: je nach darunterliegendem DateisystemReplik-ID: eine 16 Hex-Zeichen lange Zahl, die beim Erstellen der Datenbank zufällig generiert wird

Domino Designer

Page 17: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Domino Designer Startbildschirm

Domino Designer

Page 18: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Domino Designer

Aktionsfenster

Arbeitsfenster

Gestaltungsfenster mit den Gestaltungs- elementen Programmierfenster

Lesezeichen

Objekt- bzw. Referenzfenster

Domino Designer

Page 19: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

1

2

3

Kompilieren

1. Preview im Notes Client2. Preview im Notes Browser

Client3. Preview im Web Browser,

ACL für Anonymous muss gesetzt sei

Kompilieren erfolgt automatischSpeicherdialog erscheint falls Änderungen noch nicht gespeichert wurden

Domino Designer

Page 20: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Name/Comment: Bezeichnung des GestaltungselementesAlias: Zweitname zur einfacheren ReferenzierungLast Modified: Datum der letzten ÄnderungLast Modified by: Name des Entwicklers der letzten ÄnderungNo Refresh: Element darf durch eine Aktualisierung nicht geändert werdenNotes/Web/Mobile: Element wird in diesen Client-Typen unterstützt

Arbeitsfenster

Infobox (Alt+Enter)

Domino Designer

Page 21: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Code Completion

Designer gibt mögliche Events zu den Funktionen anZeigt Syntax des Befehls an

Domino Designer

Page 22: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Unterstützte Events (Auszug)

QueryOpenWird vor dem Öffnen der Seite ausgelöst

PostOpenWird nach dem Öffnen der Seite ausgelöst

QueryRecalcWird vor dem Aktualisieren der Seite ausgelöst

PostRecalcWird nach dem Aktualisieren der Seite ausgelöst

QueryCloseWird vor dem Schließen der Seite ausgelöst

Lotus Script

Java Script

Formeln

Formeln, Java Script, Lotus Script

Domino Designer

Page 23: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Java in Notes

Java z.B. in einem Lotus Notes Agenten verwendenLotus generiert das Grundgerüst einer neuen Java Klasse JavaAgentFiles -> Tools -> Show Java Debug Console

Domino Designer

Page 24: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Lotus Script Debugger

Auffinden von FehlernSchrittweises Ausführen möglichAnzeige der VariablenwerteHaltepunkte setzen u.v.m.Nur syntaktisch korrekter Sourcecode kann gespeichert werden

File -> Tools -> Debug LotusScript (Debugger bei Nichtgebrauch wieder deaktivieren)

Kommentare in LotusScriptAusdruck: REMHochkomma: ' Mehrere Zeilen: %REM ... %END REM

Domino Designer

Page 25: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Fehlererkennung

Syntaxfehler im LotusScript werden beim Speichern aufgezeigtSyntaxfehler in Formula werden ebenfalls beim Speichern aufgezeigt mit Hinweis, was den Fehler ausgelöst hatWICHTIG: Fehler müssen behoben werden, bevor eine Speicherung erfolgen kann

Domino Designer

Page 26: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Domino Designer Hilfe

Taste F1Kontextbezogene HilfeWeitere Hilfe-Datenbanken: /Data bzw. /Data/Help

Domino Designer

Page 27: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Hinzufügen bzw. Anpassen externer Entwicklungswerkzeuge

Domino Designer

Tools -> Add Tool ... Tools -> Customize Tools ...

Page 28: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Agenda

Notes/Domino, Administrator und Designer

Programmierkonzepte

Domino Designer

Gestaltungselemente

Übung

Page 29: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Überblick über die Gestaltungselemente

GliederungenLogische Grundgerüst einer Anwendung/WebseiteNavigation zu einer bestimmten Stelle

RahmengruppenAufteilung des Bildschirms in mehrere Teilbereiche

MaskenErstellen, Editieren, Anzeigen von Dokumenten

AnsichtenListen von Dokumenten (selektiert, kategorisiert, sortiert nach bestimmten Kriterien)

OrdnerÄhneln stark den AnsichtenDokumente müssen manuell von Benutzer dort abgelegt werden

SeitenDarstellung von InhaltenNicht an eine bestimmte Maske gebunden

NavigatorenGrafische Steuerelemente

AgentenMakroähnliche Programmabläufe

RessourcenAlle Elemente, die wiederverwendet werden können (Gemeinsam genutzte Felder, Teilmasken, Script-Bibliotheken, Bilder, Applets)

AndereÜber diese Datenbank-Dokument, Benutzen dieser Datenbank-Dokument: Hilfsdokument über Sinn und Zweck

Gestaltungselemente

Page 30: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Datenbanken im Domino Designer

Symbol + Datenbanktitel + Datenbank- dateiname (.nsf)

1.

Gestaltungselemente

GestaltungselementeFramesetsPagesFormsViewsFoldersShared CodeShared Resources Others

Page 31: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Möglichkeiten mit Seitenelementen ...

Text: vielfältige TextformatierungsmöglichkeitenBilder: Import aus Zwischenablage, aus Dateisystem oder aus RessourcenverwaltungHorizontale Linie: optische Trennung bestimmter SeitenabschnitteTabellen: strukturierte Anzeige von DatenAbschnitte: verbessern die Übersichtlichkeit einer SeiteDateianhänge: einbinden einer beliebigen Datei in die SeiteHotspots: definierte Bereiche, die beim Anklicken eine bestimmte Aktion ausführen (z.B. Schaltflächen, Verknüpfungen)Aktionsschaltflächen: schneller Zugriff auf die meistgebrauchten Funktionen einer SeiteEingebettete Elemente: einfügen von Gliederungen, Ansichten, Navigatoren in SeitenJava-Applets: kleine Programme, welche im Rahmen einer Anwendung ausgeführt werdenObjekte: OLE-Komponenten (nur im Notes-Unfeld eingebettet werden)Ebenen: Gestaltungselemente zu Ebenen zusammenfassen und an beliebiger Stelle zu plazieren

Gestaltungselemente

Seite ähnelt einer statischen HTML-SeiteÄndern der Eigenschaften über die InfoboxDesigner entspricht einem WYSIWYG-Editor

Page 32: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Ein Gestaltungselement bearbeiten ...

Gestaltungselemente

Per Drag & Drop Elemente plazieren

Page 33: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Aktionsfenster

Aktionen, die ausgeführt werden können (z.B. Buttons in Ansichten oder Masken)Client: Formula, Simple Actions, LotusScript, JavaScriptWeb: Javascript

Gestaltungselemente

Aktionsfenster

Page 34: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Hilfestellungen erstellen

Pop-UpsGestaltungselemente welche zusätzliche Informationen anzeigenSpezialfall sind Hotspots (Zusatzhinweise nur in Textform)Werden nicht im Webbrowser unterstützt (ähnlich Funktionalität mittels JavaScript möglich)Create -> Hotspot -> Text pop-up ...

FeldhilfeNur vom Notes-Client untersütztFeldhilfe ein- bzw. ausschalten:View -> Show -> Field Help

Erscheint am unteren

Bildschirmrand

Voreingestellter Wert, um das Format anzuzeigen

Gestaltungselemente

Page 35: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Alternativnamen - Aliase

Namen von Seiten (oder anderen Gestaltungselemente)Mehrere Namen möglichDienen zur ReferenzierungAlternativnamen (Aliase) werden durch einen vertikalen Trennbalken ("|") getrenntAnzahl der Alias-Namen ist unbeschränkt (allerdings Zeichenanzahl pro Namen < 256)Im Feld "Comment" sollte immer Sinn und Zweck der Seite bzw. des Elements ersichtlich werden

Gestaltungselemente

Richtlinien bei der BenennungUnterscheidung zwischen Groß- und KleinbuchstabenBeliebige Kombination aus: Buchstaben, Zahlen, Leer- und Satzzeichen

Page 36: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Gründe für das Verbergen von Absätzen

Nicht nur Text, sonden auch andere Seitenelemente (Felder, Aktionen, Tabellen, Bilder)Elemente abhängig von verschiedenen Bedingungen verbergen (z.B.: nach Bearbeitungsstatus, nach Client-Typ, anhand einer Formel)

Ergonomie: nur relevane Informationen anbietenSicherheit: in Abhängigkeit der Zugriffsrechte des BenutzersUnterschiedliche Clienttypen: in Abhängigkeit vom zugreifenden Client

Gestaltungselemente

Berechneter TextDer eigentliche Textinhalt wird erst zur Laufzeit ausgewertetZ.B.: Anzeige des aktuellen DatumsCreate -> Computed Text..."Heutiges Datum: " + @Text(@Today)

Page 37: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Mit Verknüpfungen arbeiten ...

Verknüpfungen zu absoluten URLsVerknüpfungen zu einzelnen Domino-spezifischen GestaltungselementenAlle verknüpfungsartigen Elemente werden HotSpots genannt (Schaltflächen, Aktions-Schaltflächen, Text- bzw. Formel-Pop-Ups)

URL-VerknüpfungName des Protokolls (z.B.: http://, mailto:) + eindeutige Adresse (z.B.: www.lotus.com)Verknüpfung geeignet für Quellen außerhalb der Domino-Umgebung

Benanntes ElementVerknüpfungen zu Elementen in der Domino-Umgebung (werden über einen Namen identifiziert)

Einfache VerknüpfungVerknüpfungen zu Domino-Ressourcen (werden über eine ID identifiziert)

Gestaltungselemente

Page 38: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Verknüpfungen erstellen: Create -> Hotspot -> Link Hotspot

URL-Verknüpfung bzw. Email-VerknüpfungText/Bild markieren

Verknüpfungen zu benannten ElementenVerknüpfungen zu Domino-RessourcenEntsprechende Ressource auswählen -> Edit -> Copy As Link -> Named ElementText/Bild markieren oder Edit -> PasteDomino Designer erkennt automatisch den Inhalt der Zwischenablage als Verknüpfung

Einfache VerknüpfungenElement, die nicht notwendigerweise über einen Namen verfügen (z.B.: Dokumente, Anker, Ansichten, Datenbanken)Entsprechende Ressource auswählen -> Edit -> Copy As Link -> Database LinkText/Bild markieren oder Edit -> PasteDomino Designer erkennt automatisch den Inhalt der Zwischenablage als Verknüpfung

Gestaltungselemente

Page 39: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Bestehende HTML-Seiten einbetten ...

1. Eine neue Seite erstellenFile -> Import...Datei auswählen

2. HTML-Code als ASCII-Code per Copy & Paste einfügen3. Durchgangs-HTML

Bestimmte Textabschnitte markieren und als Durchgangs-HTML deklarieren -> Text -> Pass-Thru HTML oderEckige Klammern umschließen den Text

Dokumentenkopf <Head>-Tag manipulieren der Parameter (Schriftarteinstellungen, Titel, Metainformationen, ...) über HTML Head ContentDokumentenkörper <Body>-Tag manipulieren der Parameter (Hintergrundfarbe, -bild, Seitenrändern, ...) über HTML Body Attributes

Gestaltungselemente

Page 40: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

HTML-Attribute manipulieren

Die meisten Gestaltungselement bieten eine zusätzliche Registerkarte namens HTML an, wo HTML-Attribute plaziert werden können

HTML AttributeName: Name des Elements zur ReferenzierungID: eindeutiger IdentifiziererKlasse: Zuweisung einer Style Sheet KlasseStil: Zuweisung bestimmter Formatierungsmerkmale zu dem Element, direkte ZuweisungTitel: Angabe einer Überschrift für das ElementAndere: Plazierung anderer Attribute

Plazieren von DateianhängenCursor an die entsprechende Stelle der SeiteCreate -> Attachment...Datei auswählen -> speichern

Aktionen

Gestaltungselemente

Page 41: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Mit Ebenen arbeiten ...

Durch Ebenen können mehrere Elemente zusammengefasst und anschließend pixelweise plaziert werdenErstellung von Ebenen

Seite öffnenCreate -> LayerEbene an eine beliebige Stelle schieben, Größenänderungen vornehmen

Neues Menü

Infobox

Gestaltungselemente

Page 42: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Gemeinsame Ressourcen ...

Elemente, die in einer Datenbank gespeichert sindKönnen mehrfach verwendet werdenZ.B.: Bilder, Applets, Teilmasken, Felder, Script-BibliothekenNeue Bildressource hinzufügen: Shared Resources -> Images -> New Image ResourceGemeinsame Ressource benutzen: Create -> Image Resource bzw. Insert Resource...

Gemeinsame RessourceEingefügtes Element

Gestaltungselemente

Page 43: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Eigene Datenbank als Schablone kennzeichnen

Datenbank entsprechend gestaltenInfobox "Database" -> Reiter "Design"

Eigene Datenbank als Schablone anbieten

Gestaltungselemente

Page 44: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Gestaltungsübersicht einer Datenbank - Synopsis

Analyse von Gestaltungselementen (z.B.: Masken, Agenten)Dokumentation aller Einstellungen der GestaltungselementeOther -> Synopsis...

Gestaltungselemente

Page 45: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Spezielle Gestaltungsdokumente einer Datenbank ...

"Über diese Datenbank" und "Benutzen dieser Datenbank" -DokumenteBereitstellung grundlegender Informationen über die Datenbank

Inhalt ändern im DesignerHelp -> About This Database bzw. Using This DatabaseOther -> Database Resources -> "Using Database" bzw. "About Database" Document

Dokument anzeigen lassen im Client: Help -> About This Database bzw. Using This Database"Über"-Dokument kann als Startoption festgelegt werdenInfobox "Database" -> Reiter "Launch" -> "When opened in the Notes client"

Gestaltungselemente

Page 46: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Agenda

Notes/Domino, Administrator und Designer

Programmierkonzepte

Domino Designer

Gestaltungselemente

Übung

Page 47: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Aufgabenstellung

Übung

Praktische Aufgaben mit dem Designer1. Persönliches Journal im Designer öffnen2. Feldhilfen hinzufügen bzw. ändern3. Gemeinsame Ressource hinzufügen und benutzen

4. Eine leere Datenbank (ohne Schablone) erstellen und im Designer öffnen5. Logo ändern mit Other -> Database Resource -> Icon6. "Über"-Dokument erstellen7. Aliasnamen für das "Über"-Dokument anlegen8. Zusätzliche Informationen über die Datenbank anzeigen mit Other -> Synopsis ...9. Mindestens zwei Seiten erstellen10. Überschrift der Seite dynamisch verändern (verbergen), in Abhängigkeit vom Client

(Notes-Client, Webbrowser)11. Berechneter Text einfügen mit folgendem Ausdruck: "Heutiges Datum: " +

@Text(@Today)12. Http-Link zu einer Webseite13. Email-Link zu einer Mailadresse14. Link zu einer anderen Seite der Datenbank (oder einer anderen Datenbank)15. HTML in eine Seite einfügen

z.B. [<Blink> Keine Unterstützung vom Internet Explorer! </Blink>]16. Style Sheet Definition im Kopfbereich eintragen und einer Verknüpfung die Klasse

"menu" zuweisenz.B. "[<Style> <!-- A.menu:hover{background-color:silver;} --> </Style> ]"

Page 48: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Universität PotsdamLehrstuhl für Wirtschaftsinformatik

und Electronic GovernmentUniv.-Prof. Dr.-Ing. Norbert Gronau

August-Bebel-Str. 8914482 Potsdam

Tel. (0331) 977-3379Fax (0331) 977-3406

http://wi.uni-potsdam.de

Weiterführende Informationen zu Lotus Notes und dem Domino Designer

Prof. Dr.-Ing. Norbert GronauDipl.-Inform. Barbara PogorzelskaWintersemester 2008/2009

LV Groupware- und Workflowsysteme

Page 49: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Agenda

Einführung

Architektur

Vorteile als Entwickungsplattform

Page 50: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Geschichte von Lotus Notes / Domino

Einführung

Historie

Namensgebung

1973 entwickelt der Student Ray Ozzie (USA) das System PLATO Notes (Bulletin Board = elektronisches Diskussionsforum)1989 offizielles Produkt Lotus Notes, Gründer Mitch KaporEntwicklung vom Microsoft Information Exchange Server1993 engültiger kommerzieller Durchbruch für Lotus NotesÜbernahme von Lotus durch IBM

Domino: ursprünglicher Name der Teilanwendung HTTP-ÜbersetzerDomino => ServerseiteNotes => Clientseite

Page 51: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Lotus Notes Client 1/2

Einführung

Allgemeine Eigenschaften

Funktionen

Dokumentenorientiertes verteiltes Datenbanksystem mit sehr enger E-Mail-AnbindungPlattform für die Entwicklung von Anwendungen

E-Mail (inkl. Kalender, Aufgabenliste)E-Diskussion„TeamRoom“...

Page 52: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Lotus Notes Client 2/2

Einführung

Sprache für Anwendungsentwicklung

Client-Server-System

Sprachen sind die Lotus-Notes-Makrosprache (sog. @-Funktionen und @-Commands)LotusScript (sehr ähnlich Visual Basic)Java, JavaScript

Daten werden auf dem Lotus Domino-Server gespeichertBenutzer-Interaktionen werden auf dem Lotus Notes-Client durchgeführt

Page 53: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Notes Domino 1/2

Einführung

Notes Domino ist seit vielen Jahren Marktführer im Groupware-MarktServer-gestützte Dienste bieten viele MöglichkeitenLotus Notes als zentrales Kommunikations- und IntegrationssystemGeeignet für Umgebungen mit hohem Anspruch auf Sicherheit und ZuverlässigkeitSchnelle Entwicklung von AnwendungenExzellente Integration in heterogene IT-Landschaften

Allgemeine Eigenschaften

Page 54: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Notes Domino 2/2

Einführung

Datenbank-ManagementsystemReplikationMail-RoutingInformation-RetrievalIntegration mit anderen SystemenInternet-KompatibilitätSicherheitUnterschiedliche Möglichkeiten des Informationszugriffs

Wichtige Dienste

Page 55: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Datenbank-Managementsystem 1/2

Einführung

DokumentenorientiertIm Kern der Domino-Funktionalität steht das Datenbank-Managementsystem (DBMS), der so genannte secure object storeKein relationales DBMS, wie bei Oracle oder Sybase, sondern ein Repository zur Verwaltung unstrukturierter InformationenElementare Bausteine, so genannte NOTES (Dokumente), entsprechen einem relationalen RECORDVIEWS (Ansichten) ermöglichen eine bestimmte Sichtweise auf die Datenbankinhalte

Wesentlicher Unterschied zu relationalen DBMSStruktur der "Tabellen" - Zusammensetzung der Spalten und Größe der "Felder" - muss man nicht von vornherein kennenExplizite Tabellendefinition existiert in Notes gar nicht!

Page 56: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Datenbank-Managementsystem 2/2

Einführung

Erfassen von Daten

Nachteile bei fehlender Struktur

Elektronisches Formular zur Eingabe von DatenÄnderungen im Formular werden in allen daraufhin erstellten Dokumenten stillschweigend akzeptiertFlexibilität ergänzt durch die Fähigkeit auch komplexe Objekte zu verwalten (z.B. Bilder, Klänge, ausführbare Objekte)Bestandteile der Applikation wie etwa .css (Cascaded Style Sheets), JavaScript-Codefragmente, Dateien oder Bilder können direkt verwaltet werden

Dynamische Datenmodell ermöglicht keinerlei Prüfung von IntegritätsregelnAufspüren von Inkonsistenzen und Redundanzen bleibt Sache des Anwendungsentwicklers

Page 57: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Replikation 1/2

Einführung

AllgemeinesHerausragende Fähigkeit =>Replikation von DatenbankenSynchronisierung einer Vielzahl von Datenbanken (sog. Repliken) auf geografisch verteilten Rechnern automatisch bzw. periodisch

Ein AnwendungsbeispielEin Unternehmen hat drei Verkaufsniederlassungen, eine in Berlin, eine in Frankfurt und eine in MünchenEs sollen die in einer Domino-Datenbank verwalteten Kundendaten eines Standorts den beiden anderen Standorten zugänglich gemacht werdenAnstatt mühsam die Daten per Diskette oder per FTP hin- und herzuschieben und die an allen Orten vorgenommenen Änderungen manuell abzugleichen, bietet sich der Mechanismus der Replikation anAlle Modifikationen, die zwischen zwei Repliziervorgängen an Repliken vorgenommen wurden, werden automatisch abgeglichen, indem die neueste Modifikation "gewinnt"Kann ein Replikationsmechanismus einen Konflikt nicht auflösen, wird dieser gesondert gekennzeichnet und kann manuell beseitigt werden

Page 58: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Replikation 2/2

Einführung

Weitere Einsatzgebiete im AnwendungsbeispielMobiler Einsatz: ein Verkäufer ist in der Lage alle relevanten Kunden- und Produktinformationen auf einen mobilen Rechner zu replizieren, zu bearbeiten und anschließend mit der Hauptdatenbank abzugleichenAnwendungsentwicklung: Da auch die Gestaltungselemente einer Domino-Datenbank repliziert werden können, können Domino-Anwendungen ohne weiteres verteilt entwickelt werden, indem jeder Entwickler mit seiner eigenen Replik arbeitet. Wird anschließend repliziert, bekommt jeder Entwickler automatisch alle Neuerungen der anderen Teammitglieder.Vorteil: basierend auf dem Replikationsmechanismus ist es ein Leichtes eine Version der Anwendungen weltweit über Nacht zu verteilen

Page 59: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Mail-Routing 1/2

Einführung

AllgemeinesGehört von Anfang an zum Kern von Notes DominoDie am häufigsten in Anspruch genommene (oftmals sogar das einzige) Funktion eines Domino-System

StandardsProprietäre Notes-Mail-Format (Notes Rich-Text)Internet-kompatible SMTP mit MIME-basierter E-Mail-Darstellung

Page 60: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Mail-Routing 2/2

Einführung

Sicherheit

Beziehung zwischen DBMS und Mail-Routing

Bei SMTP: Domino SSL (zur sicheren Übertragung) sowie X-509-Zertifikate (zum Verschlüsseln und Signieren von Nachrichten)Sonst: proprietäre Notes-Zertifikate

Datenbankfunktionalität beim Zwischenlagern als auch beim Zustellen von E-MailsEine E-Mail ist in der Notes Welt - unabhängig von Rich-Text oder MIME-Format, nichts anderes als ein Dokument (NOTE)

Page 61: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Information Retrieval 1/2

Einführung

Allgemeines

Mechanismus "Ansichten"

"Unstrukturierte" Datenbankkonzept impliziert, das den klassischen Abfragesprachen wie SQL ("Structured" Query Language) im Lotus-Umfeld Grenzen gesetzt sindLotus entwickelte dafür alternative Mechanismen der Informationssuche

Ansichten sind nicht einfach vordefinierte Mechanismen der Selektion und Projektion, sondern vielmehr echte "Objekte", die auf bestimmte Ereignisse reagieren und vom Benutzer aktiv manipuliert werden könnenInformationssuche in den Ansichten setzt voraus, dass der Suchende über den Inhalt und die Struktur recht gut informiert ist

"Unstrukturiertes" Datenbankkonzept impliziert, das den klassischen Abfragesprachen wie SQL ("Structured" Query Language) im Lotus-Umfeld Grenzen gesetzt sindLotus entwickelte dafür alternative Mechanismen der Informationssuche

Page 62: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Information Retrieval 2/2

Einführung

Mechanismus "Volltextsuche"

Mechanismus "Agenten"

Analog zum World Wide WebDomino verfügt standardmäßig über eine Volltextsuchmaschine, welche einzelne Datenbanken, Server und sogar ganze Domänen (Gruppen von Servern und Dateisystemen) indizieren und dem Benutzer zur Verfügung stellen kann

Kleine, eigenständige Programme, welche zur Automatisierung bestimmter, routinemäßig anfallender Aufgaben eingesetzt werdenEinsatzbereich der Agenten geht weit über das Information Retrieval hinaus, allerdings stellen sie in diesem Bereich eine interessante Alternative zu den zwei anderen Methoden darInformationen nicht nur automatisch suchen, sondern die Ergebnisse der Suche als Eingabe für weiterreichende Aktionen einsetzen

Page 63: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Integration mit anderen Systemen

Einführung

Nicht immer ist der Einsatz von Notes sinnvoll!

Möglichkeiten einer Integration

Die richtig wichtigen Daten in einem Unternehmen liegen bereits in anderen Systemen vor (z.B. betriebswirtschaftliche Standardsoftware wie SAP R/3, relationale Datenbanken wie Oracle oder in guten alten Host-Anwendungen)Notes-DBMS ist nicht immer die beste Lösung, beispielsweise wenn es sich um große Mengen strukturierter Daten handelt oder die Abwicklung von Transaktionen eine wichtige Rolle spielt

Austausch von gängigsten Dateitypen mittels einfacher Import- und Export-FunktionenAnbindung relationaler Datenbanken über die Open Database Connectivity (ODBC-) SpezifikationAnbindung, über den so genannten Domino Enterprise Connectivity Server (DECS) (als Systemadministrator können "Echtzeitbeziehungen" zwischen Domino und einer beliebigen externen Quelle definiert werden, d.h. die Daten werden in Echtzeit zwischen beiden Systemen ausgetauscht)

Domino sieht sich strategisch in der Rolle der zentralen Middleware- Plattform.

Page 64: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Internet-Kompatibilität

Einführung

Eigenschaften

Möglichkeiten

Großteil der Dienste ist konsequent auch aus einem Internet-Client (Webbrowser, Internetmail und News-Client) nutzbarDabei ist aus Sicht des Systembetreibers kein merkbarer Zusatzaufwand erforderlich

Gateway-Dienste (z.B. SMTP-Router) vermitteln zwischen der proprietären Notes- und der Internet-WeltReine Internet-Funktionen treten gleichzeitig neben alten proprietären Notes-Standards auf

Page 65: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Sicherheit 1/2

Einführung

GründeImmer mehr wichtige Informationen liegen nicht mehr in Papierform vor, sondern werden elektronisch gespeichert und verteilt, wodurch sich für eine potentiellen Angreifer völlig neue Möglichkeiten ergeben

Arten der SicherheitsmaßnahmenBidirektionale Authentifizierung (Datenaustausch zwischen Client/Server, asymetrische Verschlüsselung)Digitale Unterschriften (garantiert die Echtheit elektronischer Nachrichten und Dokumente)Zugriffskontrolle (Berechtigung für bestimmte Operationen auf Server-, Datenbank-, Dokumentebene)Verschlüsselung (Lesen von Nachrichten nur von Personen, die den entsprechenden Schlüssel besitzen)

Page 66: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Sicherheit 2/2

Einführung

Domino-Verzeichnis (zentrales Repository)Zentrale Rolle im Bereich SicherheitBeinhaltet sämtliche Informationen über Benutzer, Gruppen und Server sowie sonstige System- und SicherheitseinstellungenIst vergleichbar mit der Benutzerverwaltung unter Windows NT, UNIX oder Novell NDS

Bei Domino spielt das Thema Sicherheit eine große Rolle!

Page 67: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Unterschiedliche Möglichkeiten des Informationszugriffs ...

Einführung

... bietet die Integration unterschiedlicher Client-Typen sowie unterschiedlicher Modi des Informationszugriffs.

Philosophie der PlattformAlt: proprietärer Notes-ClientNeu: beliebige Client-Typen, insbesondere Webbrowser, aber auch mobile Zugriffsgeräte (z.B. mobile Telefonen und PDA´s) und sogar Produkte der Konkurrenz (z.B. Microsoft Outlook)

Alternativen zur Online-BearbeitungVom Netzwerk abgekoppelten offline-Informationsbearbeitung (im Lotus-Notes-Client oder im Webbrowser durch die so genannten Domino Offline Services)Informationsverteilung in Echtzeit in Form des Instant Messaging

Page 68: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Zentrale Merkmale von Lotus Notes Domino 1/2

Einführung

Replikation

Rapid Application Development and Deployment (RADD)

Von Notes-Datenbanken zwischen Servern oder von Notes-Datenbanken zwischen Notes-Client und Domino-ServerAbgleich verschiedener Instanzen einer verteilten DatenbankMittels Replikation werden nicht nur Daten, sondern auch Design-Elemente (Masken, Views, Agenten etc.) auf alle Server und Clients automatisch verteilt

Mittels Lotus Domino DesignerEntwicklung und Wartung mit geringem Aufwand durch 4GL Senkung der Entwicklungs-, Wartungs- und Administrationskosten im Vergleich zu konventionellen Entwicklungsumgebungen

Page 69: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Zentrale Merkmale von Lotus Notes Domino 2/2

Einführung

Volle Offline FunktionalitätNotes-Anwendung auf einem Domino-Server kann i.d.R. vollständig identisch auf einem Laptop benutzt werden, der offline betrieben wird (z.B. in der Bahn, im Flugzeug)

Integrierte Public-Key-Infrastruktur (PKI)Jeder Notes-Benutzer benötigt eine Notes-User-IDDiese enthält Zertifikate, einen öffentlichen Schlüssel, einen dazu passenden privaten Schlüssel und gegebenenfalls Schlüssel zur symmetrischen VerschlüsselungDasselbe gilt für den Server

Page 70: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Agenda

Einführung

Architektur

Vorteile als Entwickungsplattform

Page 71: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Client/Server-Prinzip 1/2

Architektur

Kein monolithischer Block der gesamten FunktionalitätUnterteilung der Anwendung in mindestens zwei logischen Sichten: Client und Server

Grundlagen

Aufgabe des ServersAuf Anfragen eines oder mehrerer Clients eine bestimmte Funktion bereitzustellen

VorteileErhöhte Effizienz der RessourcennutzungErhöhte Flexibilität des Systems

Page 72: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Client/Server-Prinzip 2/2

Architektur

Lotus Domino ist ein verteiltes System.

Geographische Verteilung

Redundante Verteilung

Funktionale Verteilung

Notes Domino Installationen werden in großen Unternehmen mit tausenden Arbeitsplätzen geografisch verteilt

Performance-Last wird von einem auf mehrere funktionsgleiche Systeme umdisponiert

Aufteilung des Systems in mehrere ModuleModule sind abgestimmt auf einen speziellen Aufgabenbereich und kommunizieren untereinander

Page 73: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

3-Trier-Architektur

Architektur

AllgemeinesAnwendung wird typischerweise in drei Schichten unterteiltJede Schicht kann sowohl als Client als auch als Server fungieren

Die drei SchichtenDatenschicht umfasst alle Funktionen auf der DatenhaltungAnwendungsschicht umfasst die "Regeln" zur Verarbeitung von DatenPräsentationsschicht stellt dem Benutzer die Ergebnisse dar

Lotus Notes Domino ist ein echtes Client/Server-SystemErste Schicht besteht aus Domino-Datenbanken und Domino-ProgrammenZweite Schicht stellt die Präsentation über den Notes-Client (oder Webbrowser) dar

Page 74: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Domino Server 1/2

Architektur

Kern des Domino-Server ist der Datenbank-Server (ermöglicht die gleichzeitige Verwendung einer Datenbank durch mehrere Benutzer)Verfügt aus Performance-Gründen über keine grafische BenutzeroberflächeAnsteuerung des Servers mittels Eingabe von Befehlen über eine KonsoleAnsteuerung des Domino-Servers erfolgt mittels der Eingabe einfacher Befehle an einer Konsole (starten und beenden von Tasks, anzeigen von aktiven Tasks und Benutzer, anstoßen der Replikation von Datenbanken)

Erweiterungen der Kernfunktionalität: Volltextindizierung, Replikationsprozess, Agent-Manager, Calendaring, Scheduling, Mail-Router, Integration in relationale Datenbanken, Legacy-SystemAdministrationsfunktionen: Administrationsprozess (automatisches Monitoring von Server-Prozessen, Generierung von Statistiken, Komprimieren, Reparieren und Verwalten von Datenbanken)Internet-Tasks: HTTP-Task, Mail-Zugriff, NNTP-Server, LDAP-Server, CORBA-konforme Object Request Broker

Weitere Module

Allgemeines

Page 75: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Domino Server 2/2

Architektur

Beispiel Befehletell http quit - anhalten des HTTP-Servers (falls dieser aktiv ist)load http - erneutes Starten des HTTP-Servershow tasks - anzeigen aller aktiven Taskshelp - anzeigen aller Konsolenbefehle des Domino-Servers in komprimierter Form

Page 76: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Agenda

Einführung

Architektur

Vorteile als Entwickungsplattform

Page 77: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Vorteile von Notes Domino als Entwicklungsplattform 1/4

Vorteile als Entwickungsplattform

Integrierte UmgebungEntwicklungsumgebung von der aus sich sämtliche Domino-Dienste einheitlich ansprechen lassenZahlreiche Features (Volltextsuchmaschine, Mail-System, Anbindung an relationale Datenbanken, Sicherheitskonzept)

Prototyping-orientierte EntwicklungIntegrierte Entwicklungsumgebung ermöglicht schnelle prototypische Entwicklung von Anwendungen (Rapid Application Development)Breites Angebot an unterstützten Programmierkonzepten (einfache Aktionen, Formeln, JavaScript, LotusScript, Java)Bereits eingebaute Funktionen

Page 78: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Vorteile von Notes Domino als Entwicklungsplattform 2/4

Vorteile als Entwickungsplattform

DatenbankenVorteil des Domino-Datenbankmodells: Gestaltungselemente und die eigentlichen Datenbankinhalte gehören zum festen Bestandteil einer DatenbankFortgeschrittene Dienste voll nutzbar (z.B. granulierte Zugriffsbeschränkung, Replikation der Anwendungsentwicklung)

Rich-Text StorageHTML-Dokumente können im Dateisystem abgelegt werdenDomino-Datenbanken sind darauf ausgelegt unstrukturierte Inhalte aller Art zu verwaltenVorteile gegenüber herkömmlichen Dateisystemen: feingranulierte Sicherheitskonzepte, Replikation, automatische Indizierung

Page 79: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Vorteile von Notes Domino als Entwicklungsplattform 3/4

Vorteile als Entwickungsplattform

Wiederverwendung durch Schablonen und gemeinsame ElementeEine Schablone ist das Gerüst einer Domino-DatenbankErmöglichen den Aufbau eines Repository von GestaltungselementenVereinfachen die Verteilung von AnwendungenSchablonen bereits vorhanden, z.B. DiskussionsDB, Dokumentenverwaltung, Teamroom, Persönliches Journal

Plattformunabhängigkeit und OffenheitTechnologien, die sich am Markt behaupten können, werden in das Domino-Konzept integriertIntegration von Technologien: Macromedia-Shockwave, Internet Information Server, COM/DCOM, CORBA, ...

Page 80: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Vorteile von Notes Domino als Entwicklungsplattform 4/4

Vorteile als Entwickungsplattform

Internet KompatibilitätDomino-Funktionalität kann (mit geringen Einschränkungen) auch in Internet-Clients genutzt werdenBreites Spektrum an Funktionen und Schnittstellen

Integration mit externen WerkzeugenSeit Version 6 besteht im Domino Designer die Möglichkeit, externe Werkzeuge direkt in die Entwicklungsumgebung einzubindenEntwickler kann somit unterschiedliche Editoren, Werkzeuge zu Performanceanalysen, u.a. direkt aus der Domino-Entwicklungsumgebung aufrufen

Page 81: VL 8 Einführung in Domino Designer LV Groupware- und ...wi.uni-potsdam.de/hp.nsf/0/174CDAD4A6806B0DC12574E90055083D/$… · c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

c Prof. Dr.-Ing. Norbert Gronau, Universität Potsdam

Domino Datenbanken und Alternativen im Vergleich

Vorteile als Entwickungsplattform

Domino Datenbank Dateisystem Relationale Datenbank

Integration mit gängigen

Office-Anwendungen

Insbesondere Lotus-Anwendungen,

teilweise auch MS Office

Sehr gut Nein

Replikation Ja Nein Ja

Verwaltung von strukturierten Inhalten

Geeignet Ungeeignet Sehr gut geeignet

Verwaltung von unstrukturierten

InhaltenGeeignet Geeignet Ungeeignet

Volltextsuche Ja Nein i.d.R. Nein

Sicherheit

Vielzahl von Sicherheitsmechanismen, fein

granulierte Zugriffbeschränkung,

Web-kompatibel

Zugriffsbeschränkung auf der

Betriebssystemebene

Fein granulierte Zugriffsbeschränkung