Administrationshandbuch agorum core Version 7.0.0

Transcription

Administrationshandbuch agorum core Version 7.0.0
Administrationshandbuch
agorum core
Version 7.0.0
Copyright 2008-2012, agorum Software GmbH
01.02.2012, Dokumentenversion 7.0.0
Inhaltsverzeichnis
1. Administration
1.1. Allgemein . . . . . . . . . . . . . . . . .
1.1.1. Beispiel . . . . . . . . . . . . . .
1.2. Benutzer-Verwaltung . . . . . . . . . . .
1.2.1. Benutzer anlegen und bearbeiten
1.2.2. Referenz Benutzer . . . . . . . .
1.2.3. Vorinstallierte Benutzer . . . . .
1.3. Gruppen-Verwaltung . . . . . . . . . . .
1.3.1. Gruppen anlegen und bearbeiten
1.3.2. Gruppenmitglieder hinzufügen . .
1.3.3. Vorinstallierte Gruppen . . . . .
1.4. Rechteverwaltung . . . . . . . . . . . . .
1.4.1. ACL anlegen und bearbeiten . . .
1.4.2. ACL-Mitglieder hinzufügen . . .
1.4.3. Rechte der Mitglieder setzen . . .
1.4.4. ACL speichern . . . . . . . . . .
1.5. Rechte vergeben . . . . . . . . . . . . . .
1.5.1. Vorinstallierte ACLs . . . . . . .
1.6. Rollen . . . . . . . . . . . . . . . . . . .
1.7. Analyse und Fehlersuche . . . . . . . . .
1.7.1. Objekt-Info Masken . . . . . . . .
1.7.2. ACL Überwachung . . . . . . . .
1.7.3. ACL Baum . . . . . . . . . . . .
1.7.4. ACL Struktur . . . . . . . . . . .
1.7.5. Zugriffs-Report . . . . . . . . . .
1.8. The TranslationHelper . . . . . . . . . .
2. MetaDB
2.1. Allgemein . . . . . . . . . .
2.2. Elemente in der MetaDB . .
2.2.1. Property-Bundle . .
2.2.2. Property-Gruppe . .
2.2.3. Property-Eintrag . .
2.3. Grundstruktur der MetaDB
2.4. MetaDB Cache . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7
7
7
8
8
10
13
13
14
14
15
15
16
16
18
19
19
21
21
22
22
25
27
28
30
31
.
.
.
.
.
.
.
33
33
34
34
34
35
36
37
2
Inhaltsverzeichnis
2.5. Einstellungen in der MetaDB für die MetaDB . . . . . . . . . . . . 38
2.6. Einstellungen in der MetaDB für das Hauptsystem (roi) . . . . . . . 38
3. Administration der Protokolleinstellungen
3.1. SMB / CIFS (Netzlaufwerke) . . . . . . . . .
3.1.1. Installation unter Windows . . . . . .
3.1.2. Installation unter Linux . . . . . . . .
3.1.3. Häufige Probleme mit Netzlaufwerken .
3.1.4. Einstellungen . . . . . . . . . . . . . .
3.1.5. SharePoints . . . . . . . . . . . . . . .
3.1.6. Dynamische SharePoints . . . . . . . .
3.2. FTP . . . . . . . . . . . . . . . . . . . . . . .
3.3. WebDAV . . . . . . . . . . . . . . . . . . . . .
3.4. IMAP . . . . . . . . . . . . . . . . . . . . . .
3.4.1. SSL . . . . . . . . . . . . . . . . . . .
3.4.2. Namespaces . . . . . . . . . . . . . . .
3.5. SMTP . . . . . . . . . . . . . . . . . . . . . .
3.6. SMTPExtern . . . . . . . . . . . . . . . . . .
3.6.1. SSL . . . . . . . . . . . . . . . . . . .
3.7. Aus- und eingehende E-Mails . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
40
40
40
47
47
47
51
53
53
54
54
55
55
56
57
57
57
4. Serverpapierkorb
4.1. Allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2. Papierkorb im Administrationsbereich . . . . . . . . . . . . . . . . .
4.3. Filter im Serverpaierkorb . . . . . . . . . . . . . . . . . . . . . . . .
4.4. Gelöschte Objekte im Datei-Bereich . . . . . . . . . . . . . . . . . .
4.5. Ein gelöschtes Objekte über den Serverpapierkorb wieder herstellen
4.6. Einstellungen in der MetaDB . . . . . . . . . . . . . . . . . . . . .
4.7. Bereinigen des Serverpapierkorbes . . . . . . . . . . . . . . . . . . .
60
60
60
60
61
61
62
62
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5. Dokumenten-Historie
63
5.1. Einstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.1.1. Hinweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
6. Der
6.1.
6.2.
6.3.
6.4.
6.5.
Textindex
Einstellungen in der MetaDB . . . . . . . . .
Index Statistik anschauen . . . . . . . . . . .
Problembehandlung/Fehler bei der Indizierung
Index für Pfad-Suche neu aufbauen . . . . . .
Index neu aufbauen . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
66
66
72
72
73
74
7. Der DocumentService
76
7.1. Einstellungen in der MetaDB . . . . . . . . . . . . . . . . . . . . . 76
7.2. Einstellungen für externe Konverterprogramme . . . . . . . . . . . 77
3
Inhaltsverzeichnis
7.3. Umstellen der Textextraktion auf IFilter . . . . . . . . . . . . . . . 77
8. Contenttask
8.1. Der Contenttask MSG . . . . . . . . . . . . . . . . . .
8.1.1. Einstellungen des Contenttasks MSG . . . . . . .
8.2. Der Contenttask EML . . . . . . . . . . . . . . . . . .
8.2.1. Einstellungen des Contenttasks EML . . . . . . .
8.3. Der Contenttask AC.XML . . . . . . . . . . . . . . . .
8.3.1. Einstellungen des Contenttasks AC.XML . . . . .
8.3.2. Beispiel: Zusatzattribute für einen Ordner setzen
8.3.3. Weitere mögliche Datentypen . . . . . . . . . . .
8.3.4. Beispiel: Zusatzattribute für eine Datei setzen . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
79
79
79
80
80
81
81
83
84
85
9. Session-Informationen
86
10.Installierte Module
88
11.ParameterAccessIdentifier
90
11.1. Allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
11.2. Finden von ParameterAccessIdentifiern . . . . . . . . . . . . . . . . 90
11.3. Tabelle der ParameterAccessIdentifier von agorum core . . . . . . . 91
12.Das Adress-Modul
12.1. Einstellungen in der MetaDb für den Adress-Export . . . . . . . . .
12.1.1. Einbinden von EADesigner-Konfigurationen . . . . . . . . .
12.1.2. Erweiterte Attribute, die exportiert werden sollen . . . . . .
13.Das Reporting-Modul
13.1. Allgemein . . . . . . . . . . . . . . . . . . . . . .
13.2. Installation von iReport . . . . . . . . . . . . . .
13.2.1. Installation . . . . . . . . . . . . . . . . .
13.2.2. Einrichten der DataSources . . . . . . . .
13.2.3. Verwenden der DataSources . . . . . . . .
13.3. Installieren von iReport auf dem Server . . . . . .
13.3.1. Vorbereiten des Servers . . . . . . . . . . .
13.3.2. Reports und agorum core . . . . . . . . .
13.3.3. Definition eines Reports . . . . . . . . . .
13.4. Einen definierten Report im Programm verwenden
13.4.1. Über API . . . . . . . . . . . . . . . . . .
13.5. Über WebService . . . . . . . . . . . . . . . . . .
13.6. Drucken . . . . . . . . . . . . . . . . . . . . . . .
13.7. Der Report-Editor . . . . . . . . . . . . . . . . .
13.7.1. Allgemein . . . . . . . . . . . . . . . . . .
13.7.2. Aufruf . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
96
96
96
96
98
98
98
98
99
100
101
101
101
102
108
108
110
111
112
112
112
4
Inhaltsverzeichnis
13.7.3. Definieren von editierbaren Feldern . .
13.8. Einen Report aus dem Client heraus aufrufen
13.8.1. Allgemein . . . . . . . . . . . . . . . .
13.8.2. Beispielaufruf . . . . . . . . . . . . . .
13.8.3. Erklärung . . . . . . . . . . . . . . . .
13.8.4. Beschreibung . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
112
112
112
113
113
113
14.Zusätzliche Module
116
14.1. Das File-Adaptor-Modul . . . . . . . . . . . . . . . . . . . . . . . . 116
14.1.1. Der SMB-Adapter . . . . . . . . . . . . . . . . . . . . . . . 117
14.1.2. Der lokale Filesystem (LFS)-Adapter . . . . . . . . . . . . . 123
14.1.3. Gemeinsames . . . . . . . . . . . . . . . . . . . . . . . . . . 126
14.2. Das Mail-Adaptor-Modul . . . . . . . . . . . . . . . . . . . . . . . . 132
14.2.1. Neuen Mail-Adapter anlegen . . . . . . . . . . . . . . . . . . 132
14.2.2. Filter definieren . . . . . . . . . . . . . . . . . . . . . . . . . 136
14.2.3. Berechtigung . . . . . . . . . . . . . . . . . . . . . . . . . . 138
14.2.4. Kopieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
14.2.5. Mail-Sync / Ordner aktualisieren . . . . . . . . . . . . . . . 139
14.3. Der Metadaten-Designer . . . . . . . . . . . . . . . . . . . . . . . . 140
14.3.1. Erstellen einer neuen Konfiguration . . . . . . . . . . . . . . 141
14.3.2. Verwendung eines Reiters in einer Bearbeitungsmaske . . . . 146
14.3.3. Verwendung eines Reiters der erweiterten Suche . . . . . . . 147
14.3.4. Berechtigung zum Bearbeiten einzelner Konfigurationen . . . 147
14.3.5. Metadaten-Maske in der Suche als Standardmaske öffnen . . 148
14.4. Der Metadaten-Editor . . . . . . . . . . . . . . . . . . . . . . . . . 148
14.4.1. Allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
14.4.2. Freigabe für weitere Benutzer . . . . . . . . . . . . . . . . . 148
14.4.3. Integration in den Windows-Client . . . . . . . . . . . . . . 149
14.5. Metadaten in Listen darstellen . . . . . . . . . . . . . . . . . . . . . 150
14.5.1. Einstellungen in der MetaDB . . . . . . . . . . . . . . . . . 150
14.6. Metadaten-Eingabe beim Speichern von Dokumenten erzwingen . . 152
14.6.1. Einstellungen in der MetaDB . . . . . . . . . . . . . . . . . 152
14.7. Das Search-Highlighting . . . . . . . . . . . . . . . . . . . . . . . . 153
14.7.1. Einstellungen in der MetaDB . . . . . . . . . . . . . . . . . 153
14.8. Das Preview/Vorschau-Modul . . . . . . . . . . . . . . . . . . . . . 154
14.8.1. Einstellungen in der MetaDB zum Hinzufügen von Stempeln 154
14.9. Das PreviewThumbnails-Modul - Vorschau-Bilder in den Listen . . 156
14.9.1. Einstellungen in der MetaDB . . . . . . . . . . . . . . . . . 156
14.10.Das REDDOXX-Modul . . . . . . . . . . . . . . . . . . . . . . . . . 156
14.10.1.TimePhasedAction . . . . . . . . . . . . . . . . . . . . . . . 157
14.10.2.Einstellungen in der MetaDB . . . . . . . . . . . . . . . . . 157
14.11.Das agorum core Sync-Modul . . . . . . . . . . . . . . . . . . . . . 159
14.11.1.Anwendungsfälle für das agorum core Sync-Modul . . . . . . 160
5
Inhaltsverzeichnis
14.11.2.Besonderheiten des agorum core Sync-Modules . . .
14.11.3.Einstellungen der agorum core Sync-Konfiguration .
14.11.4.Synchronisation . . . . . . . . . . . . . . . . . . . .
14.12.Das agorum2go-Modul . . . . . . . . . . . . . . . . . . . .
14.12.1.Installation . . . . . . . . . . . . . . . . . . . . . .
14.12.2.Einrichtung . . . . . . . . . . . . . . . . . . . . . .
Abbildungsverzeichnis
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
161
163
167
171
171
172
174
A. Anhang
177
A.1. Versions-Historie dieses Dokumentes . . . . . . . . . . . . . . . . . 177
A.2. Sonstiges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
6
Kapitel 1.
Administration
1.1. Allgemein
Die Berechtigung von Dateien, Ordnern oder anderen Objekten basiert auf ACLs
(AccessControlLists). Das heißt, es werden Benutzer oder Gruppen (Sammlung
von Benutzern bzw. anderen Gruppen) in ACLs gesammelt und dort die Rechteeinstellungen für die jeweiligen Einträge vorgenommen. Diese Einstellungen können
nur von einem Benutzer mit Administratorrechten vorgenommen werden.
1.1.1. Beispiel
Benutzer A ist Mitglied der Gruppe A. Jetzt wird die Gruppe A in das ACL
ACL A eingefügt und mit der Berechtigung WRITE versehen. Das ACL A wird
nun dem Ordner Ordner A zugeordnet. Das bedeutet, der Benutzer A besitzt
nun Schreibrecht auf den Ordner A. Nun können natürlich weitere Benutzer in
die Gruppe eingefügt werden oder weitere Gruppen bzw. Benutzer in das ACL mit
unterschiedlichen Rechten. (siehe Abbildung 1.1)
7
Kapitel 1. Administration
Abbildung 1.1.: Beispiel Benutzer - Gruppen - ACL
1.2. Benutzer-Verwaltung
Über die Benutzer-Verwaltung können Sie Benutzer anlegen, ändern und löschen.
Sie erreichen die Benutzer-Verwaltung über das Administrationsmenü.
1.2.1. Benutzer anlegen und bearbeiten
Im Benutzerbereich (dorthin gelangen Sie über Administration, siehe Abbildung
1.2) lassen sich neben Benutzern auch Ordner anlegen. Diese dienen nur zur logischen Gruppierung von Nutzern und dient lediglich dem Zweck der Übersichtlichkeit.
Wollen Sie einen neuen Benutzer anlegen, so wechseln Sie in den gewünschten
Ordner und rufen dort über das Menü Vorgang den Menüpunkt Neuer Benutzer
auf. Nun folgen einige Angaben zum Benutzer:
8
Kapitel 1. Administration
Abbildung 1.2.: Administrationsbereich
Reiter Benutzer
Bezeichnung
Benutzername
Aliase
Credential
Passwort
Administrator
Beschreibung
Beschreibung
Geben Sie einen Benutzernamen für diesen Benutzer an. Dieser muss systemweit eindeutig sein.
Er wird zur Anmeldung benötigt.
Einem Benutzer können noch weitere Anmeldenamen zugeordnet werden. Diese können Sie hier,
wenn nötig, mit ’;’ getrennt angeben.
Hier kann ein LDAP Credential ausgewählt werden. Beim Standard roi werden die Benutzer in
einer eigenen Datenbank abgelegt.
Das Passwort für den Benutzer, wird benötigt für
die Anmeldung.
Haken Sie dieses Kästchen an, so wird dieser Benutzer zum Administrator und erhält Systemweit
sämtliche Voll-Rechte.
Hier können Sie eine beliebige Beschreibung für
den Benutzer angeben.
Reiter Profil
9
Kapitel 1. Administration
Bezeichnung
Nachname
Vorname
Email-Adresse
Sender Email-Adresse
Sprache
Mandanten-Kennung
Beschreibung
Geben Sie den Nachnamen des Benutzers an
Geben Sie den Vornamen des Benutzers an
Geben Sie durch Semikolon getrennt, E-MailAdressen, die diesem Benutzer zugeordnet sind,
an.
Geben Sie durch Semikolon getrennt, E-MailAdressen, die dieser Benutzer zum Senden (nicht
zum Empfangen!) verwenden darf.
Die Sprache des Benutzers
Das System kann programmtechnisch an Mandanten angepasst werden. Sollte dies zutreffen, so
tragen Sie hier den Mandanten ein. Für den Standard lassen Sie das Feld leer.
Reiter Rollen
Bezeichnung
Standard Rolle
Zugeordnete Rolle
Rolle
Beschreibung
Hier kann ein anderer Benutzer eingetragen werden. Das bedeutet, dass sich der aktuelle Benutzer
von den Rechten so verhält, wie der zugeordnete.
Hier wird ein Gruppe eingetragen, die alle Benutzer (Rollen) enthält, mit denen dieser Benutzer
sich anmelden darf.
Wenn angehakt, dann ist der Benutzer eine Rolle
(z. Z. hat dieses Attribute keine Funktion).
Für eine ausführliche Beschreibung von Rollen, siehe Kapitel Rollen. Um einen
vorhandenen Benutzer zu bearbeiten, wechseln Sie in den Ordner, in dem sich der
Benutzer befindet, markieren Sie die Checkbox und wählen Sie aus dem Menü Bearbeiten den Punkt Bearbeiten. Die Maske ist analog zur Neuanlage eines Benutzers.
1.2.2. Referenz Benutzer
Mit dieser Funktion lassen sich sehr einfach die Gruppen- und ACL-Einstellungen
von Referenzbenutzern auf einen anderen Benutzer übertragen. Dafür markieren
Sie in der Benutzerliste den Benutzer, der die Gruppen und/oder ACL Einstellungen anderer Benutzer übernehmen soll (hier: Benutzer AA) und wählen im
Menü Vorgang -> Referenz Benutzer. In der jetzt erscheinenden Maske können ein
oder mehrere Referenzbenutzer über eine Suchfunktion ausgewählt werden (hier:
10
Kapitel 1. Administration
Benutzer A). (siehe Abbildung 1.3 und Abbildung 1.4)
Abbildung 1.3.: Referenz Benutzer
Abbildung 1.4.: Auswahl Referenz Benutzer
Auf der folgenden Maske (siehe Abbildung 1.5) gibt es folgende Auswahlmöglichkeiten: Wenn Gruppen angehakt ist, dann wird der gewählte Benutzer (angehakte)
in alle Gruppen der zuvor gesuchten Benutzer eingetragen. Analog passiert dies für
ACLs, wenn ACL angehakt ist. Mit der dritten Checkbox kann man bestimmen,
ob der gewählte Benutzer aus allen Gruppen/ACLs entfernt werden soll, in denen
er gerade ist.
11
Kapitel 1. Administration
Abbildung 1.5.: Auswahl für Gruppen und ACLs des Referenz Benutzers
Auf der letzten Maske können Sie die Gruppen/ACLs, in die der Benutzer eingetragen werden soll nochmals gezielt manipulieren. (siehe Abbildung 1.6)
12
Kapitel 1. Administration
Abbildung 1.6.: Erweiterte Auswahl für Gruppen und ACLs des Referenz Benutzers
1.2.3. Vorinstallierte Benutzer
Name
roi
guest
Beschreibung
Systemadministrator
Gastbenutzer
1.3. Gruppen-Verwaltung
Über die Gruppen-Verwaltung können Sie Gruppen anlegen, ändern und löschen.
Des Weiteren können Sie einer Gruppe neue Mitglieder (Benutzer und andere
Gruppen) zuordnen. Sie erreichen die Gruppen-Verwaltung über das Administrationsmenü.
13
Kapitel 1. Administration
1.3.1. Gruppen anlegen und bearbeiten
Im Gruppenbereich lassen sich neben Gruppen auch Ordner anlegen. Diese dienen
nur zur logischen Gruppierung von Gruppen und dient lediglich dem Zweck der
Übersichtlichkeit. Wollen Sie eine neue Gruppe anlegen, so wechseln Sie in den
gewünschten Ordner und rufen dort über das Menü Vorgang den Menüpunkt Neue
Gruppe auf. Nun folgen einige Angaben zur Gruppe:
Reiter Gruppe
Bezeichnung
Gruppenname
Beschreibung
Beschreibung
Geben Sie einen Gruppennamen für diese Gruppe an. Dieser muss systemweit eindeutig sein. Er
wird zur Administration benötigt.
Hier können Sie eine beliebige Beschreibung für
die Gruppe angeben.
1.3.2. Gruppenmitglieder hinzufügen
Nachdem Sie eine Gruppe angelegt haben, können Sie unterhalb der Gruppe neue
Mitglieder hinzufügen. Wechseln Sie dazu in die entsprechende Gruppe (hier:
Gruppe A) und wählen sie im Menü Vorgang -> Mitglieder hinzufügen (siehe
Abbildung 1.7). In der nun folgenden Maske Gruppenzuordnung können sie über
eine Suchfunktion Benutzer oder andere Gruppen zu der Gruppe hinzufügen.
Eine andere Möglichkeit Mitglieder zu den Gruppen hinzuzufügen ist Kopieren und
Einfügen aus dem Menü zu verwenden. Dafür wird in der Benutzer- oder Gruppenliste ein Benutzer bzw. eine Gruppe markiert und über das Menü Bearbeiten
-> Kopieren in die Zwischenablage kopiert.
Unterhalb der gewünschten Zielgruppe wird dann der Benutzer/die Gruppe mit
Bearbeiten -> Einfügen eingefügt.
14
Kapitel 1. Administration
Abbildung 1.7.: Gruppenmitglieder hinzufügen
Nachdem Sie Benutzer oder Gruppen zu der Gruppe hinzugefügt haben, erscheinen
die Mitglieder in der Gruppenliste. (siehe Abbildung 1.8)
Abbildung 1.8.: Gruppenliste
1.3.3. Vorinstallierte Gruppen
Name
world
Beschreibung
Hier sind alle Benutzer automatisch Mitglied.
1.4. Rechteverwaltung
Über die Rechteverwaltung ACL (Rechte) können Sie ACLs (Acess Controll Lists)
anlegen, ändern und löschen. Des Weiteren können sie einem ACL neue Mitglieder
(Benutzer und Gruppen) zuordnen.
Sie erreichen die Rechteverwaltung über das Administrationsmenü.
15
Kapitel 1. Administration
1.4.1. ACL anlegen und bearbeiten
Im ACL-Bereich lassen sich neben ACLs auch Ordner anlegen. Diese dienen nur
zur logischen Gruppierung von ACLs und dient lediglich dem Zweck der Übersichtlichkeit. Wollen Sie ein neues ACL anlegen, so wechseln Sie in den gewünschten
Ordner und rufen dort über das Menü Vorgang den Menüpunkt Neues ACL auf.
Nun folgen einige Angaben zum ACL:
Reiter ACL
ACL-Name: Geben Sie einen Namen für das ACL an. Dieser muss systemweit
eindeutig sein. Er wird zur Administration benötigt.
Beschreibung: Hier können Sie eine beliebige Beschreibung für das ACL angeben.
1.4.2. ACL-Mitglieder hinzufügen
Nachdem Sie ein ACL angelegt haben, können Sie unterhalb des ACLs neue Mitglieder (Gruppen und Benutzer) hinzufügen. Wechseln Sie dazu in das entsprechende ACL (hier: ACL A) und wählen sie im Menü Vorgang -> Mitglieder hinzufügen.
In der nun folgenden Maske ACL Zuordnung können sie über eine Suchfunktion
Benutzer oder Gruppen zu dem ACL hinzufügen.
Eine andere Möglichkeit Mitglieder zu den ACLs hinzuzufügen ist Kopieren und
Einfügen aus dem Menü zu verwenden. Dafür wird in der Benutzer- oder Gruppenliste ein Benutzer bzw. eine Gruppe markiert und über das Menü Bearbeiten
-> Kopieren in die Zwischenablage kopiert. Unterhalb des gewünschten ACLs wird
dann der Benutzer/die Gruppe mit Bearbeiten -> Einfügen eingefügt.
Des Weiteren können Sie in dieser Liste auch die Reihenfolge der Benutzer bzw.
Gruppen ändern. Das ist nützlich, wenn sie einzelnen Benutzern oder Gruppen
Rechte entziehen wollen. Die Berechtigung wird immer von Oben nach Unten gelesen. Es gilt dann die Berechtigung, die am Ende übrigbleibt. (siehe Abbildung
1.9)
16
Kapitel 1. Administration
Abbildung 1.9.: Beispiel eines ACL mit 1 Benutzer und 1 Gruppe
Beispiel: Es soll ein ACL erstellt werden, durch das Gruppe C Vollzugriff erhält,
Benutzer A (der indirekt Mitglied von Gruppe C ist) darf aber aus Sicherheitsgründen nur lesen.
Lösung:
Die Gruppe Gruppe C wird vor Benutzer A in das ACL eingefügt oder mit
den Pfeilen rechts vom Symbol so verschoben, dass sie vor Benutzer A steht.
Der Gruppe wird das Recht A zugeordnet und dem Benutzer A mit X und A
entzogen. Dann muss Benutzer A nochmals zum ACL hinzugefügt werden und
jetzt wird ihm das Recht R vergeben.
Das funktioniert aber nur, wenn das ACL von Oben nach Unten folgendermaßen
aufgebaut ist:
Name
Gruppe C
Benutzer A
Benutzer A
Beschreibung
Recht A
Recht X und A (dies bedeutet das Recht wird
entzogen)
Recht R (Jetzt bekommt der Benutzer nur noch
Read zugeordnet)
17
Kapitel 1. Administration
1.4.3. Rechte der Mitglieder setzen
Bild
Bezeichnung
Beschreibung
Read
Mitglieder haben Leserechte, dürfen aber
nicht schreiben, ändern oder löschen. Der
Besitzer des Objekts hat Vollzugriff (auch
löschen).
Protected
Mitglieder haben Leserechte, dürfen aber
Objekte nicht ändern oder löschen. Ist ein
Ordner ”Protected”, so dürfen Mitglieder darunter Objekte anlegen. Der Besitzer des Objekts hat Vollzugriff (auch
löschen).
Write
Mitglieder haben Schreibrechte und
dürfen ändern und neu anlegen, aber
nicht löschen. Der Besitzer des Objektes
hat Vollzugriff (auch löschen).
All
Mitglieder
löschen.
haben
Vollzugriff,
auch
Man kann auch Rechte entziehen, was aber nur Sinn macht, wenn ein Benutzer
bzw. eine Gruppe vorher in demselben ACL Rechte bekommen hat. Rechte werden
entzogen, indem zusätzlich das X angehakt wird:
18
Kapitel 1. Administration
Bild
Bezeichnung
Beschreibung
Revoke Read
Leserecht entziehen. Löschen, neu anlegen und bearbeiten geht weiterhin (nicht
sinnvoll).
Revoke
Protected
Protected entziehen.
Revoke Write
Schreibrechte entziehen.
Revoke All
Alle Rechte entziehen.
1.4.4. ACL speichern
Wenn Sie Mitglieder zu einem ACL hinzugefügt oder gelöscht oder die Rechte der
Mitglieder geändert haben, müssen Sie das ACL speichern! Das geht im Menü der
ACL-Liste über Vorgang -> ACL speichern, bzw. Vorgang -> ACL zurücksetzten
wenn Sie Änderungen rückgängig machen wollen.
1.5. Rechte vergeben
Wenn sie ein neues Objekt (in diesem Beispiel Ordner A) angelegt haben, so hat
dieses das Standard-ACL Published. Um das ACL des Ordners zu ändern, wählen
Sie es aus und rufen über das Menü Bearbeiten -> Rechte vergeben die Maske zum
Ändern auf. (siehe Abbildung 1.10)
Abbildung 1.10.: Ordnerliste mit Berechtigungen
19
Kapitel 1. Administration
Hier wird über eine Suchfunktion nach dem gewünschten ACL gesucht (Suchwort
hier: ACL) und das Entsprechende aus der Ergebnisliste ausgewählt (in diesem
Beispiel ACL A).(siehe Abbildung 1.11)
Abbildung 1.11.: ACL Suchen
Des Weiteren gibt es auf der Maske zwei Optionen:
ACL durch Ordnerstruktur vererben: Durch diese Option wird das ACL auch
auf eventuell vorhandene Unterobjekte angewandt (z.B. Unterordner, Dateien, etc. unterhalb des Ordners Ordner A).
Nur an Objekte vererben, die denselben ACL besitzen: Diese Option ist nur
in Kombination mit der vorhergehenden wirksam. Hat ein Unterobjekt ein
anderes ACL als das Ausgangsobjekt, so wird das neue ACL hier nicht vererbt!
Der Ordner Ordner A hat nun das ACL ACL A bekommen. Alle Objekte (Ordner, Dateien, etc.) die jetzt unterhalb dieses Ordners angelegt werden, erben das
ACL ACL A (siehe Abbildung 1.12)
20
Kapitel 1. Administration
Abbildung 1.12.: Ordnerliste mit gesetztem ACL
1.5.1. Vorinstallierte ACLs
Name
Private
Published
Protected
Public
Beschreibung
Nur der Besitzer des Objektes hat Vollzugriff. Alle anderen haben keinen Zugriff auf das Objekt.
Alle Benutzer haben Leserechte, dürfen aber nicht
schreiben, ändern oder löschen. Der Besitzer des
Objektes hat Vollzugriff (auch löschen).
Alle Benutzer haben Leserechte, dürfen aber Objekte nicht ändern oder löschen. Hat ein Ordner
das ACL Protected, so dürfen Benutzer darunter
Objekte anlegen. Der Besitzer des Objektes hat
Vollzugriff (auch löschen).
Alle Benutzer haben Vollzugriff (auch löschen).
1.6. Rollen
Rollen sind eine Variante, sich mit anderen Rechten am System anzumelden. Durch
die Rolle, die einem Benutzer standardmäßig zugeordnet ist, bzw. mit der er sich
anmeldet, erhält der Benutzer alle Rechte, die mit dieser Rolle verbunden sind.
Das verringert den Administrationsaufwand erheblich, da ein Benutzer nicht in
die verschiedenen Gruppen und ACLs eingefügt werden muss, sondern nur eine
Rolle zugeordnet bekommt. Rollen werden durch normale Benutzer repräsentiert,
mit denen sich aber niemand direkt anmelden sollte, bzw. deren Passwort auch
nicht bekannt sein sollte. Rollenbenutzer sind wie normale Benutzer auch Gruppen
und/oder ACLs zugeordnet und definieren so exemplarisch die Zugriffsrechte auf
das System, bzw. stellen so eine Art Benutzervorlage dar.
21
Kapitel 1. Administration
Sollte der Benutzer diese Rechte nicht mehr benötigen, weil er z.B. andere Aufgaben übernommen hat, so können ihm alle Rechte, die mit seiner vorherigen
Aufgabe verbunden waren, auf einfache Weise durch entfernen der Rolle wieder
genommen werden.
Rollen können auch über die Protokolle von agorum core verwendet werden, z.
B. über das SMB-Modul. Die Rollen werden auf der Benutzer-Maske im Reiter
Rollen eingestellt. Der eingetragene Benutzer in Standard Rolle legt die Rolle fest,
mit der der Benutzer standardmäßig angemeldet wird. Die eingetragene Gruppe in
Zugeordnete Rolle enthält alle Benutzer mit denen sich dieser Benutzer anmelden
kann. Dafür benötigt er aber nicht das Passwort der Rollenbenutzer, sondern nur
sein eigenes.
Beispiel: Es gibt die Rollenbenutzer VERTRIEB und VERWALTUNG die
in einer Gruppe ROLLEN zusammengefasst wurden. Diese Rolle wird jetzt beim
Benutzer max.mustermann auf dem Reiter Zugeordnete Rolle eingetragen. Jetzt
kann sich max.mustermann als
max.mustermann@VERTRIEB
oder als
max.mustermann@VERWALTUNG
anmelden und hat dann jeweils die Rechte des Rollenbenutzers.
1.7. Analyse und Fehlersuche
Da die Benutzer-, Gruppen- und ACL-Struktur komplex werden kann, gibt es
einige Werkzeuge zur Analyse und Fehlersuche.
1.7.1. Objekt-Info Masken
Die Objekt-Info Maske steht im ganzen System für jedes Objekt zur Verfügung.
Dazu wird das Objekt in der Listenansicht ausgewählt(durch Klick auf die entsprechende Zeile, ausgewähltes Objekt ist dann farblich hinterlegt) und über das
Menü Ansicht -> Objekt Information die Maske aufgerufen. Die Maske kann sich
geringfügig von Objekttyp zu Objekttyp unterscheiden. Hier wird auf die ObjektInfo Masken von Benutzern, Gruppen und ACLs eingegangen, speziell auf die Reiter Objekt Verknüpfungen (Benutzer und Gruppen), sowie ACL Verknüpfungen
und ACL Verknüpfungen v. gelöschten Objekten (ACLs).
22
Kapitel 1. Administration
Benutzer Objekt-Info Maske
Der interessante Reiter dieser Maske heißt Objekt Verknüpfungen. Hier werden
für den ausgewählten Benutzer (hier: Benutzer A) in einer Baumstruktur die
Gruppen und die ACLs angezeigt, in der er sich direkt oder indirekt befindet.
Hinter den ACLs stehen die Rechte der Mitglieder.
Dieses Beispiel zeigt, dass sich der Benutzer Benutzer A in der Gruppe Gruppe
A, sowie direkt im ACL ACL C befindet. Gruppe A ist Mitglied von ACL A
aber auch von Gruppe C. Die Gruppe Gruppe C befindet sich wiederum in den
beiden ACLs ACL C und ACL B.
Welche Rechte die Mitglieder der ACLs haben lässt sich hinter den ACLs ablesen:
Benutzer A wird das Schreib-Recht (W) in ACL C entzogen (Revoke Access).
Gruppe C dagegen bekommt im ACL ACL C alle Rechte (Grant Access: A).
(siehe Abbildung 1.13)
Abbildung 1.13.: Benutzer Objekt-Info Maske
Gruppen Objekt-Info Maske
Die Gruppen Objekt-Info Maske ist analog zur Benutzer Info-Maske aufgebaut.
Hier werden für die ausgewählte Gruppe (hier: Gruppe A) die Gruppen und
ACLs angezeigt, in denen sie sich befindet. Hinter den ACLs stehen die Rechte der
Gruppe. (siehe Abbildung 1.14)
23
Kapitel 1. Administration
Abbildung 1.14.: Gruppen Objekt-Info Maske, Objektverknüpfungen
Gruppe A ist Mitglied von ACL A und von Gruppe C, Gruppe C ist Mitglied
der ACLs ACL C und ACL B. Die Rechte kann man ebenfalls ablesen: Der
Gruppe Gruppe A wird Schreibrecht (Grand Access: W) im ACL ACL A
zugeordnet. Gruppe C (und damit auch Gruppe A, da sie Mitglied von Gruppe
C ist) bekommt im ACL ACL C alle Rechte (Grant Access: A) und im ACL
B Schreibrechte (Grand Access: W).
ACL Objekt-Info Maske
Die Info-Maske für ACLs enthält zwei für die Rechte-Administration wichtige Reiter: ACL Verknüpfungen und ACL Verknüpfungen v. gelöschten Objekten
Der Reiter ACL Verknüpfungen enthält einen Überblick, welchem (Start)Objekten das ACL zugewiesen wurde. In diesem Beispiel ist es der Ordner Ordner A und all seine Unterobjekte (weitere Ordner, Dateien, etc.), die aber der
Übersichtlichkeit wegen nicht auf der Maske dargestellt werden.
Der Reiter ACL Verknüpfungen v. gelöschten Objekten enthält einen Überblick
aller gelöschten Objekte (die sich aber noch im Mülleimer befinden), denen einmal
das ACL zugewiesen war. Diese Objekte können auf diesem Reiter auch gleich
vollständig gelöscht werden.
Dieser Reiter ist nützlich, wenn man ein ACL löschen will, da dann das ACL auf
keinem Objekt mehr sitzen darf.(siehe Abbildung 1.15)
24
Kapitel 1. Administration
Abbildung 1.15.: ACL Objekt-Info Maske
1.7.2. ACL Überwachung
Mit der ACL Überwachung kann man sich einen Überblick verschaffen was ein
bestimmter Benutzer, bzw. eine bestimmte Gruppe für Rechte im System hat
(hier: Benutzer A). Die Rechte der angezeigten Objekte werden in der Dateiliste
farbig und übersichtlich dargestellt.(siehe Abbildung 1.16)
Abbildung 1.16.: ACL-Überwachung in der Liste - farbige Darstellung der ACLs
Zuerst muss man aus der Benutzer- oder aus der Gruppenliste ein Benutzer/eine
Gruppe markieren und im Menü Ansicht -> ACL Überwachung die Überwachung
einschalten: (siehe Abbildung 1.17)
Abbildung 1.17.: ACL-Überwachung einschalten für einen Benutzer
In der Datei-Liste ist dann die Spalte mit den ACLs farbig gekennzeichnet, je
nachdem was der überwachte Benutzer bzw. die überwachte Gruppe für Rechte
auf das jeweilige Objekt haben. Außerdem sind die Ordner des Verzeichnisbaumes
25
Kapitel 1. Administration
neben der Datei-Liste ebenfalls farbig, nach Rechten des jeweiligen Benutzers auf
das Verzeichnis, gekennzeichnet (siehe Abbildung 1.16).
Die gleiche farbliche Kennzeichnung findet auch in den jeweiligen ACL-Rechte-,
Benutzerverwaltungs- und Gruppenverwaltungsansichten statt. (siehe Abbildungen 1.18, 1.19, 1.20)
Abbildung 1.18.: Farbliche Kennzeichnung der Rechte des überwachten Benutzers/Gruppe in der ACL-Ansicht
Abbildung 1.19.: Farbliche Kennzeichnung der Rechte des überwachten Benutzers/Gruppe in der Benutzer-Verwaltung
26
Kapitel 1. Administration
Abbildung 1.20.: Farbliche Kennzeichnung der Rechte des überwachten Benutzers/Gruppe in der Gruppen-Verwaltung
Die Farben
Die Bedeutung der Farben ist analog zu denen in der ACL-Liste:
Farbe
Beschreibung
Kein Zugriff.
Nur Leserechte.
Darf nur seine eigenen Objekte ändern oder
löschen und neu anlegen.
Darf ändern und neu anlegen, aber nicht löschen.
Vollzugriff. Darf auch löschen.
1.7.3. ACL Baum
Die Maske mit einer farbigen Rechteübersicht der Baumstruktur kann über das
Menü Ansicht -> ACL Baum aufgerufen werden, allerdings nur, wenn für einen
Benutzer/eine Gruppe die ACL Überwachung aktiviert ist (siehe vorhergehendes
Kapitel). Die Maske zeigt dann die Baumstruktur ab dem aktuellen Ordner an. Das
Beispiel zeigt den ACL Baum für Benutzer A, aufgerufen im Ordner Testordner.
(siehe Abbildung ??)
27
Kapitel 1. Administration
Abbildung 1.21.: ACL-Baum
1.7.4. ACL Struktur
Mit diesem Menübefehl kann der Administrator in einer beliebigen Struktur
prüfen, ob alle Grantees (Gruppen und/oder User) dorthin gelangen, wo diese
auch berechtigt sind.
Die Auswertung aller ACL’s und deren Mitglieder wird über das Menü Ansicht - >
ACL Struktur in dem Ordner gestartet, ab dem geprüft werden soll. Je nach Größe
28
Kapitel 1. Administration
der Struktur unterhalb des Startordners kann die Prüfung einige Zeit dauern.
Als Ergebnis werden alle Grantees angezeigt, die noch nicht alle notwendigen Berechtigungen besitzen, um an die unterschiedlichen Orte zu gelangen.
Weiter können jetzt die Grantees angehakt werden, die dann in die entsprechenden
ACLs mit Leserechten (R) eingetragen werden.
Wenn die Liste leer ist, haben alle die in dem Pfad in irgendeinem ACL sind auf
alles Zugriff (Sie können alle Pfade durchwandern). (siehe Abbildung 1.22)
Abbildung 1.22.: ACL Struktur
In dem Beispiel oben wird in der ersten Zeile angezeigt, dass die Gruppe Gruppe
B (Grantee) den Ordner /agorum/roi/files/Testordner/Ordner A (org. Pfad ) mit
dem ACL ACL C (org. ACL A) nicht erreichen kann. Der Grantee Gruppe
B bleibt im Ordner agorum/roi/files/Testordner/Ordner A (Pfad ) hängen, da er
keine Leserechte dafür besitzt und kann somit den org. Ordner nicht erreichen.
Links ist der ACL Baum für Gruppe B zur Verdeutlichung dargestellt. (siehe
Abbildung 1.23)
29
Kapitel 1. Administration
Abbildung 1.23.: ACL Baum Struktur
1.7.5. Zugriffs-Report
Mit dem Zugriffs-Report (erreichbar über das Administrationsmenü) kann ein
PDF-Dokument erstellt werden, das eine ausführliche Übersicht über die Rechteverteilung einer Ordner- bzw. ACL-Struktur im System gibt. Die erzeugten PDFDokumente sind nur einem Administrator zugänglich und befinden sich in dem
Ordner /agorum/roi/Administration/Reports.
Angaben in der Zugriffs-Report Maske:
Reiter Zugriffs-Report
30
Kapitel 1. Administration
Bezeichnung
Startpfad
Gewählte
pen
Benutzer/Grup-
Keine Pfade darstellen
Benutzer darstellen
Gruppen darstellen
Beschreibung
Pfad (immer den Vollpfad angeben), ab welchem
die Berechtigungen angezeigt werden sollen. Es
werden daraufhin nur die Berechtigungen angezeigt, die auch ab diesem Ordner-Zweig verwendet werden.
Hier kann der Report über ein Suchwort und die
Suchergebnis-Liste auf die gewählten Benutzer
und/oder Gruppen beschränkt werden.
Pfadangaben werden im Report nicht dargestellt.
Benutzer werden im Report dargestellt.
Gruppen werden im Report dargestellt.
1.8. The TranslationHelper
The TranslationHelper tool offers a simple possibility to translate the text keys for
all installed agorum core modules into another language. To access the TranslationHelper go to http(s)://IP-OF-AGORUM-CORE/roiwebui/roiwebui_module/tools/
TranslationHelper.jsp and login with an user that is granted with the ParameterAccessIdentifier TranslationHelper.
At the first page you can select the language you want to translate from (From
language) and the language you want to translate to. If you want to translate to
a language that don’t exist yet, you can select the option Custom and enter the
two letter language code (ISO 639) in the first small field an the full language
name in the second field. Here you can find all two letter language codes: http:
//ftp.ics.uci.edu/pub/ietf/http/related/iso639.txt.
When pressing Next you will see an overview of the installed modules with the
total amount of text keys for this module and the amount of missing text keys in
the destination language. Now you can add or modify the translations of the single
modules by pressing the Edit all link or selecting Edit missing to see the missing
translation keys of the destination language. On this page you can also export
all translations for another JBoss (Export JBoss structure) or as the development
project structure (Export Project structure) as ZIP files. You can also import a
ZIP file containing the JBoss structure (Import JBoss structure) into you running
JBoss.
The translation page itself will show 20 text keys per page and you can edit the
next 20 text keys by pressing the Next button or edit the previous 20 text keys by
pressing Prev. To write your changes into the JBoss directory structure just press
31
Kapitel 1. Administration
Save & Back to Modules list.
After changing or adding text keys you have to restart your JBoss to activate the
changes!
32
Kapitel 2.
MetaDB
2.1. Allgemein
Die MetaDB ist ähnlich zur Mircosoft Windows Registry eine KonfigurationsDatenbank (Meta-Datenbank). In der MetaDB werden die meisten Konfigurationen von agorum core und dazugehörigen agorum Modulen abgelegt.
Der Einstieg in die MetaDB befindet sich im Administrationsmenü. (siehe Abbildung 2.1)
Abbildung 2.1.: Einstieg in die MetaDB
33
Kapitel 2. MetaDB
2.2. Elemente in der MetaDB
2.2.1. Property-Bundle
Property-Bundles sind vergleichbar mit Ordnern und dienen zur Strukturierung
der Daten.
Wollen Sie ein neues Property-Bundle anlegen, so wechseln Sie in den Ordner (bzw.
Property-Bundle oder Property-Gruppe), wo das Bundle erstellt werden soll und
rufen dort über das Menü Datei -> Neu den Menüpunkt Property-Bundle auf.
Nun folgen einige Angaben zum Property-Bundle:
Reiter MetaDb
Bezeichnung
Name
Beschreibung
Beschreibung
Geben Sie einen Namen für dieses PropertyBundle an. Dieser muss innerhalb des Zielordners
eindeutig sein.
Geben sie hier eine optionale Beschreibung des
Bundles an.
2.2.2. Property-Gruppe
Property-Gruppen dienen nur der optischen Strukturierung und werden beim
Auslesen bzw. Abfragen eines Property-Eintrages einfach weggelassen.
Wollen Sie eine neue Property-Gruppe anlegen, so wechseln Sie in den Ordner
(Property-Bundle oder Property-Gruppe) wo die Gruppe erstellt werden soll und
rufen dort über das Menü Datei -> Neu den Menüpunkt Property-Gruppe auf.
Nun folgen einige Angaben zur Property-Gruppe:
Reiter MetaDb
Bezeichnung
Name
Beschreibung
Beschreibung
Geben Sie einen Namen für diese PropertyGruppe an. Dieser muss innerhalb des Zielordners
eindeutig sein.
Geben sie hier eine optionale Beschreibung der
Gruppe an.
34
Kapitel 2. MetaDB
2.2.3. Property-Eintrag
Property-Einträge enthalten die eigentlichen Informationen. Es können
Property-Einträge mit verschieden Datentypen angelegt werden, um so verschiedenste Informationen speichern zu können.
Wollen Sie einen neuen Property-Eintrag anlegen, so wechseln Sie in den Ordner
(bzw. Property-Bundle oder Property-Gruppe) wo der Eintrag erstellt werden soll
und rufen dort über das Menü Datei -> Neu den Menüpunkt Property-Eintrag
auf. Nun folgen einige Angaben zum Property-Eintrag:
Reiter MetaDb
Bezeichnung
Name
Datentyp
Wert
Beschreibung
Beschreibung
Geben Sie einen Namen für diesen PropertyEintrag an. Dieser muss innerhalb des Zielordners
eindeutig sein.
Hier kann der Datentyp des Property-Eintrags
ausgewählt werden. Die Beschreibung der möglichen Typen finden sie weiter unten.
Hier wird der eigentliche Wert des PropertyEintrag eingegeben. Der Wert muss abhängig vom
Typ evtl. ein bestimmtes Format aufweisen. Die
Beschreibung, ob ein bestimmtes Format verwendet werden muss, finden sie weiter unten bei der
Beschreibung der Typen.
Geben sie hier eine optionale Beschreibung des
Eintrags an.
Zeichenkette (String)
Dies ist eine ganz normale Zeichenkette. Der Wert hat kein bestimmtes Format.
Zeichenketten-Liste (String-Array)
Dies ist eine Liste mit Zeichenkette. Die einzelnen Zeichenketten werden durch
zwei Pipes (||) voneinander getrennt.
Beispiel: Zeichenkette 1 ||Zeichenkette 2 ||Letze Zeichenkette in der Liste
35
Kapitel 2. MetaDB
Inhalt (Content)
Wie eine Zeichenkette, nur können hier auch Binärdaten (z.B. Bilder, etc.) abgespeichert werden.
Verschlüsselt (Encrypted)
Die eingegebene Zeichenkette wird beim Speichern verschlüsselt und dient zum
Speichern von Passwörtern oder ähnlichem. Folgende Punkte müssen beachtet
werden:
• Die verschlüsselte Zeichenkette kann nicht wieder ausgelesen werden!
• Wird beim Bearbeiten des Property-Eintrags das Wert-Feld leer gelassen,
wird die verschlüsselte Zeichenkette nicht überschrieben!
2.3. Grundstruktur der MetaDB
Hier soll jetzt die Grundstruktur der MetaDB beschrieben werden, ohne aber auf
einzelne Konfigurationen von agorum core oder Modulen einzugehen. Die Konfigurationen der einzelnen Module ist in den jeweiligen Kapiteln beschrieben.
Name
MAIN_ACL_MANAGEMENT
MAIN_COMMON_MANAGEMENT
MAIN_GROUP_MANAGEMENT
MAIN_MACHINE_MANAGEMENT
MAIN_MODULE_MANAGEMENT
MAIN_SERVER_MANAGEMENT
MAIN_USER_MANAGEMENT
Beschreibung
Erweitere Einstellungen zu ACLs.
Kundenspezifische Einstellungen.
Erweitere Einstellungen zu Gruppen.
Erweitere Einstellungen zu Clients.
Hier werden alle Konfigurationen der
agorum Module gespeichert.
Hier werden andere Serverkonfigurationen (IP, Port, Protokoll, etc.) abgelegt.
Erweitere Einstellungen zu Benutzern.
siehe Abbildung 2.2
36
Kapitel 2. MetaDB
Abbildung 2.2.: MetaDB
2.4. MetaDB Cache
Die MetaDB besitzt einen Cache um die Zugriffe auf die MetaDB zu beschleunigen.
Allerdings kann es vorkommen, dass nach einer Konfigurationsänderung in der
MetaDB der Cache nicht sofort aktualisiert wird. Aus diesem Grund gibt es eine
Funktion im Administrationsbereich um den Cache manuell zu leeren und neu
aufzubauen.
Diese Funktion ist im Administrationsbereich über den Menüpunkt MetaDb Cache
zu erreichen. Es öffnet sich eine Maske, in der man wählen kann, ob nach dem leeren
des Caches dieser sofort neu aufgebaut werden soll (Dies kann je nach Größe der
MetaDB einige Momente dauern). siehe Abbildung 2.3
37
Kapitel 2. MetaDB
Abbildung 2.3.: MetaDB Cache leeren
2.5. Einstellungen in der MetaDB für die MetaDB
Unter /MAIN_MODULE_MANAGEMENT/metadb/control finden sich die Einstellungen für
die MetaDB:
Name
Typ
PerformMetaDbWarmup String
Beschreibung
Hier wird festgelegt, ob nach dem
Systemstart der MetaDB Cache
sofort aufgebaut werden soll
Standard
true
2.6. Einstellungen in der MetaDB für das
Hauptsystem (roi)
Unter /MAIN_MODULE_MANAGEMENT/roi/control finden sich die Einstellungen für die
MetaDB:
38
Kapitel 2. MetaDB
Name
Typ
Beschreibung
relations/CopyAttachmentsRelation
String
Hier wird festgelegt, ob beim
Kopieren Verknüpfungen mitkopiert werden sollen
DefaultLanguage
String
Definiert die Standardsprache
des Systems (de oder en)
Standard
false
de
39
Kapitel 3.
Administration der
Protokolleinstellungen
3.1. SMB / CIFS (Netzlaufwerke)
3.1.1. Installation unter Windows
Das SMB/CIFS-Protokoll stellt das DMS-Laufwerk von agorum core bereit. Das
SMB/CIFS-Protokoll verwendet zwei feste Ports (139 und 445) die im Normalfall nicht geändert werden dürfen, da sich sonst Clients nicht mehr verbinden
können.
Unter Microsoft Windows (XP, Server 2003, Vista, Windows 7) ist auf allen Netzwerkadaptern immer SMB/CIFS aktiviert, so dass die Verwendung eines eigenen SMB/CIFS-Servers verhindert wird. Damit die Netzlaufwerksfreigaben von
agorum core trotzdem unter Windows funktionieren gibt es folgende Lösungswege:
• Eine Netzwerkkarte und Verbindung über NetBIOS-Namen
• Eine oder zwei Netzwerkkarte(n) und Verbindung über IP-Adresse
Diese Methoden funktionieren unabhängig davon, welche Windows-Version auf
dem Server, bzw. auf den Windows Arbeitsplätzen eingesetzt wird.
Die empfohlene Methode für den produktiven Betrieb ist die mit
ein/zwei Netzwerkkarte(n) und Verbindung über die IP-Adresse
40
Kapitel 3. Administration der Protokolleinstellungen
Mit einer Netzwerkkarte über die NetBIOS-Bridge
Die NetBIOS-Bridge wird bei der agorum core-Windows-Installation immer mit
installiert und integriert sich so in Windows, dass keine der oben genannten Ports
benötigt werden. Dies ist daher die einfachste Möglichkeit um Netzlaufwerke zur
Verfügung zu stellen, weil (fast) kein manueller Eingriff in Windows notwendig
ist.
Das Verbinden über den NetBIOS-Namen wird nicht für den produktiven Betrieb empfohlen. Verwenden Sie stattdessen eine Verbindung
über IP-Adresse.
Konfigurieren Sie Ihre Firewall (z.B. die Windows-Interne) des Servers für alle
Netzwerkadapter wie folgt:
•
•
•
•
Port 139 (TCP) erlauben
Port 137 (TCP+UDP) erlauben
Port 445 (TCP) sperren
Andere Ports, die von außerhalb erreichbar sein müssen (z.B. Port 80 für das
Webportal, etc.) ebenfalls erlauben.
Netzlaufwerke werden über den NetBIOS-Namen verbunden, also z.B. mit \\
agorumcore\dms
Es gibt ein paar Spezialfälle, in denen diese Methode nicht funktioniert:
• Wenn bestimmte Netzwerk-Einstellungen oder -Konstellationen verhindern,
dass der NetBIOS-Name im Netzwerk bekannt wird (Standard Broadcast
Funktion von Windows).
• Wenn über den NetBIOS-Namen von anderen Subnetzen aus zugegriffen werden soll, kopieren Sie das Programm NetBiosBridge.exe unter INST-VERZ\
agorum\core\scripts in ein beliebiges Verzeichnis eines PC in dem anderen
Subnetz (Voraussetzung: .Net 2.0). Erstellen Sie dann Batch-Scripte zum
Starten und Stoppen der NetBIOS-Bridge. Der NetBIOS-Name (Parameter
netbiosname) muss sich von dem im ursprünglichen Netz unterscheiden!
Befehl zum Starten der Bridge:
1
NetBiosBridge . exe command = start netbiosname = agorumcore2
server = IP - IHRES - AGORUM - CORE - SERVERS port =1139
Befehl zum Stoppen der Bridge:
41
Kapitel 3. Administration der Protokolleinstellungen
1
NetBiosBridge . exe command = stop netbiosname = agorumcore2
• Wenn Sie lokal (vom dem Server aus) auf agorum core Laufwerke zugreifen
wollen, tragen Sie in der hosts-Datei unter Windows-Verzeichnis/system32/
drivers/etc/ eine gültige aber nicht erreichbare IP-Adresse und den vergebenen NetBIOS-NAmen ein. Zum Beispiel:
1
192.168.123.234 agorumcore
Mit einer Netzwerkkarte über die IP-Adresse
Dies ist eine der empfohlene Lösungen für den Produktiveinsatz!
Diese Lösung deaktiviert die windowseigenen Netzlaufwerke, somit
sind diese nicht mehr erreichbar! Es sind nur noch die Netzlaufwerke
von agorum core ansprechbar!
Konfigurieren Sie Ihre (einzige) Netzwerkkarte wie folgt:
• Unter Systemsteuerung → Netzwerkverbindungen klicken Sie mit der rechten
Maustaste auf den entsprechenden Adapter und wählen Eigenschaften aus.
• In der folgenden Maske die Haken der Elemente Client für MicrosoftNetzwerke und Datei- und Druckerfreigabe für Microsoft-Netzwerke entfernen:
42
Kapitel 3. Administration der Protokolleinstellungen
Abbildung 3.1.: Eigenschaften der LAN-Verbindung
• Doppelklick auf das Element Internetprotokoll (TCP/IP) und in der nun
folgenden Maske auf dem Reiter Allgemein über die Schaltfläche Erweitert...
den erweiterten Dialog aufrufen.
• In dieser Maske auf dem Reiter WINS die Option NetBIOS über TCP/IP
deaktivieren:
43
Kapitel 3. Administration der Protokolleinstellungen
Abbildung 3.2.: Erweiterte TCP/IP-Einstellung
• Konfigurieren Sie Ihre Firewall (z.B. die Windows-Interne) des Servers für
den Netzwerkadapter wie folgt:
–
–
–
–
Port 139 (TCP) erlauben
Port 137 (TCP+UDP) erlauben
Port 445 (TCP) sperren
Andere Ports, die von außerhalb erreichbar sein müssen (z.B. Port 80
für das Webportal, etc.) ebenfalls erlauben.
Sie können jetzt ein agorum core Netzlaufwerk über die IP Ihres Netzwerkadapters verbinden, z.B. mit \\10.0.0.50\dms
Mit zwei Netzwerkkarten über die IP-Adresse
Dies ist eine der empfohlene Lösungen für den Produktiveinsatz!
Diese Möglichkeit verwendet eine zweite Netzwerkkarte, auf der die WindowsFreigaben deaktiviert werden und so die agorum core-Freigaben direkt über eine
44
Kapitel 3. Administration der Protokolleinstellungen
IP-Adresse angesprochen werden können. Vorteil ist, dass Sie parallel WindowsFreigaben sowie agorum core-Freigaben nutzen können.
• Unter Systemsteuerung → Netzwerkverbindungen klicken Sie mit der rechten Maustaste auf den Adapter der zweiten Netzwerkkarte (diese muss als
BindAddress (siehe unten) in der MetaDb eingetragen sein) und wählen Eigenschaften aus.
• In der folgenden Maske die Haken der Elemente Client für MicrosoftNetzwerke und Datei- und Druckerfreigabe für Microsoft-Netzwerke entfernen:
Abbildung 3.3.: Eigenschaften der LAN-Verbindung
• Doppelklick auf das Element Internetprotokoll (TCP/IP) und in der folgenden Maske auf dem Reiter Allgemein über die Schaltfläche Erweitert... den
erweiterten Dialog aufrufen.
• In dieser Maske auf dem Reiter WINS die Option NetBIOS über TCP/IP
deaktivieren:
45
Kapitel 3. Administration der Protokolleinstellungen
Abbildung 3.4.: Windows-Dialog für Erweiterte TCP/IP - Einstellungen
• Wenn Sie die zweite Netzwerkkarte nachträglich installiert haben, vergewissern sie sich, das in der MetaDb unter /MAIN_MODULE_MANAGEMENT/
roiprotocols/smb/control/BindAddress die IP der zweiten Netzwerkkarte
eingetragen ist! Nachdem Sie diese Einstellung geändert haben, starten Sie
bitte agorum core neu.
• Wenn Sie agorum core neu installieren, dann geben Sie die Adresse der
zweiten Netzwerkkarte in der Experten-Installation an. (Dort, wo Sie zum
2ten mal nach der IP gefragt werden)
• Konfigurieren Sie Ihre Firewall (z.B. die Windows-Interne) des Servers für
die zweiten Netzwerkkarte wie folgt:
–
–
–
–
Port 139 (TCP) erlauben
Port 137 (TCP+UDP) erlauben
Port 445 (TCP) sperren
Andere Ports, die von außerhalb erreichbar sein müssen (z.B. Port 80
für das Webportal, etc.) ebenfalls erlauben.
Sie können jetzt ein agorum core Netzlaufwerk über die IP Ihres Netzwerkadapters verbinden, z.B. mit \\10.0.0.50\dms
46
Kapitel 3. Administration der Protokolleinstellungen
3.1.2. Installation unter Linux
Bei der Installation unter Linux gibt es nichts zu berücksichtigen, außer wenn
bereits ein anderer SMB/CIFS-Server (z. B. Samba) installiert ist. Dieser belegt
wie auch agorum core die Ports 139 und 445.
Falls Sie so eine Konfiguration besitzen, müssen Sie dafür sorgen, dass agorum
core und der andere SMB/CIFS-Server auf unterschiedliche IP-Adressen, bzw.
Interfaces binden.
Für Samba ändern Sie dazu in der Konfigurationsdatei von Samba (/etc/samba/
smb.conf) den Wert von interfaces auf das zu bindende Interface (z.B. eth0) und
den Wert von bind interfaces only in yes.
Für agorum core passen Sie in der hosts-Datei den Eintrag für roihost so an,
das die IP aus das gewünschte Interface zeigt.
3.1.3. Häufige Probleme mit Netzlaufwerken
• Das Öffnen und Speichern von MS Office Dokumenten dauert sehr lange.
Mögliche Lösungen:
– Auf dem agorum core Server muss auf Port 80 ein Webserver (z.B.
das Webportal von agorum core) laufen.
– Die Proxyeinstellungen des Internet Exporer müssen deaktiviert sein.
• Das Netzlaufwerk ist nicht erreichbar:
– Prüfen Sie, ob in der hosts-Datei (Linux: /etc/hosts, Windows:
Windows-Verzeichnis/system32/drivers/etc/) der Eintrag für roihost
noch vorhanden ist, bzw. auf die richte IP-Adresse zeigt.
3.1.4. Einstellungen
Die allgemeinen Einstellungen werden in der MetaDB unter /MAIN_MODULE_
MANAGEMENT/roiprotocols/smb/control vorgenommen:
47
Kapitel 3. Administration der Protokolleinstellungen
Entry
AllowedObjects
Beschreibung
Liste mit Objekten,
die über SMB/CIFS sichtbar sind.
Hinweis:
Dieser
Eintrag
ist
ein
Link nach /MAIN_
MODULE_MANAGEMENT/
roiprotocols/
webdav/control/
AllowedObjects!
AllowIPC
BindAddress
ConnectionTimeOut
NetBiosBridgePort
OpLockAfterSendTimeOut
PassThruAuth
PassThruPort
Adresse, auf der der
SMB/CIFS-Service
horchen soll.
Zeit in Minuten,
nach der die Verbindung automatisch
vom Server unterbrochen wird, wenn
vom Client nichts
mehr kommt.
Port
für
die
NetBIOS-Bridge
(nur für Windowsinstallationen).
Zeit
in
Millisekunden, die nach
dem Senden eines OplockBreaks
gewartet
werden
soll. Default ist
0, d.h. nicht warten. Braucht man
eigentlich
nicht
setzen, hat aber in
einem bestimmten
Fall (senden von
OpLockBreaks ohne TreeId) etwas
gebracht.
nicht verwendet
nicht verwendet
Standard
FolderObject|| FileObject||
MailObject||
MailDocumentObject||
NoteFileObject||
NoteMediaObject||
D4wAddressNoteFile||
D4wAddressNoteMedia||
D4wForumFile||
D4wForumMedia||
D4wAddressMailingList
true
roihost
720
1139
0
48
Kapitel 3. Administration der Protokolleinstellungen
Entry
PassThruServer
Port1
SessionClass
Beschreibung
nicht verwendet
Erster Port für SMB/CIFS. Dieser Port
sollte nicht geändert
werden!
Zweiter Port für
SMB/CIFS. Dieser
Port sollte nicht
geändert werden!
Nur Intern!
SharePointManagerClass
Nur Intern!
TransactionWaitTime
Maximale
Transaktion-Zeit
in Sekunden. Nach
dieser Zeit wird
auf jeden Fall ein
Commit
gemacht
und dann die Transaktion neu eröffnet.
Zweck ist, das bei
vielen kleinen Dateien nicht laufend
eine
Transaktion
aufund
zugemacht wird, sondern
das diese in einer
Transaktion laufen.
Port2
Standard
139
445
agorum.roiprotocols.smb.
service.roi.RoiSmbSession
agorum.roiprotocols.
smb.service.roi.
RoiSharePointManager
2
49
Kapitel 3. Administration der Protokolleinstellungen
Entry
TransactionWaitTimeNo
CommitAbleCommand
TreeClass
Beschreibung
Bei
Close
und
Flush
wird
die
Transaktion sofort
geschlossen.
Um
dies bei kleinen Dateien zu verhindern,
kann hier eingestellt
werden, nach wie
viel Sekunden dann
tatsächlich ein Commit gemacht wird.
Optimal nach Tests:
1 Sekunde
Nur Intern!
Standard
1
agorum.roiprotocols.smb.
service.roi.RoiSmbTree
Weitere Einstellungen befinden sich unter /MetaDb/MAIN_MODULE_MANAGEMENT/
roiprotocols/smb/control/lockingsettings:
Entry
DoLockObjectNames
Beschreibung
Eine Liste mit Regular Expressions für Dateinamen,
die beim Bearbeiten gesperrt
werden sollen.
UseSessionLock
true bedeutet, wenn eine Datei über SMB zum Schreiben geöffnet wird, diese mit
einem SessionLock gesperrt
wird.
WindowsDefaultLockings Locks, die die Microsoft Produkte unbedingt benötigen,
um festzustellen, ob eine Datei bereits geöffnet ist. Diese
nennen sich ”OLE Semaphores”. Niemand weiss so recht,
was sie bedeuten, aber sie
werden benötigt! Der Aufbau ist folgender: In der Liste werden Byte-Offset und
Byte-Länge durch Komma
getrennt angegeben.
Standard
.*.doc|| .*.xls|| .*.ppt||
.*.txt|| .*.dwg|| .*.vsd
true
2147483540,1 ||
2147483481,1 ||
2147483521,1 ||
2147483539,1 ||
2147483559,1 ||
2147483599,1
50
Kapitel 3. Administration der Protokolleinstellungen
Die angezeigte Größe des Netzlaufwerks (z.B. im Explorer) kann unter /MAIN_
MODULE_MANAGEMENT/roi/control vorgenommen werden:
Entry
TotalDbSize
Beschreibung
Die angezeigte Größe der
Datenbank in Bytes.
Standard
21474836480
GByte)
(20
3.1.5. SharePoints
SharePoints (Freigaben) werden in der MetaDb unterhalb von /MAIN_MODULE_
MANAGEMENT/roiprotocols/smb/control/SharePoints definiert. Der Name des SharePoints wird durch ein Property-Bundle dargestellt (schon vorhanden sind z.B.
files, private, etc.).
Unterhalb dieses Property-Bundles gibt es folgende Property-Einträge:
Entry
ACL
Comment
StartFolder
Beschreibung
Hier kann ein ACL hinterlegt
werden, den der Benutzer,
der dieses Laufwerk verbinden möchte, sehen muss. Damit können für diese Freigabe gezielt Benutzer berechtigt werden. Ist ACL nicht
vorhanden, haben alle Benutzer die Berechtigung für
diese Freigabe. Achtung:
Der ACL der hier vergeben wird, muss sich selbst
als ACL besitzen. Siehe ACL_
RootShare.
Ein Kommentar für diesen
Share.
Gibt an, wo die Freigabe hin
zeigen soll.
Standard
ACL_RootShare
bei der Freigabe root, alle
anderen haben
keinen Default.
Z. B.: /agorum/
roi/ Files
51
Kapitel 3. Administration der Protokolleinstellungen
Entry
UseCache
ReadOnlyUnlockedIncludeFilter
Beschreibung
Soll
der
CachingMechanismus von agorum
core verwendet werden?
Standard sollte hier true
sein. Es macht Sinn den
Mechanismus
auszuschalten, wenn mit sehr großen
Dateien gearbeitet wird
und dieses Share schneller
antworten soll.
Hier stellen Sie Dateinamen
ein, die in diesem Share zuerst einmal ReadOnly sind
(siehe unten)
ReadOnlyUnlockedExcludeFilter Hier
können
beliebige
RegExp-Muster mit || getrennt eingegeben werden.
Diese Beschreiben die Namen der Objekte, die aus
der
ReadOnly-Definition
ausgeschlossen werden.
CaseSensitive
Hier kann eingestellt werden, ob die Groß- Kleinschreibung beachtet wird
Standard
Wenn der Eintrag nicht vorhanden ist, gilt
die normale Berechtigung
-
false
ReadOnlyUnlockedIncludeFilter: Hier können beliebige RegExp-Muster mit
|| getrennt eingegeben werden. Diese Beschreiben die Dateinamen, die in diesem
Share solange ReadOnly sind, bis diese über das Sperrflag von einem Benutzer
gesperrt werden. Danach kann die gesperrte Datei von dem Benutzer earbeitet
werden, der die Sperre vergeben hat. Damit kann ein Share auf ReadOnly gesetzt
werden, unabhängig, welche Berechtigung einzelne Benutzer besitzen. Dieses Flag
gilt nur für Dateien und nicht für Ordner. Auch können neue Dateien angelegt
werden. Nach dem Anlegen können diese Dateien erst nach dem Sperren bearbeitet
werden.
52
Kapitel 3. Administration der Protokolleinstellungen
3.1.6. Dynamische SharePoints
Dynamische
Shares (In der Standardinstallation gibt es ein Beispiel
TestDynamicShare) werden folgendermaßen definiert: Der Schlüssel der hinter ${MetaDb: steht wird in der MetaDb unter MAIN_GROUP_MANAGEMENT/
[GruppenName]/SMBSHARES/[NameDesShares]/StartFolder gesucht. Dabei werden
alle Gruppen durchsucht, in denen der jeweils angemeldete User eingetragen ist.
Wird eine Definition gefunden, so wird der Wert des Property-Eintrags StartFolder
als Startordner für diesen Share verwendet. Wird kein Eintrag gefunden, so wird
/agorum/roi/Files genommen.
3.2. FTP
Alle Einstellungen für das FTP-Protokoll werden in der MetaDb unter /MAIN_
MODULE_MANAGEMENT/roiprotocols/ftp/control vorgenommen:
Entry
DataPortPool
MakeHistory
MaxLogins
Port
Beschreibung
Hier können mehrere PASV
Data-Ports
angegeben
werden, die bei einer Datenübertragung verwendet
werden. Gibt man 0 an, so
wird irgendein freier Port
verwendet.
Legt fest, ob DokumentenHistorien erzeugt werden sollen oder nicht. Wenn sehr
große Dateien über FTP
geändert werden (z.B. überschreiben) kann es vorkommen, dass aufgrund von
Timeouts mehrere Historien pro Vorgang geschrieben
werden. Dann ist es sinnvoll diese Option auf false zu
setzten.
Maximale Anzahl der gleichzeitigen FTP Logins.
Port des FTP-Dienstes
Standard
3001 ||3002
true
20
21
53
Kapitel 3. Administration der Protokolleinstellungen
Entry
SelfAddress
ServerAddress
Beschreibung
The default host is roihost.
It can be used on a multihomed host.
Behind firewall, we need real
inet address that from ISP
Standard
roihost
roihost
3.3. WebDAV
Alle Einstellungen für das WebDAV-Protokoll werden in der MetaDb unter /MAIN_
MODULE_MANAGEMENT/roiprotocols/webdav/control vorgenommen:
Entry
AllowedObjects
Beschreibung
Liste mit Objekten, die
über WebDAV sichtbar
sind.
Hinweis:
Dieser
Eintrag ist ein Link nach
/MAIN_MODULE_MANAGEMENT/
roiprotocols/smb/control/
AllowedObjects!
Standard
FolderObject||
FileObject||
MailObject||
MailDocumentObject|| NoteFileObject||
NoteMediaObject||
D4wAddressNoteFile||
D4wAddressNoteMedia||
D4wForumFile||
D4wForumMedia||
D4wAddressMailingList
3.4. IMAP
Alle Einstellungen für das IMAP-Protokoll werden in der MetaDb unter /MAIN_
MODULE_MANAGEMENT/roiprotocols/imap/control vorgenommen:
Entry
AllowedObjects
Beschreibung
Liste mit Objekten, die über
IMAP sichtbar sind. Diese
Objekte müssen von MailObject abgeleitet sein!
Standard
MailObject
54
Kapitel 3. Administration der Protokolleinstellungen
Entry
Beschreibung
MailboxSelectedTimespan Anzahl der Tage, welche die
Zeitspanne definieren, innerhalb der die von IMAP
zurückgelieferten Mails liegen (createDate).
Port
Port des IMAP-Dienstes.
SSLPort
SSL-Port
des
IMAPDienstes für eine verschlüsselte SSL-Verbindung.
Standard
30
143
993
3.4.1. SSL
Wenn Sie den SSL Port verwenden wollen, muss sichergestellt sein, dass die beiden Einstellungen unter /MAIN_MODULE_MANAGEMENT/roi/control/keystore/ korrekt sind:
Entry
KeystorePassword
KeystorePath
Beschreibung
Passwort der KeyStore Datei
(Property-Eintrag vom Type
Verschlüsselt oder Zeichenkette).
Pfad zur KeyStore Datei.
Standard
changeit
${HomeDir}/.keystore
3.4.2. Namespaces
agorum core bietet die Möglichkeit verschiedene Namespaces für IMAP zu definieren. Mit einem Namespace kann unter IMAP ein Einstieg in einen (meist
öffentlichen) Bereich definiert werden.
Es gibt drei verschiedene Namespaces-Typen:
personal Persönlicher Namespace des angemeldeten Benutzers. Normalerweise
gibt es nur den standardmäßig aktivierten, persönlichen Namespace.
otherusers Namespace über den ein angemeldeter Benutzer Zugriff auf die Mailboxen anderer Benutzer erhält. Der angemeldete Benutzer muss für den Zugriff
entsprechend berechtigt sein. Normalerweise gibt es maximal einen Namespace dieser Art.
55
Kapitel 3. Administration der Protokolleinstellungen
shared Öffentlicher Namespace. Von diesem Namespace kann es beliebig viele geben.
Die
Definition
der
Namespaces
liegt unter /MAIN_MODULE_MANAGEMENT/
roiprotocols/imap/control/Namespaces. Hier ist bereits für jeden NamespaceTyp (personal, otherusers und shared ) ein Beispiel vordefiniert, wobei jedoch nur
der Namespace Private (Typ: personal ) aktiviert ist.
Wenn weitere Namespaces definiert werden sollen, dann muss unter /MAIN_MODULE_
MANAGEMENT/roiprotocols/imap/control/Namespaces ein Property-Bundle mit beliebigem Namen angelegt werden. Unterhalb dieses Bundles müssen jetzt folgende
Property-Einträge mit den im Folgenden beschriebenen Inhalten angelegt werden:
Entry
Active
Comment
Name
StartFolder
Type
Beschreibung
Definiert, ob dieser Namespace aktiv ist oder nicht
Kommentar für diesen Namespace. Dieser PropertyEintrag hat keine Bedeutung
für die Funktionalität und
kann weggelassen werden.
Der Name des Namespaces.
Startpfad des Namespaces.
Achtung: In dem Startordner selber sollten keine Mails
liegen, da dieser von einigen
Mail-Clients nicht selektiert
werden kann!
Der Typ des Namespaces.
Werte
true oder false
/agorum/roi/Files/
Gruppenposteingnge
personal,
oder shared
otherusers
3.5. SMTP
Mit dem SMTP-Dienst werden E-Mails für die Systembenutzer empfangen.
Alle Einstellungen für das SMTP-Protokoll werden in der MetaDb unter /MAIN_
MODULE_MANAGEMENT/roiprotocols/smtp/control vorgenommen:
Entry
Port
Beschreibung
Port des SMPT-Dienstes.
Standard
2500
56
Kapitel 3. Administration der Protokolleinstellungen
3.6. SMTPExtern
Über den SMTPExtern-Dienst können Benutzer E-Mails über einen Client (z.B.
Microsoft Outlook oder Mozilla Thunderbird) versenden.
Alle Einstellungen für das SMTPExtern-Protokoll werden in der MetaDb unter
/MAIN_MODULE_MANAGEMENT/roiprotocols/smtpextern/control vorgenommen:
Entry
Port
SSLPort
Beschreibung
Port des SMPTExternDienstes.
SSL-Port des SMPTExternDienstes für eine verschlüsselte SSL-Verbindung.
Standard
2501
587
3.6.1. SSL
Wenn Sie den SSL Port verwenden wollen, muss sichergestellt sein, dass die beiden Einstellungen unter /MAIN_MODULE_MANAGEMENT/roi/control/keystore/ korrekt sind:
Entry
KeystorePassword
KeystorePath
Beschreibung
Passwort der KeyStore Datei
(Property-Eintrag vom Type
Verschlüsselt oder Zeichenkette).
Pfad zur KeyStore Datei.
Standard
changeit
${HomeDir}/.keystore
3.7. Aus- und eingehende E-Mails
Alle Einstellungen für aus- und eingehende E-Mails werden in der MetaDb unter
/MAIN_MODULE_MANAGEMENT/roi/control/mail vorgenommen:
57
Kapitel 3. Administration der Protokolleinstellungen
Entry
AddFilenameToMailsubject
AllowedMailAttachment
Objects
EmailDomain
MailserverHostaddress
MailserverPort
MailserverUser
Beschreibung
Legt fest, ob in allen Listen und Masken
des Webportals nicht nur
der Betreff der Mail
angezeigt wird, sondern
zusätzlich auch der (interne) Dateiname der
Mail.
Liste mit Objekten, die
an eine Mail angehängt
werden dürfen.
Name
der
E-MailDomain für die agorum
core Installation.
Adresse (IP oder Hostname) des Mail-Relays,
über das ausgehende
Mails versendet werden.
Port des Mail-Relays,
über das ausgehende
Mails versendet werden.
Benutzername für die
Authentifizierung
des
Mail-Relays, über das
ausgehende Mails versendet werden. Wenn
das Relay keine Authentifizierung erfordert,
kann diese Einstellung
leer gelassen werden.
Standard
false
FOLDERDOCUMENT
OBJECT ||
MailObject|| FILEOBJECT ||
ROITESTOBJECT ||
MailDocumentObject||
AttributeXMLObject||
AttributeDTDObject||
ObjectFileObject|| NoteFileObject||
D4wForumFile||
ObjectMediaObject||
NoteMediaObject||
D4wForumMedia||
NoteObject
agorumcore.com
localhost
25
58
Kapitel 3. Administration der Protokolleinstellungen
Entry
MailserverPassword
Beschreibung
Passwort für die Authentifizierung des MailRelays, über das ausgehende Mails versendet
werden. Wenn das Relay keine Authentifizierung erfordert, kann diese Einstellung leer gelassen werden.
Standard
59
Kapitel 4.
Serverpapierkorb
4.1. Allgemein
Der Serverpapierkorb bietet dem Administrator, aber auch Benutzern, die Möglichkeit, versehentlich gelöschte Objekte wieder herzustellen. Mit dem Serverpapierkorb von agorum cor e ist es auch möglich, komplette Ordnerstrukturen wieder
herzustellen!
Werden Objekte über das DMS-Laufwerk gelöscht und der Filter ExcludeObjectsByName (siehe unten) greift, so werden diese Objekte trotzdem mit einem Verfallsdatum von 10 Minuten in den Papierkorb gelegt.
4.2. Papierkorb im Administrationsbereich
Der Serverpapierkorb im Administrationsbereich des Portalmenües (Administration -> Serverpapierkorb) ist nur für Administratoren zugänglich und zeigt eine
(gefilterte) Liste aller gelöschten Objekte an.
4.3. Filter im Serverpaierkorb
Wenn der Serverpapierkorb aufgerufen wird, ist die Darstellung gefiltert. Es werden
nur die Objekte dargestellt, die in den letzten 24 Stunden gelöscht wurden. Um
den Filter im Papierkorb zu ändern, wird dieser über das Menü aufgerufen: Ansicht
-> Filter
60
Kapitel 4. Serverpapierkorb
Jetzt wird die Maske des Filters dargestellt. Folgendes kann jetzt über den Filter
eingestellt werden:
1. Name: Hier kann auf den Dokumentnamen gefiltert werden, wobei % für
beliebige Zeichen steht und das für ein einzelnes Zeichen steht. Beispiel, Sie
wollen nach allen Worddateien suchen %.doc. Wenn Sie nach allen Dateien
Suchen möchten, die mit a anfangen wäre das a%
2. Letzte Änderung durch: Hier können Sie einen Username eintragen. Beispiel, Sie wollen alle Dateien sehen die der Demo-User gelöscht hat, dann
tragen Sie hier demo ein.
3. Letzte Änderung: Hier tragen Sie ein, über welchen Zeitraum Sie suchen
wollen. Standard ist hier Aktuelle Zeit - 24 Stunden. Beispiel, sie wollen alle
gelöschten Objekte durchsuchen, dann tragen Sie hier ein Datum ein, das
um soviele Tage in der vergangenheit liegt, wie Ihre Daten im Papierkorb
gehalten werden.
Nachdem Sie den Filter gesetzt haben, können Sie diesen über den Button Übernehmen aktivieren.
Der Filter gilt nur für diese Liste. Wenn Sie den Papierkorb in einer neuen Liste
öffnen, ist wieder der Standard-Filter eingestellt.
4.4. Gelöschte Objekte im Datei-Bereich
Über das Menü Ansicht -> Gelöschte Objekte z.B. in der Datei-Liste können auch
normale Benutzer ihre eigenen, gelöschten Dateien in dem aktuellen Ordner wieder
herstellen (Administratoren sehen in dieser Maske alle gelöschten Objekte aller
Benutzer in dem aktuellen Ordner).
4.5. Ein gelöschtes Objekte über den
Serverpapierkorb wieder herstellen
Wenn Sie ein einzelnes Objekt aus dem Papierkorb wiederherstellen möchten, das
Sie in der Maske im Datei-Bereich (siehe Gelöschte Objekte im Datei-Bereich nicht
auswählen können, da es in einer Struktur steht, die komplett gelöscht wurde,
61
Kapitel 4. Serverpapierkorb
können Sie dieses Objekt über den Serverpapierkorb wieder herstellen. Dazu gehen
Sie wie folgt vor:
1. Serverpapierkorb öffnen
2. Filter so setzen, das Sie das Objekt in der Liste markieren können
3. Objekt markieren und dann kopieren
4. Jetzt das Objekt unter Dateien an den Ort verlinken (Im Menu: Bearbeiten
-> Verlinken), wo es wiederhergestellt werden soll (verlinken deshalb, weil
dann alle Beziehungen von und zu diesem Objekt wieder hergestellt werden,
andere Befehle sind nicht zulässig und es kommt eine Meldung).
4.6. Einstellungen in der MetaDB
Die Einstellungen des Serverpapierkorbes werden in der MetaDB unter /MAIN_
MODULE_MANAGEMENT/roi/control/trashcan vorgenommen:
Entry
Beschreibung
DeleteObjectsExpiration Zeit in Stunden, die ein
Time
gelöschtes Objekt im Papierkorb bleiben soll. Die eingestellte Zeit muss größer wie
eine Stunde sein!
ExcludeObjectsByName Regular Expression für alle Dateinamen, die wirklich
gelöscht werden und nicht in
den Papierkorb geleget werden werden sollen.
Standard
168 (7 Tage)
.*ṫmp|| $.*ḋoc||.*ḃak
4.7. Bereinigen des Serverpapierkorbes
Der Serverpapierkorb wird automatisiert (im Standard jeden Nacht um
0.30 Uhr) bereinigt. Dabei werden alle Objekte, deren Verfallsdatum (ExpirationDate) überschritten wurde gelöscht. Das Intervall kann in der MetaDB mit dem Entry MAIN_MODULE_MANAGEMENT/cronjob/control/[ Services ]
/ExpirationDateService/CronTime angepasst werden.
62
Kapitel 5.
Dokumenten-Historie
Die Dokumenten-Historie ist eine automatische Historie von Dokumentenänderungen.
Administratoren und Benutzer haben Zugriff auf die Dokumenten-Historie eines
Objektes über die Objekt-Info Maske (Objekt markieren und im Menü Ansicht ->
Objekt-Info).
Wenn das Objekt eine Historie hat, dann gibt es in der Objekt-Info Maske einen
Reiter Historie auf dem können Historienobjekte z.B. heruntergeladen, in die Zwischenablage kopiert, wiederhergestellt oder gelöscht werden.
5.1. Einstellungen
Die Einstellungen zur Versions-Historie werden in der MetaDB unter /MetaDb/
MAIN_MODULE_MANAGEMENT/roi/control/changeHistory vorgenommen:
Entry
ExcludeIdList
Beschreibung
Hier können Objekt-IDs, von
den Objekten hinterlegt werden, die NICHT historisiert werden sollen. (Die IDs
erhält man über Ansicht
- Objekt Information) Beispiel: 1044100 ||1044103
Standard
Eintrag ist nicht aktiv
63
Kapitel 5. Dokumenten-Historie
Entry
FirstHistoryAfterCreate
HistoryClassNames
MaxHistoryCounter
NextHistoryTime
NotObjectNameForHis
tory
Beschreibung
Gibt die Zeit in Sekunden
an, ab wann nach einem
Create die erste Historie erstellt wird. Bei einem anderen User wird sofort eine
Änderung erstellt!
Die ClassNames der Objekte, die historisiert werden (mit || getrennt). Achtung: Es muss für jedes Objekt auch eine Implementierung des Restores geben
und evtl. des makeHistoryAufrufes. Also nur Eintragen
bringt nicht viel!
Anzahl der Historien, die
pro Objekt maximal gehalten werden. Alle weiteren
werden dann dem Datum
nach gelöscht, die älteste zuerst. Die Mindestanzahl an
Historien ist 1, auch bei einer geringeren Angabe hier.
Beachten Sie hierzu die untenstehenden Hinweise
Solange warten (in Sekunden), bis eine neue Historie
erstellt wird von einem Objekt. Bei einem anderen User
wird sofort eine Änderung
erstellt!
Regular Expression für alle
Dateinamen, die nicht Historisiert werden. Ein ! als erstes
Zeichen wirkt wie ein NOT
Standard
60
FileObject
10
60
!.*.̇* ||.*ṁdb|| .*
5.1.1. Hinweise
Um die Revisionssicherheit zu gewährleisten wird grundsätzlich eine Historie von
jedem Dokument angelegt (bei der ersten Änderung), um dessen ursprünglichen
64
Kapitel 5. Dokumenten-Historie
Zustand festzuhalten. Diese erste Historie hat eine Sonderstellung und wird auch
nicht mehr durch neuere Versionen überschrieben. Wenn Sie die Historienfunktion
verwenden möchten, um zu einer Vorgängerversion zurückkehren zu können, sollten
Sie also für die Einstellung MaxHistoryCounter mindestens 2 wählen, da sonst
keine neuen Versionen erfasst werden können.
65
Kapitel 6.
Der Textindex
Es wird ein kombinierter Volltext-Index und Attribute-Index erstellt.
Für den Volltext-Index wird der agorum core DokumentService verwendet.
Dafür wird vom Textindex-Service der convertXXX2TXT-Konverter aufgerufen. Für
MS Word Dateien wäre das Beispielsweise der convertDOC2TXT-Konverter, für
PDF’s convertPDF2XT. Die Konfiguration der Konverter ist in der Dokumentation des agorum core DokumentService beschrieben. Falls ein Dokument
kein Text geliefert hat (zum Beispiel bei einem Bild), dann wird automatisch
documenttext.contentnotfound als Inhalt geschrieben, so dass man dadurch alle Dokumente finden kann, die keinen Text geliefert haben.
6.1. Einstellungen in der MetaDB
Unter /MAIN_MODULE_MANAGEMENT/textindexservice/control finden sich die Grundeinstellungen für den Textindex:
Entry
NotIndexedFolders
Beschreibung
Hier können ein oder mehrere Pfade eingegeben werden, ab denen der Textindex nicht mehr indiziert. Alles was aber unterhalb dieser Pfade schon indiziert ist,
bleibt indiziert, bis ein solches Objekt wieder indiziert
werden soll.
Standard
66
Kapitel 6. Der Textindex
Entry
Beschreibung
NotIndexedObjectNames Hier können beliebige Regular Expressions vorgegeben
werden um Dokumente
anhand des Dateinamens
auszublenden.
Beispiel:
\$.*\.doc
blendet
z.B.
~
die Datei mit dem Namen
Standard
~\\$.*\.doc||~.*\
.doc||~\\$.*\.ppt||~.
*\.p||~\\$.*\.xls||~.
*\.xls
~$Dies ist eine Datei.doc
textindexenabled
aus.
Deaktiviert den Textindex.
Bei deaktivierten Index werden die zu indizierenden Dokument gemerkt und indiziert, sobald der Service wieder aktiviert wird.
true
Unter /MAIN_MODULE_MANAGEMENT/textindexservice/control/totextindex finden
sich die Einstellungen für den Service ToTextIndexService:
Entry
Beschreibung
BuildIndexBufferdDocuments Gibt die Anzahl von
Dokumenten an, ab
der die Indizierung
erzwungen wird.
BuildIndexMaxWaitTime
Wenn diese Zeit (in
Sekunden) seit der
letzten Indizierung
erreicht wird, wird
eine Indizierung erzwungen.
Standard
500
300
67
Kapitel 6. Der Textindex
Entry
BuildIndexMinWaitTime
ClassnameNotToTextindex
Beschreibung
Zeit (in Sekunden),
die
mindestens
gewartet wird, bis
indiziert wird. Jedes
mal, wenn ein weiteres Dokument zum
Index hinzugefügt
wird, wird diese
Zeit wieder zurückgesetzt. Erst wenn
innerhalb
dieser
Zeit kein weiteres
Dokument zur Indizierung kam, wird
eine
Indizierung
gestartet. Das dient
dazu, dass bei einer
Menge von Objekten, die schnell
hintereinander erzeugt/geändert
werden, nicht laufend die Indizierung
startet,
sondern
gewartet
wird,
bis eine gewissen
Anzahl zusammenkommt
(maximal
BuildIndexBufferdDocuments)
Objekte dieses Typs
werden von der Indizierung ausgeschlossen.
Standard
300
DOCUMENTTEXTOBJECT,
USERPROFILEOBJECT,
PRIMARYUSERPROFILEOBJECT,
EXTENDEDUSERPROFILEOBJECT,
PROPERTYBUNDLEOBJECT,
PROPERTYOBJECT
Unter /MAIN_MODULE_MANAGEMENT/textindexservice/control/syncdata/indexer
finden sich die Einstellungen zum Indexer:
68
Kapitel 6. Der Textindex
Entry
DoExportIndexToFS
Beschreibung
Wenn
true,
dann
wird der Index auf
Platte
exportiert
(in
das
Verzeichnis
von
ExportIndexDirectory).
Die Suche geht dann über
die Festplatte. Es werden
nur die Unterschiede des
DB-Index und des lokalen
Index ab geglichen. Wird
dieser Parameter wieder
auf false gestellt, so läuft
der DB-Index normal
weiter.
ExportIndexDirectory
Ordner im Dateisystem,
wo die Index-Dateien abgelegt werden.
MaxDocumentsByTransaction Annzahl der Dokumente,
die in einer Transaktion
indiziert werden.
MaxDocumentSize
Die maximale Anzahl von
Bytes, die bei einem Dokument indiziert werden.
Ist das Dokument größer,
wird der Rest des Dokumentes nicht indiziert.
Hintergrund ist, das der
gesamte, zu indizierende
Text in den Speicher gezogen wird und die Gefahr besteht das bei sehr
großen Dokumenten der
Speicher voll läuft!
MaxFieldLength
Interne Lucene Einstllung,
bitte nicht verändern!
Standard
false
/tmp/exported_index
500
5242880
5242880
69
Kapitel 6. Der Textindex
Entry
MaxWaitTime
MergeFactor
MaxMergeDocs
OptimizedFactor
StoreContent
WaitTime
LuceneAnalyzer
LuceneAnalyzerTokenChars
Beschreibung
Zeit in Millisekunden, die
der Index-Prozess wartet, dass laufende Suchen noch beendet werden. Wird die Zeit überschritten, wird die Suche
abgebrochen und der Index gebildet.
Interne Lucene Einstllung,
bitte nicht verändern!
Maximale Anzahl Dokumente für ein LuceneSegment
Interne Lucene Einstllung,
bitte nicht verändern!
Interne Lucene Einstllung,
bitte nicht verändern!
Intervall in Millisekunden,
in dem geprüft wird ob
noch eine Suche läuft.
Der Analyzer, der verwendet wird, um die Worte für den Index zu zerteilen (enthält ein Regelwerk, nach denen Texte
für die Suchmaschine analysiert werden)
Definiert die Sonderzeichen, die NICHT als
Trenner für Suchworte
verwendet werden sollen.
Standardmäßig sind alle
Zeichen
Trennzeichen
außer Buchstaben und
Zahlen (aus sämtlichen
Sprachen). Mit diesem
Parameter können noch
weitere Zeichen definiert
werden, die ebenfalls nicht
zum Trennen eines Wortes
im Index führen sollen
Standard
60000
10
150000
50000
false
100
agorum.roi.
lucene.common.
AgorumAnalyzer
.-_@,%
70
Kapitel 6. Der Textindex
Entry
Beschreibung
WriteAnalyzedAndUnanalyzed Wenn true, dann wird der
Text für jedes Feld für den
Index einmal mit Sonderzeichen und einmal ohne
Sonderzeichen (wie in
Standard
true
LuceneAnalyzerTokenChars
definiert) geschrieben. So
können
die
jeweilige
Werte einmal komplett
und einmal auch nur in
Teilen gesucht werden,
Beispiel: test.doc: kann
als komplettes gefunden
werden, aber auch nur beispielsweise doc . Ist diese
Option deaktiviert (false),
dann kann nur noch die
komplette
Zeichenkette
gefunden werden
GetDocumentTextTimeoutInMSDefiniert in Millisekunden
den Timeout für das Holen von Texten eines Dokumentes (zum Beispiel,
wenn OCR durchgeführt
wird)
900000
Unter
/MAIN_MODULE_MANAGEMENT/textindexservice/control/syncdata/search
finden sich die Einstellungen zur Suche:
Entry
LeftTruncateChars
Beschreibung
MaxClauseCount
Maximale Anzahl von Clauses.
Maximale
Anzahl
der
zurückgelieferten
Suchergenbisse
(-1
bedeutet
unendlich).
MaxHits
Standard
a,b,c,d,e,f,g,h,i,j,
k,l,m,n,o,p,q,r,s,t,
u,v,w,x,y,z,0,1,2,3,
4,5,6,7,8,9
4096
-1
71
Kapitel 6. Der Textindex
Entry
MaxParalellSearch
MaxWaitTime
SearchDelims
WaitTime
Beschreibung
Maximale Anzahl gleichzeitiger Suchen.
Zeit in Millisekunden, die die
Suche wartet, dass der laufende Index-Prozess beendet
wird. Wird die Zeit überschritten, wird die Suche abgebrochen.
Interne Einstllung, bitte
nicht verändern!
Intervall in Millisekunden, in
dem geprüft wird, ob der
Index-Prozess noch läuft.
Standard
4
30000
( )+- ~"^{}
100
6.2. Index Statistik anschauen
Seit Version 6.4.3 gibt es ein Tool zur Darstellung der Index-Statistik. Es zeigt
unter anderem an, wieviel noch zu Indizieren ist. Das Tool erreicht man über
folgende URL: http://IP-VON-AGORUM-CORE/roiwebui/roiwebui_module/tools/
TextIndexStatus.jsp
6.3. Problembehandlung/Fehler bei der Indizierung
Falls beim Indizieren etwas schieft läuft, können über diverse Keywords in
der Suche die betroffenen Objekte gefunden werden. Mit dieser Suche kann
man dann über die Tools-Seite http://IP-VON-AGORUM-CORE/roiwebui/roiwebui_
module/tools/DeleteDocumentText.jsp den Text für die betroffenen Objekte neu
generieren lassen. Diese werden daraufhin neu indiziert.
Es gibt folgende Schlüsselworte:
Schlüsselwort
documenttext.conversionfailed
Beschreibung
Sämtliche Objekte, bei denen allgemein
beim Holen des Textes etwas schief lief
(zum Beispiel aufgrund falscher Ports
beim Documentservice)
72
Kapitel 6. Der Textindex
Schlüsselwort
documenttext.ocr.licenseexpired
documenttext.ocr.unknownexception
Beschreibung
Wenn die Lizenz für das OCR-Modul
überschritten wurde, werden sämtliche weiteren Dokumente mit diesem
Schlüsselwort indiziert. So kann man diese, sobald 1 Monat rum ist, nochmals indizieren lassen
Dieses Schlüsselwort wird verwendet,
wenn allgemein etwas beim OCR schief
läuft (zum Beispiel bei falscher Installation, etc...)
6.4. Index für Pfad-Suche neu aufbauen
Die Pfad-Suche über den Index ist eine neue Funktion, die ab Version 6.4.3 zur
Verfügung steht. Damit diese funktioniert muss für vorhandene Systeme (also, die
die auf diese Version aktualisiert wurden) ein bestimmtes Script aufgerufen werden,
um die Pfad-Suche zu aktivieren. Dies ist nur notwendig, falls die Funktion zur
Pfad-Suche nutzbar sein soll.
Für die Pfadsuche ist ein Neuaufbau des Index notwendig. Dies wurde allerdings
so realisiert, dass dies im Hintergrund passiert. Das bedeutet, man kann immer
noch suchen, auch wenn der Index neu aufgebaut wird. Zudem wurde eine Priorisierung für die Indizierung eingeführt, damit die Pfad-Indizierung nicht den gesamten Idnizierungs-Prozess blockiert: Neue Objekte werden sofort indiziert, dann
folgen aktualisierte Objekte und die letzte Priorität haben Objekte, die zur PfadIndizierung markiert sind.
Die Pfad-Suche kann geziehlt für einzelne Ordner aktiviert werden. Um dies
zu tun, rufen Sie bitte folgende URL in Ihrem Internet-Browser auf: http://
IP-VON-AGORUM-CORE/roiwebui/roiwebui_module/tools/RebuildPathIndex.jsp
Im nun erscheinenden Dialog geben Sie den vollständigen Pfad ein, ab dem
die Reindizierung stattfinden soll. Zum Beispiel /agorum/roi/Files/Demo für den
Demo-Bereich. Wenn die Home-Ordner der Benutzer reindiziert werden sollen,
können Sie Beispielsweise /Home eingeben. Wenn Sie alles reindizieren wollen, dann
reicht / aus. Bedenken Sie dabei, dass alle Objekte in der gesamten Ordnerstruktur
dabei neu indiziert werden. Dies kann je nach Größe Ihrer Datenbank sehr lange
dauern (möglicherweise auch mehrere Tage, aber im Hintergrund).
73
Kapitel 6. Der Textindex
6.5. Index neu aufbauen
Der Index kann von Grund auf neu erstellt werden. Dafür müssen folgende Schritte
ausgeführt werden:
1. Den Ordner /Administration/TextIndexIsInit im agorum core löschen
(Erreichbar im Webportal über den Root-Folder).
2. JBoss runterfahren:
# cd / I N S T A L L A T I O N S V E R Z E I C H N I S / scripts
# ./ roi_jboss stop
3. Mit der Datenbank (Schema roi ) verbinden
• Für MySQL unter Windows:
# cd I N S T A L L A T I O N S V E R Z E I C H N I S \ mysql \ bin
# mysql - uroot -p - hlocalhost roi
• Für MySQL unter Linux:
# cd / I N S T A L L A T I O N S V E R Z E I C H N I S / mysql / bin
# ./ mysql - uroot -p - hlocalhost -- socket =/ tmp / mysql .
agorumcore . sock01 roi
• Für PostgreSQL unter Windows:
# cd I N S T A L L A T I O N S V E R Z E I C H N I S / psql / bin
# psql . exe - Upostgres - hlocalhost -W roi
• Für PostgreSQL unter Linux:
# cd / I N S T A L L A T I O N S V E R Z E I C H N I S / psql / bin
# ./ psql . exe - Upostgres - hlocalhost -W roi
4. In der Datenbank-Konsole folgende Befehle ausführen:
• Für MySQL:
> truncate table index_document_t ;
> truncate table index_content_t ;
> exit ;
74
Kapitel 6. Der Textindex
• Für PostgreSQL:
>
>
>
>
truncate table index_document_t ;
truncate table index_content_t ;
commit ;
\q
Dies kann einige Minuten dauern!
5. JBoss wieder starten:
# cd / I N S T A L L A T I O N S V E R Z E I C H N I S / scripts
# ./ roi_jboss start
6. Die URL http://IP-VON-AGORM-CORE/roiwebui/roiwebui_module/install/
RebuildIndex.jsp aufrufen.
Der Aufbau des kompletten Index kann je nach Datenmenge sehr lange
dauern!
75
Kapitel 7.
Der DocumentService
Der DocumentService ist ein WebService, welcher diverse Operationen mit Dokumenten durchführt. Dazu gehören beispielsweise Konvertierungen, Textextraktion
für den Textindex, drucken, dynamische Dokumentengenerierung (Serienbriefe).
7.1. Einstellungen in der MetaDB
Unter
/MAIN_MODULE_MANAGEMENT/documentservice/control/common/services
befinden sich, unterteilt in MetaDb-Gruppen, die einzelnen DocumentServiceKonverterdefinitionen. Die Konverter für den Textindex befinden
sich unter [ DocumentConverter ] für lokale Konverter und unter
[ RemoteDocumentConverter ] für Konverter auf einem anderen Server.
Unter
/MAIN_MODULE_MANAGEMENT/documentservice/control/common/services/
settings finden sich die Einstellungen für diverse Programme, die von dem
DocumentService verwendet werden, um Dokumente zu Konvertieren. Folgende
Einstellungen für Konverterprogramme sind standardmäßig definiert:
openoffice Hier befinden sich alle Einstellungen um OpenOffice automatisiert zu
starten und zu beenden.
ifilter Hier befinden sich die Einstellungen einen IFilter aufzurufen um ein Dokument zu konvertieren.
externalprogram Das ist ein Beispiel für eigene Konvertierprogramme.
76
Kapitel 7. Der DocumentService
7.2. Einstellungen für externe
Konverterprogramme
Unter /MAIN_MODULE_MANAGEMENT/documentservice/control/services/settings
finden sich die Einstellungen für diverse converter:
Um Beispielsweise ein Batch-File zu definieren, dass zur Konvertierung von einem
bestimmten Dateiformat dienen soll, gehen Sie folgendermaßen vor:
Erstellen Sie unter settings ein Propertybundle, zum Beispiel testconverter. Erstellen Sie darin die folgenden Parameter:
Entry
Executable
Parameters
Beschreibung
Programm, das aufgerufen
werden soll
Parameter für das aufzurufende
Programm
(Array) (Platzhalter sind
Standard
${InputFile} ${OutputFile}
${InputFile} ${OutputFile})
TimeoutInMS
Maximale Wartezeit in Millisekunden für den Prozess.
3600000 (also 1 Stunde)
Jetzt können Sie diese Einstellung in einer Converter-Definition verwenden. Ein
Beispiel ist remoteConvertDWG2PDF.
7.3. Umstellen der Textextraktion auf IFilter
Im Standard wird für die Textextraktion (für den Textindex) von OfficeDokumenten OpenOffice verwendet, für PDF’s kommt PDFBox zum Einsatz. Es
besteht die Möglichkeit für diese und weitere Formate IFilter (siehe www.ifilter.
org) zu verwenden.
Zuerst wird in der MetaDB unter /MAIN_MODULE_MANAGEMENT/documentservice/
control/services/settings/ifilter der Pfad zu dem Hilfsprogramm FiltDump.
exe angepasst. Das Programm muss auf dem selben Rechner liegen, wie agorum
core. Das bedeutet, dass für diese Konfiguration agorum core auf einem
Windows-System laufen muss.
Sollte agorum core auf einem Linux-System laufen so muss ein WindowsSystem mit einer DocumentService-Installation und den IFilter-Programmen zur
77
Kapitel 7. Der DocumentService
Verfügung gestellt werden. Die Konvertierung läuft dann über einen Webserviceaufruf vom agorum core.
Das Programm FiltDump.exe liegt dem Microsoft Platform SDK im Ordner bin
bei. Das Microsoft Platform SDK kann kostenlos bei Microsoft runter geladen
werden. Weiter muss der entsprechende IFilter installiert werden (z.B. der IFilter
für PDF’s von Adobe).
Jetzt muss noch der gewünschte convertXXX2TXT-Konverter angepasst werden.
Die Konvertereinstellungen befinden sich in der MetaDB unter /MAIN_MODULE_
MANAGEMENT/documentservice/control/services/[ DocumentConverter ]. Für jeden Konverter ist eine Klasse definiert, die intern für die Konvertierung aufgerufen wird. Wenn ein Konverter auf den IFilter umgestellt werden soll, so muss
das Entry class unterhalb des gewünschten Konverter-Bundles auf den Wert
agorum.documentservice.server.impl.IFilterConverter geändert werden.
78
Kapitel 8.
Contenttask
Über die Funkton Contenttask können Dateien nach der Neuanlage oder nach
einer Änderung automatisch weiteren Bearbeitungsschritten unterzogen werden.
Ein Beispiel ist der Contenttask MSG. Dieser konvertiert eine msg-Datei, die in
agorum core abgelegt wird, automatisch in eine eml-Datei, die dann von allen
Mailclients darstellbar ist. Das Original (der Inhalt der msg-Datei) bleibt dabei in
der Mail erhalten.
Es gibt im Standard bis jetzt 3 Contenttask-Definitionen.
Die Contenttasks werden in der MetaDB unter /MAIN_MODULE_MANAGEMENT/roi/
control/contenttask definiert
8.1. Der Contenttask MSG
Dieser Contenttask erzeugt aus einer msg-Datei ein agorum core Mailobjekt.
Das Original wird mit in das Mailobjekt abgelegt.
Dies wird nur für msg-Dateien ausgeführt, die direkt in agorum core
abgelegt sind. msg-Dateien, die über einen File-Adaptor eingebunden
sind werden nicht gewandelt.
8.1.1. Einstellungen des Contenttasks MSG
79
Kapitel 8. Contenttask
Entry
Class
DeleteFileAfterTask
Extension
Beschreibung
Hier wird die Java-Klasse
hinterlegt, die für diesen
Contenttask verwendet wird
Hier kann beschrieben werden, was mit der Datei geschieht, wenn der Contenttask gelaufen ist. true = Die
Originaldatei wird gelöscht,
false = die Originaldatei
bleibt erhalten
Hier wird die Dateiendung
eingestellt, auf die diese
Contenttask reagiert.
Standard
agorum.roi.ejb.common.
ContentTaskMsgConverter
true
.msg
8.2. Der Contenttask EML
Dieser Contenttask erzeugt aus einer eml-Datei ein agorum core Mailobjekt. Das
Original wird mit in das Mailobjekt abgelegt.
Dies wird nur für eml-Dateien ausgeführt, die direkt in agorum core
abgelegt sind. eml-Dateien, die über einen File-Adaptor eingebunden
sind werden nicht gewandelt.
8.2.1. Einstellungen des Contenttasks EML
Entry
Class
DeleteFileAfterTask
Beschreibung
Hier wird die Java-Klasse
hinterlegt, die für diesen
Contenttask verwendet wird
Hier kann beschrieben werden, was mit der Datei geschieht, wenn der Contenttask gelaufen ist. true = die
Originaldatei wird gelöscht,
false = die Originaldatei
bleibt erhalten
Standard
agorum.roi.ejb.common.
ContentTaskEmlConverter
true
80
Kapitel 8. Contenttask
Entry
Extension
NewName
Beschreibung
Hier wird die Dateiendung
eingestellt, auf die dieser
Contenttask reagiert.
NewName ist ein Template,
mit dem man vorgeben
kann, wie der Dateiname
letztendlich erzeugt wird.
Es gibt ein Beispiel in der
MetaDb an dieser Stelle,
das sämtliche Platzhalter
zeigt. Diese sind folgende:
CreateDate=Anlegedatum,
SentDate=Sendedatum,
Subject=Betreff,
OriginalName=Ursprünglicher
Dateiname
der
E-Mail,
Extension=Dateiendung,
Id=ID des Mailobjektes
Standard
.eml
8.3. Der Contenttask AC.XML
Dieser Contenttask führt den agorum core XML-Parser mit dieser Datei aus.
Der XML-Parser wird in der Entwicklerdokumentation beschrieben. Damit können
Sie mit einem XML-Script Neuanlagen und Änderungen von Objekten in agorum
core direkt über das DMS-Laufwerk einpflegen. Weiter unten sind einige Beispiele
zum Setzen von Metadaten beschrieben.
Dieser Contenttask reagiert auf Neuanlage einer .ac.xml - Datei und auf das Ändern
einer solchen Datei. Ein Umbenennen einer solchen Datei hat keine Auswirkung
auf die Ausführung.
8.3.1. Einstellungen des Contenttasks AC.XML
81
Kapitel 8. Contenttask
Entry
ACL
AutomaticTaskUser
Class
DeleteFileAfterTask
Extension
Beschreibung
Hier kann auf einen ACL verwiesen werden, der die Benutzer/Gruppen enthält, die
diesen Contenttask nutzen
dürfen (Siehe auch die Anmerkung zum ACL weiter
unten)
Wenn dieser Contenttask bei
der Synchronisation eines
Datei - Adaptors ausgeführt
wird, muss hier ein Benutzer
eingetragen werden, mit dem
die Ausführung stattfindet.
Hier wird die Java-Klasse
hinterlegt, die für diesen
Contenttask verwendet wird
Hier kann eingestellt werden,
was mit der Datei geschieht,
wenn der Contenttask gelaufen ist. true = Die Originaldatei wird gelöscht, false =
die Originaldatei bleibt erhalten. Achtung: Wenn die
Datei gelöscht werden soll,
dauert dies mind. 10 Sekunden, bis die Datei weg ist.
(Verzögertes Löschen)
Hier wird die Dateiendung
eingestellt, auf die dieser
Contenttask reagiert.
Standard
ACL ParseACXml
Im Standard ist hier kein Benutzer eingetragen, was bedeutet, dass dieser Contenttask über Adaptoren nicht
aktiv ist
agorum.roi.ejb.common.
ContentTaskXmlConverter
false
.ac.xml
Anmerkung zum Eintrag ACL:
Das ACL, das dem Entry ACL zugeordnet wird, muss sich selbst als Recht besitzen
(Siehe mitgeliefertes ACL ParseACXml ). Dies ist notwendig, da hier nur abgefragt
wird, ob der Benutzer, der den Contenttask ausführen möchte dieses ACL lesen
kann. Dies bedeutet auch, es reicht READ für alle Benutzer oder Gruppen, die für
dieses ACL gesetzt werden. Wenn der Benutzer dieses ACL nicht lesen kann, wird
der Contenttask auch nicht ausgeführt.
Weiter gilt zu beachten, wenn der Eintrag ACL nicht vorhanden ist, so dürfen
82
Kapitel 8. Contenttask
diesen Contenttask alle Benutzer ausführen.
Verweisen Sie im Entry ACL auf ein ACL, das es nicht gibt, ist dieser Contenttask für alle gesperrt, auch für Administratoren. Natürlich können Sie dies auch
erreichen, wenn Sie diese Contenttask aus der MetaDB löschen oder einfach eine
nicht vorhandene Java-Klasse eintragen.
8.3.2. Beispiel: Zusatzattribute für einen Ordner setzen
Mit agorum core können Sie einem Objekt beliebig viele Zusatzattribute zuordnen. Diese Zuordnung kann auch über ein agorum core XML-Script gemacht
werden. Hier ein Beispiel eines solchen Scriptes:
1 <? xml version = "1.0" encoding =" ISO -8859 -1"? >
2 < ObjectList >
3
< FolderObject >
4
< Update >. </ Update >
5
< ExtendedAttributesXML > <![ CDATA [
6
< Ordnerstatus DataType =" STRING " > offen </ Ordnerstatus >
7
< Ordnertype DataType =" STRING " > testordner </ Ordnertype >
8
]] > </ ExtendedAttributesXML >
9
</ FolderObject >
10 </ ObjectList >
Beschreibung dieses Scriptes:
Beile
Zeile 1
Zeile 2
Zeile 3
Zeile 4
Zeile
Zeile
Zeile
Zeile
Zeile
Zeile
5
6
7
8
9
10
Beschreibung
Diese Zeile muss immer als erste Zeile im XML-File stehen
Start-Tag des XML-Scriptes
Definition des agorum core Objektes
Beschreibung um welches Objekt es sich handelt. Hier handelt
es sich um den übergeordneten Ordner, in dem diese .ac.xml Datei liegt. Dies bedeutet, dass die Attribute auf diesen Ordner gesetzt werden.
Start-Tag für die Attribute, die gesetzt werden sollen
Beschreibung des ersten Attributes, hier Ordnerstatus
Beschreibung des zweiten Attribute, hier Ordnertype
Ende-Tag für die Attribute, die gesetzt werden sollen
Ende-Tag für das Objekt
Ende-Tag für das Script
83
Kapitel 8. Contenttask
Wenn jetzt dieses Script über den Contenttask ausgeführt wird, so werden dem
übergeordneten Ordner 2 Zusatzattribute gesetzt. Diese können Sie über die Objektinfo unter dem Reiter Metadaten sehen.
Sie können dann auch nach diesem Objekt, durch Verwendung dieser Attribute,
suchen:
Hier ein Beispiel einer Suche, das Sie einfach in die Schnellsuche eintippen.
1
ordnerstatus : offen
Diese Suche listet alle Objekte auf, die das Zusatzattribut ordnerstatus haben, und
dieses mit dem Wert offen belegt ist.
Bei der Suche müssen die Namen der Zusatzattribute grundsätzlich
klein geschrieben werden. Also in diesem Beispiel ordnerstatus ist o.k.,
Ordnerstatus ist falsch und es wird nichts gefunden.
Weiteres zur Suche siehe die Benutzerdokumentation.
8.3.3. Weitere mögliche Datentypen
Einschränkungen: INTEGER dürfen max. 10 Stellen haben und hat intern dieses Format : 0000000000 DOUBLE hat intern folgendes format:
=”000000000000000.0000000000
1 <? xml version ="1.0" encoding =" ISO -8859 -1"? >
2 < ObjectList >
3
< FileObject >
4
< Update >./ F o r m a t b e i s p i e l e E x t e n d e d A t t r i b u t e . txt </ Update >
5
< ExtendedAttributesXML > <![ CDATA [
6
< eadDateTime
DataType =" DATE " Format =" yyyyMMddHHmmss
" >20091124000000 </ eadDateTime >
7
< eadDate
DataType =" DATE " Format =" yyyyMMdd
" >20091124 </ eadDate >
8
< eadString
DataType =" STRING " > Das ist ein String </
eadString >
9
< eadInteger
DataType =" INTEGER " >12345 </ eadInteger >
10
< eadDouble
DataType =" DOUBLE " >12.98 </ eadDouble >
11
< eadBoolean
DataType =" BOOLEAN " > true </ eadBoolean >
12
]] > </ ExtendedAttributesXML >
13
</ FileObject >
84
Kapitel 8. Contenttask
14
</ ObjectList >
8.3.4. Beispiel: Zusatzattribute für eine Datei setzen
Hier noch ein Beispiel, wie Zusatzattribute für eine Datei gesetzt werden können.
Wir gehen davon aus, dass Sie eine Datei MeineDatei.pdf haben, für die Sie weitere
Attribute vergeben möchten. Dies können Sie jetzt wie folgt machen:
Als erstes müssen Sie die datei MeineDatei.pdf in den gewünschten Ordner in
agorum core kopieren. Als nächstes kopieren Sie eine zweite Datei MeineDatei.pdf.ac.xml in den selben Ordner. Jetzt werden die Attribute auf die pdf-Datei
gesetzt. Wenn Sie die Datei MeineDatei.pdf.ac.xml jetzt nicht löschen lassen (siehe Einstellungen), können Sie die Attribute immer wieder ändern, indem Sie diese
Datei ändern.
Hier noch der Aufbau der Datei MeineDatei.pdf.ac.xml :
1 <? xml version = "1.0" encoding =" ISO -8859 -1"? >
2 < ObjectList >
3
< FileObject >
4
< Update >./ MeineDatei . pdf </ Update >
5
< ExtendedAttributesXML > <![ CDATA [
6
< Dateistatus DataType =" STRING " > offen </ Dateistatus >
7
< Dateitype DataType =" STRING " > testdatei </ Dateitype >
8
]] > </ ExtendedAttributesXML >
9
</ FileObject >
10 </ ObjectList >
85
Kapitel 9.
Session-Informationen
Mit den Session-Informationen erhält man einen Überblick über die verschiedenen
Dienste, die unter agorum core laufen, die IP-Adresse des jeweiligen Dienstes
und weitere Informationen, wie die Session-ID des Dienstes, der letzte Zugriff, das
Login-Datum und Client-Informationen wer auf den Dienst zugreift. (Abbildung
9.1).
Abbildung 9.1.: Listenansicht der Session Information
Um die Listenansicht der Session Information anzuzeigen gehen Sie im Portalmenü auf den Menüpunkt Administration -> Session Information (siehe Abbildung 9.2).
86
Kapitel 9. Session-Informationen
Abbildung 9.2.: Portalmenü für Session Information
87
Kapitel 10.
Installierte Module
Diese Funktion bietet einen Überblick über alle in agorum core installierten
Module. Es werden der Modulname, die Bezeichnung, die Version, die Anwendungsversion und das Datum der Installation angezeigt (siehe Abbildung 10.1).
Abbildung 10.1.: Listenansicht der Installierten Module
Um die Listenansicht der installierten Module anzuzeigen, gehen Sie im Portalmenü auf den Menüpunkt Administration -> Installierte Module (siehe Abbildung
10.2).
88
Kapitel 10. Installierte Module
Abbildung 10.2.: Portalmenü für Installierte Module
89
Kapitel 11.
ParameterAccessIdentifier
11.1. Allgemein
ParameterAccessIdentifier steuern über ACLs den Zugriff auf OberflächenFunktionen von agorum core, d.h. wenn ein Benutzer einen ParameterAccessIdentifier sieht, also Read(Lese)-Rechte darauf hat, sind bestimmte OberflächenFunktionen für ihn vorhanden, andernfalls fehlen diese.
11.2. Finden von ParameterAccessIdentifiern
So kann ein zugehöriger ParameterAccessIdentifier gefunden werden:
In jedem Projekt gibt es für die Weboberfläche eine Datei:
C:\projekte\cvs\agorum\[Projektname]\web\WEB-INF\config\roiwebui_module\
ParameterController.xml
Dort ist konfiguriert, wie die ParameterAccessIdentifier letztendlich heißen.
Beispiel: MyIcon im Projekt roiwebui:
1
2
3
4
5
6
<! - - MyIcon - Options -->
< ParameterController >
< Identifier > parameter . portalmenu . MyIcon </ Identifier >
< ParameterAccessIdentifier > NewIcon </
ParameterAccessIdentifier >
< Action > OpenFileListAction </ Action >
< Parameters >
90
Kapitel 11. ParameterAccessIdentifier
7
< Parameter >
8
< Name > AreaName </ Name >
9
< Value > PortalMenuRoot </ Value >
10
</ Parameter >
11
< Parameter >
12
< Name > IconImage </ Name >
13
< Value > jump_to_document . gif </ Value >
14
</ Parameter >
15
..
16
..
17 ..
Hier sieht man, dass der Name NewIcon ist, d.h der ACL heißt ACL_PAI_NewIcon
11.3. Tabelle der ParameterAccessIdentifier von
agorum core
ParamterAccessIdentifier
ACL_PAI_AclAdministration_
ACL_PAI_AclList_
ACL_PAI_Adapters_
ACL_PAI_AddressApplyPersons_
ACL_PAI_AddressArea_
ACL_PAI_AddressCSVExport_
ACL_PAI_AddressDepartmentCreate_
ACL_PAI_AddressExport_
Beschreibung
Darf ACL administrieren
in
”Administration
ACL(Rechte)”
→
Sieht den Menübefehl ”Person(en) verwenden”, mit dieser
Funktion kann eine Person, die
im Clippboard ist als Link unter
einer neuen Organisation oder
Abteilung angelegt werden. Es
wird jetzt nur ein neuer Container angelegt, die Person wird
wiederverwendet.
Darf einen Verteiler als CSVDatei exportieren
Darf im Adressbuch unter einer
Organisation eine Abteilung anlegen
Darf Adressen als csv oder Mailingliste exportieren
91
Kapitel 11. ParameterAccessIdentifier
ParamterAccessIdentifier
ACL_PAI_AddressFormLetter_
ACL_PAI_AddressImport_
ACL_PAI_AddressMailingList_
ACL_PAI_AddressMailToMailingList_
ACL_PAI_AddressOrganisationCreate_
ACL_PAI_AddToEventAssistance_
ACL_PAI_AFsMountPointSync_
ACL_PAI_ALfsMountPointCreateUpdate_
ACL_PAI_AMailMountPointCreateUpdate_
ACL_PAI_AMailMountPointSync_
ACL_PAI_ANdsMountPointCreateUpdate_
ACL_PAI_AppCalendarAppointmentCreate_
ACL_PAI_AppCalendarCreate_
ACL_PAI_ASmbMountPointCreateUpdate_
ACL_PAI_AWebDavMountPointCreateUpdate_
ACL_PAI_CheckAclStructure_
ACL_PAI_ClientExecute_
ACL_PAI_ClipboardAttach_
ACL_PAI_ClipboardCopy_
ACL_PAI_ClipboardCut_
ACL_PAI_ClipboardDelete_
ACL_PAI_ClipboardPasteAsLink_
ACL_PAI_ClipboardPaste_
ACL_PAI_DeleteWithoutTrash_
ACL_PAI_DownloadManager_
ACL_PAI_EADesignerAdministration_
ACL_PAI_EmailReplyAll_
ACL_PAI_EventAssistanceActive_
Beschreibung
Darf einen Serienbrief aus einem
Verteiler erstellen
Darf Adressen über eine csvDatei importieren
Darf einen Verteiler anlegen
Darf eine Mail an alle Mitglieder
dieses Verteilers schreiben
Darf im Adressbuch eine Organisation anlegen
Darf einen neuen Kalender anlegen
Darf Objekte an ein Anderes
anhängen
Portalmenü Systemsteuerung →
Metadaten-Designer, darf Reiter
für Erweiterte Attribute entwerfen.
Editmask Mitteilungsoptionen,
kontrolliert, ob die Checkbox
zum aktivieren/deaktivieren für
Benachrichtigungen an andere
Benutzer sichtbar ist.
92
Kapitel 11. ParameterAccessIdentifier
ParamterAccessIdentifier
ACL_PAI_EventAssistanceFilter_
ACL_PAI_EventAssistanceList_
ACL_PAI_EventAssistanceOptions_
ACL_PAI_ExeManList_
ACL_PAI_ExpirationDate_
ACL_PAI_ExtendedSearch_
ACL_PAI_FilesArea_
ACL_PAI_FilesList_
ACL_PAI_ForumArea_
ACL_PAI_GroupAdministration_
ACL_PAI_GroupList_
ACL_PAI_Help_
ACL_PAI_LibraryCreate_
ACL_PAI_Locking_
ACL_PAI_MailList_
ACL_PAI_MetaDbProperty_Administration_
ACL_PAI_MetaDbProperty_Editing_
ACL_PAI_MyFilesArea_
ACL_PAI_MyFilesList_
ACL_PAI_NewExeManProfile_
ACL_PAI_NewFolder_
ACL_PAI_NewIcon_
ACL_PAI_NewMail_
ACL_PAI_NgOsAdminSync_
ACL_PAI_NoteObjectCreate_
ACL_PAI_ObjectEdit_
ACL_PAI_ObjectInfo_
ACL_PAI_ParameterAccessIdentifierList_
ACL_PAI_PDFView_
ACL_PAI_PortalMenuAdministration_
ACL_PAI_PortalMenuControlPanel_
ACL_PAI_PortalMenuPrivateBookmark_
ACL_PAI_PortalMenuPrivate_
ACL_PAI_PortalMenuPublic_
ACL_PAI_QuickView_
ACL_PAI_RootFolderAccess_
Beschreibung
Menüpunkt Ansicht → Filter in
der EA-Liste
Bei der Suche wird der AreaName ausgefiltert
Im textitTeam Bereich → Dateien
Darf Gruppen administrieren
Portalmenü ”Privat Bereich”
Im ”Privat Bereich” ”Eigene Dateien”
Datei → Neu → Favorit
Darf Notizen erstellen
Portalmenü Administration
Portalmenü Systemsteuerung
Portalmenü Eigener Bereich
Portalmenü Team Bereich
93
Kapitel 11. ParameterAccessIdentifier
ParamterAccessIdentifier
ACL_PAI_RSSEventAssistanceListLink_
ACL_PAI_SearchList_
ACL_PAI_SessionInfoAdministration_
ACL_PAI_SetAccess_
ACL_PAI_SingleUpload_
ACL_PAI_SingleUploadParseXMLFile_
ACL_PAI_ShowGlobalToolbarMenu_
ACL_PAI_ShowToolbarMenu_
ACL_PAI_ShowTreeInfoIcon
ACL_PAI_SystemFlagsMask_
ACL_PAI_TimePhasedAction_
ACL_PAI_TranslationHelper_
Beschreibung
Auf der EventAssistance-RSSListe, aktiviert das RSS-LinkTag
Editmask Einzel-Upload, kontrolliert, ob die Checkbox zum
parsen von XML-Dateien sichtbar ist.
Globales Toolbarmenü in Listen,
Kontrolliert, ob in den Listen ein
globales Toolbarmenü erscheinen
soll.
Toolbarmenüs für Objekte in Listen, kontrolliert, ob in den Listen für die einzelenen Objekte
ein Toolbarmenü erscheinen soll.
Info Icon im Tree. Beim Mouseover wird die Description ausgegeben, beim Click Info aufgerufen
Steuert den Zugriff auf den
TranslationHelper (Siehe oben)
ACL_PAI_TrashCanAdministration_
ACL_PAI_UnclosedSmbObjectsAdministration_ Portalmenü Administration →
Geöffnete SMB-Dateien
ACL_PAI_UploadManager_
ACL_PAI_UserAdministration_
ACL_PAI_UserList_
ACL_PAI_UserOptionsPassword_
ACL_PAI_UserOptions_
ACL_PAI_ViewDeletedObjects_
Menüpunkt
Ansicht
→
Gelöschte Dateien anzeigen
in Files und MyFiles
ACL_PAI_WikiCreate_
ACL_PAI_WikiEdit_
ACL_PAI_WikiInEmail_
ACL_PAI_WikiInForum_
94
Kapitel 11. ParameterAccessIdentifier
ParamterAccessIdentifier
ACL_PAI_WikiView_
ACL_PAI_AgorumCoreSync_
Beschreibung
Sieht den Reiter Synchronisation, mit dem die Funktionen des
agorum core Sync-Moduls genutzt werden können.
95
Kapitel 12.
Das Adress-Modul
12.1. Einstellungen in der MetaDb für den
Adress-Export
12.1.1. Einbinden von EADesigner-Konfigurationen
Unter
/MetaDb/MAIN_MODULE_MANAGEMENT/desk4web/address/control/settings
kann eingestellt werden, welche zusätzlichen Suchfelder aus den EADesignerKonfigurationen in der Adress-Export-Maske dargestellt werden sollen.
In diesem Verzeichnis legen Sie einen Property-Eintrag namens EADesignerForExportSearch an und bearbeiten diesen. Der Datentyp ist eine ZeichenketteListe (String-Array). Als Wert können Sie die Namen der im EADesigner erstellten
Konfigurationen separiert durch ||angeben.
12.1.2. Erweiterte Attribute, die exportiert werden sollen
Unter
/MetaDb/MAIN_MODULE_MANAGEMENT/desk4web/address/control/Exporter
können erweiterte Attribute angegeben werden, die beim Adress-Export exportiert
werden sollen.
Hierzu muss unter diesem Verzeichnis ein Property-Bundle mit beliebigem Namen angelegt werden. In diesem Property-Bundle (hier im Beispiel mit dem Namen SampleAttribute müssen folgende Property-Einträge angelegt werden (siehe Abb. 12.1):
96
Kapitel 12. Das Adress-Modul
• Active, mit dem Datentyp Zeichenkette (String). Als Wert tragen Sie true
oder false ein, je nachdem, ob das Attribut beim Adress-Export berücksichtigt werden soll oder nicht.
• ExtendedAttributeExportName, mit dem Datentyp Zeichenkette
(String). Als Wert tragen Sie ein, wie die Spaltenüberschrift in der CSVDatei heißen soll.
• ExtendedAttributeName, mit dem Datentyp Zeichenkette (String). Als
Wert tragen Sie den exakten Namen des erweiterten Attributs, so wie es zum
Bespiel in der definierten EA-Designer-Maske steht ein.
• ObjectTypes, mit dem Datentyp Zeichenketten-Liste (String-Array). Als
Werte können Sie alle Objektnamen, separiert durch ||angeben, für die dieses
Attribut ausgelesen und in die CSV-Datei geschrieben werden soll.
Abbildung 12.1.: Definition eines zusätzlichen Attribute für den Adress-Export
97
Kapitel 13.
Das Reporting-Modul
13.1. Allgemein
Zusammen mit der Bibliothek JasperReports und dem Tool iReport hat man
ein sehr leistungsstarkes Reporting-Modul zur Verfügung. Im folgenden wird jeder Aspekt zur Verwendung des Moduls im Zusammenhang mit agorum core
erläutert.
13.2. Installation von iReport
13.2.1. Installation
• iReport-0.5.2.zip entpacken nach
c:\tools\Reporting
• die Dateien
agorum-reporting.jar, agorum_reporting_client.jar und agorum-commons.jar
in das Verzeichnis
c:\tools\Reporting\iReport-0.5.2\lib
kopieren
• starten mit
98
Kapitel 13. Das Reporting-Modul
c:\tools\Reporting\iReport-0.5.2\iReport.bat
13.2.2. Einrichten der DataSources
Um die Reports testen zu können, wurden DataSources entwickelt, die CSV Dateien laden können. Im folgenden wird beschrieben, wie man diese in iReport
verwendet:
Es werden zwei DataSources angeleget, eine als Haupt-Datenquelle und eine für
einen SubReport:
• iReport starten
• Im Menü ”Datenquelle”, ”Verbindungen/Datenquellen” wählen
Hauptdatenquelle:
• New anklicken
• Als Datenquellen-Typ ”Custom JRDataSource” wählen
• Als Name ”TestDataSourceCSV” eintragen
• Als Factory Class ”agorum.reporting.datasources.csv.JRCSVHashTest” eintragen
• Als Method ”getTheDatasource” eintragen
• Save drücken
Subdatenquelle:
• New anklicken
• Als Datenquellen-Typ ”Custom JRDataSource” wählen
• Als Name ”TestDataSourceCSVSub” eintragen
• Als Factory Class ”agorum.reporting.datasources.csv.JRCSVHashSubTest”
eintragen
99
Kapitel 13. Das Reporting-Modul
• Als Method ”getTheDatasource” eintragen
• Save drücken
Das Datenquellen-Fenster kann geschlossen werden.
13.2.3. Verwenden der DataSources
Rechts oben können, je nachdem an welchem Report gearbeitet wird, die jeweilige Datenquelle gewählt werden, also ”TestDataSourceCSV” oder ”TestDataSourceCSVSub” (siehe Abbildung 13.1):
Abbildung 13.1.: Dialog zur Verwendung der DataSource
Um die zwei Datenquellen mit Leben zu füllen, werden im Hauptverzeichnis (c:\)
zwei Dateien angelegt:
csvdatasource.config und csvdatasourcesub.config
Diese enthalten jeweils in der ersten Zeile den kompletten Pfad zu einer CSV Datei.
So wird, wenn in iReport ”TestDataSourceCSV” gewählt wurde die CSV Datei
genommen, die in der Datei c:\csvdatasource.config eingetragen ist. Wichtig
hierbei ist, dass der vollständige Pfad drin steht. Folgezeilen werden in diesen
Config-Dateien ignoriert:
Beispiel Eintrag in der Datei csvdatasource.config oder csvdatasourcesub.
config:
C:\projekte\cvs\agorum\desk4web\projecttime\reporting\testdata\address.
csv
100
Kapitel 13. Das Reporting-Modul
13.3. Installieren von iReport auf dem Server
13.3.1. Vorbereiten des Servers
Damit das Reporting auf einem Server korrekt läuft, müssen die Windows Fonts
nachinstalliert werden:
Debian oder Ubuntu
Unter Debian bzw. Ubuntu:
apt-get install msttcorefonts cabextract
Suse
Unter Suse:
ttf Dateien (die drei Hauptschriften befinden sich unter installation/fonts im reporting Projekt) nach /usr/X11R6/lib/X11/fonts/truetype kopieren und im Schriftenverzeichnis folgendes aufrufen:
fonts-config
mkfontdir
13.3.2. Reports und agorum core
In der Regel funktioniert die Integration von Reports in agorum core so, dass
ein Report mit einem Namen in der MetaDb definiert wird. Dort werden der
Quell-Report (jrxml) definiert, sowie verwendete SubReports, Bilder und etwaige
Parameter.
Die Verwendung selbst kann entweder über WebService-Aufrufe, oder direkte APIAufrufe geschehen. Dies wird in weiteren Kapiteln genauer erläutert.
Die Integration in agorum core beinhaltet einen HTML-Editor zur Bearbeitung
generierter Reports.
101
Kapitel 13. Das Reporting-Modul
13.3.3. Definition eines Reports
Überblick:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
MA IN _ M O D U L E _ M A N A G E M E N T ( B )
| reporting ( B )
|| control ( B )
||| common ( B )
||| reports ( B )
||||[ Demo ] ( G )
||||| DemoReport ( B )
|||||| streams ( B )
||||||| AgorumLogoImage =/ agorum / roi / Reports / Demo / images /
agorum_logo . jpg ( E )
|||||| main ( B )
||||||| ReportTemplate =/ agorum / roi / Reports / Demo /
DemoReportMain . jrxml ( E )
||||||| ReportName = DemoReportMain ( E )
||||||| DataSourceName = MainDataSource ( E )
||||||| ParameterNames = ParamName1 || ParamName2 ( E )
||||||| ParameterValues = ParamValue1 || ParamValue2 ( E )
|||||| sub1 ( B )
||||||| ReportTemplate =/ agorum / roi / Reports / Demo /
DemoReportSub1 . jasper ( E )
||||||| ReportName = DemoReportSub1 ( E )
|||||| SaveHandler ( B )
||||||| Class = agorum . reporting . common . De fa ul tSa ve Ha nd le r ( E
)
||||||| ParameterNames = SaveFolder || OutputFormats ||
FileNameMask ( E )
||||||| ParameterValues =/ agorum / roi / Files / PathToSaveTo || pdf
, rtf || $F { Fieldname } Text $P { ParamName }. $V { Extension } ( E
)
Report
Der Report selbst wird mit einem eindeutigen Namen unter MAIN_MODULE_
MANAGEMENT/reporting/control/reports als Bundle angelegt.
102
Kapitel 13. Das Reporting-Modul
streams
(optional)
Jede im Report verwendete Datei (zum Beispiel ein Bild) wird unterhalb von
streams definiert. Es wird ein Entry mit dem exakten Namen, wie in iReport,
angelegt. Als Wert wird der vollständige agorum core-Pfad zu der Bild-Datei
angegeben. In iReport wird ein Report Parameter angelegt, der genauso heißt
(hier im Beispiel AgorumLogoImage). Dieser Parameter wird als java.lang.Object
definiert und erhält als Default Value Expression zum Beispiel:
new File("c:\\agorum_logo.gif")
Dieser Eintrag wird später durch den in der MetaDb definierten stream ersetzt.
Auf diese Art und Weise können beliebige weitere Streams erzeugt werden.
main
(pflicht)
Unterhalb von main steht die Definition des Main-Reports. Ein Report besteht
immer aus einem ”Main”-Report und n SubReports. Diese SubReports können
auch weitere SubReports verwenden.
Mit dem Schlüssel ReportTemplate wird der vollständige agorum core-Pfad zu
der jrxml-Datei angegeben, die den Main-Report repräsentiert.
ReportName definiert den Namen des Reports und hat keine weitere Bedeutung.
DataSourceName definiert den Namen der für diesen Report zugehörigen Datenquelle. Diese muss später beim Erstellen als Parameter mitgegeben werden.
Mit Hilfe von ParameterNames und ParameterValues können beliebige Name-Wert
Paare an diesen Report übergeben werden, die dort wiederum mit Hilfe von Report Parameters dargestellt oder verwendet werden können. Die hier definierten
Parameter werden auch an SubReports weitergegeben.
103
Kapitel 13. Das Reporting-Modul
sub(n)
(optional)
Optional (falls vorhanden) können n SubReports definiert werden, welche mit 1
beginnend durchgezählt werden, also zum Beispiel sub1, sub2, etc.... In diesem
Beispiel findet sich 1 SubReport, also sub1.
Mit ReportTemplate wird der vollständige agorum core-Pfad zum kompilierten Report angegeben (anders als beim Main Report, dort wird die Quell-Datei
angegeben: jrxml). Das Kompilat erhält man, wenn man im iReport-Editor den
Menüpunkt Build, Kompilieren aufruft. Die jeweilige jasper Datei befindet sich
dann im Start-Verzeichnis von iReport.
ReportName definiert den exakten Namen für den Report, wie er in iReport angegeben wurde:
Abbildung 13.2.: Eingabe des Parameters für den SubReport
Hier lautet der Parameter für den SubReport ProjectTimeSubReport. Dieser muss
104
Kapitel 13. Das Reporting-Modul
exakt mit dem in der MetaDb übereinstimmen. Zudem muss der Parameter in
iReport wie folgt definiert sein:
Abbildung 13.3.: Definieren des Parameters in iReport
Zum Testen wird der SubReport direkt von Platte gelesen (ist kein Pfad angegeben,
so gilt das aktuelle Verzeichnis). Diese Definition wird später beim Generieren des
Reports im Programm durch den in der MetaDb definierten Report ersetzt. Daher
die Verbindung mit dem Reportnamen.
Die Übergabe der Datenquelle an den SubReport funktionert auf zwei Arten:
• Die Datenquelle wird als Parameter beim Aufrufen des Report-Generators
angegeben
• oder sie wird als Feld in die Datenquelle eingetragen.
In beiden Fällen ist es wichtig, dass die Datenquelle denselben Namen besitzt, wie
bei der Definition des SubReports in iReport, hier ein Beispiel:
105
Kapitel 13. Das Reporting-Modul
Abbildung 13.4.: Definieren der Datenquelle
in diesem Beispiel wird die Datenquelle über einen Parameter Namens ProjectTimeDataSource definiert. Das heißt, sie müsste als Parameter übergeben werden.
In jedem Falle muss die Datenquelle letztendlich vom Typ JRDataSource sein.
Der Parameter der Datenquelle muss dann wie folgt definiert werden:
Abbildung 13.5.: Definieren des Parameters der Datenquelle
106
Kapitel 13. Das Reporting-Modul
das heißt, zum Testen wird als Default value Expression die JRCSVHashSubTest
Datenquelle verwendet. Es gilt also die Datenquelle, die in der Datei csvdatasourcesub.config definiert ist.
SaveHandler
(optional)
Der SaveHandler kann optional hinzudefiniert werden. Er definiert, wohin ein Dokument gespeichert werden soll, wenn Beispielsweise ”speichern” im Html-Editor gewählt wurde. Als Klasse wird standardmässig
agorum.reporting.common.DefaultSaveHandler verwendet. Kann jedoch jederzeit
durch einen eigene Speicher-Implementation ersetzt werden. Wichtig hierbei ist
lediglich, dass diese das Interface SaveHandlerInterface.java implementiert.
Zum Savehandler können beliebige Name-Wert-Paare übergeben werden, die dann
dem Interface als Hashtable zur Verfügung stehen. Folgend werden die StandardParameter beschrieben:
• SaveFolder: Gibt den vollständigen agorum core-Pfad an, wohin der Report
gespeichert werden soll
• OutputFormats: Gibt durch Komma-getrennte Auflistung an, welche Formate erzeugt werden sollen (möglich sind bis jetzt pdf,html,rtf)
• FileNameMask: Mit Hilfe diese Maske kann definiert werden, wie der Dateinamen aufgebaut werden soll beim Speichern. $VExtension steht für die Dateierweiterung und wird durch das jeweilige Format ersetzt (pdf, rtf, html). Ansonsten können beliebige Texte angegeben werden. Der wohl interessanteste
Teil ist jedoch die Verwendung von Report-Parametern und Report-Feldern.
So können Parameter und auch Felder, die entweder im Report definiert
wurden, oder auch in der MetaDb für den Report, verwendet werden. $F
steht dabei für Feld (aus der Main-Datenquelle) und $P für Parameter. So
kann der Dateiname beim Speichern dynamisch aufgebaut werden. Es können
auch Funktionen aus dem Report verwendet werden, sofern diese einem Parameter zugeordnet sind. So kann man einem Parameter beispielsweise die
Funktion ”new Date()” zuteilen. Durch die Verwendung dieses Parameters
im Dateinamen wird das aktuelle Datum eingesetzt.
107
Kapitel 13. Das Reporting-Modul
13.4. Einen definierten Report im Programm
verwenden
13.4.1. Über API
Das Erzeugen eines Reports funktioniert immer folgendermaßen: Man definiert
einen Report und erhält ein Ticket. Mit diesem Ticket kann man dann beispielsweise den Editor aufrufen, oder Dokumente erzeugen, oder drucken, etc...
Ticket erzeugen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//1. Definieren der Datenquellen :
JRHashDataSource mainDataSource = new JRHashDataSource (
anArrayList ) ;
JRHashDataSource subDataSource = new JRHashDataSource (
anArrayList ) ;
//2. setzen der Datenquellen als Parameter
Hashtable parameters = new Hashtable () ;
parameters . put (" MainDataSource " , mainDataSource ) ;
parameters . put (" SubDataSource1 " , subDataSource ) ;
//3. beliebige Parameter setzen
parameters . put (" TestParameter " , " Test ") ;
//4. Definieren der Editor - Funktionen
R ep o r t V i e w e r C o n t r o l B e a n controlBean = new
R e p o r t V i e w e r C o n t r o l B e a n () ;
controlBean . setHasHtmlEdit ( true ) ;
controlBean . setHasPdfView ( true ) ;
controlBean . setHasRtfView ( true ) ;
controlBean . setHasSave ( true ) ;
//5. Erstellen eines Report - Tickets :
String ticketNumber =
ReportUtils . g e n e r a t e R e p o r t T i c k e t ( parameters ,
" NameDesReports " , controlBean , customSaveHandler ,
mainDataSource ) ;
• Zu 1.: Es werden alle Datenquellen im Vorfeld erzeugt. Diese müssen vom
108
Kapitel 13. Das Reporting-Modul
Typ JRDataSource - Klassen sein. Die Klasse JRHashDataSource ist eine
Implementation, die eine ArrayList mit Hashtables enthält. Die Hashtable
Einträge entsprechen den Feldnamen im Report.
• Zu 2.: Die Hauptdatenquelle wird mit dem Namen in die Hashtable gesetzt,
wie sie in der MetaDb definiert wurde. Alle weiteren Datenquelle werden mit
dem exakten Parameternamen gesetzt, wie sie im Report definiert sind.
• Zu 3.: Zusätzlich können vom Programm aus beliebige weitere Parameter an
den Report übermittelt werden.
• Zu 4.: Das controlBean steuert den Editor (falls diese Aufgerufen wird). Es
kann definiert werden, welche Formate als Vorschau möglich sind, und ob ein
Speicherknopf vorhanden ist.
• Zu 5.: Damit wird der Report auf Server-Seite bekannt gemacht und man
erhält ein ”Ticket”, mit welchen man nun immer wieder auf diesen Report
zugreifen kann.
Dokumente erzeugen
1
2
3
4
5
6
7
8
9
// Oberen Schritt 1 - 5 ausführen oder :
// viewBean mit Ticket - Nummer holen
ReportViewerBean viewBean =
ReportUtils . getViewerBean ( ticketNumber ) ;
ProcessReport processReport = new ProcessReport (
sess ionCon trolle r ) ;
processReport . process ( viewBean . getReportName () , viewBean .
getParameters () ,
" pdf " , outputStream , false ) ;
Entweder man befüttert die Funktion ”process” direkt mit ”ReportName”, Parameter, oder man holt ein über ein Ticket erzeugtes viewBean. Im ersten Fall kann
man sich den Umweg über das Ticket sparen. Dies ist eigentlich nur dann notwendig, wenn folgend Beispielsweise der Editor aufgerufen werden soll. Das obere
Beispiel schreibt nun in den OutputStream die PDF Datei.
109
Kapitel 13. Das Reporting-Modul
13.5. Über WebService
Über den WebService kann man bis jetzt lediglich CSV-Daten übermitteln.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
G e n e r a t e R e p o r t R e q u e s t B e a n requestBean =
new G e n e r a t e R e p o r t R e q u e s t B e a n () ;
// Die Datenquelle als CSV - String
String cvsDS = "";
cvsDS += " NormalField ; EditAbleField \ n ";
cvsDS += "\" A Normal \"\" DS Field \"\"\"; Please edit me ";
// setzen der Datenquelle mit dem Namen ( wie in der MetaDb
definiert )
requestBean . s e t C v s D a t a S o u r c e N a m e s ( new String [] {"
MainDataSource "}) ;
requestBean . setC vsData Source s ( new String [] { cvsDS }) ;
// belibige Parameter setzen
requestBean . setP aramet erName s ( new String [] {"
T r an s f er e d Pa r a me t e r "}) ;
requestBean . s et Pa ra met er Va lu es ( new String [] {" I am
transfered "}) ;
// Namen des Reports setzen ( wie in der metaDb )
requestBean . setReportName (" TestReport ") ;
// eine PDF und rtf soll zurückkommen
requestBean . setReturnReports ( true ) ;
requestBean . setOutputFormats ( new String [] {" pdf " ," rtf "}) ;
// Es soll nicht gespeichert werden ( über den definierten
SaveHandler )
requestBean . setSaveReport ( false ) ;
G e n e r a t e R e p o r t R e s p o n s e B e a n respBean = (
GenerateReportResponseBean )
call . c al lD yn am ic Se rv ic e ( responseBean . getWsSessionId () ,
metaDb , " Report " , " generateReport " , requestBean ) ;
// Die Reports kommen als String [] zurück ...
String reportTicket = respBean . getReportTicket () ;
String [] returnedReports = respBean . g et Re tu rn ed Re po rt s () ;
// und können dann so runtergeladen werden :
110
Kapitel 13. Das Reporting-Modul
36
37
38
39
40
41
42
43
44
WSReportUtils repUtils = new WSReportUtils () ;
File outFile = new File (" c :\\ dummy . pdf ") ;
repUtils . downloadFile ( address , responseBean . getWsSessionId
() ,
returnedReports [0] , outFile ) ;
File outFile2 = new File (" c :\\ dummy . rtf ") ;
repUtils . downloadFile ( address , responseBean .
getWsSessionId () ,
returnedReports [1] , outFile2 ) ;
URL für den download in Java Notation:
http://[server]:[port]/dynawebservices/wsfiling?action=
getTemp&deleteAfterDownload=true&wsSessionId="+wsSessionId+"&tmpFile=
"+URLEncoder.encode(returnedReportName);
13.6. Drucken
Ein Report kann über einen ans System angschlossenen Drucker direkt ausgedruckt
werden. Lediglich der Druckername muss bekannt sein:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
.... code siehe oben ......
// Druckernamen setzen
parameters . put ( PrintParameters . PRINTER_NAME_PARAM , " Adobe
PDF ") ;
// Sei te no ri en ti er un g einstellen
parameters . put ( PrintParameters . PRINTER_ORIENTATION_PARAM ,
PrintParameters . P R I N T E R _ O R I E N T A T I O N _ L A N D S C A P E ) ;
// Anzahl der Kopien einstellen
parameters . put ( PrintParameters . PRINTER_COPIES_PARAM , "1") ;
//.... und drucken
processReport . process (" TestReport2 " , parameters , " print " ,
null , false ) ;
Es werden also einfach noch ein paar Parameter gesetzt, und als output wird print
angegeben.
111
Kapitel 13. Das Reporting-Modul
13.7. Der Report-Editor
13.7.1. Allgemein
Wie hier definiert ”Einen definierten Report im Programm verwenden”, kann ein
Ticket erzeugt werden. Mit diesem Ticket wird der Editor aufgerufen.
13.7.2. Aufruf
Der Aufruf ist lediglich der Start der JSP-Datei:
/roiwebui/reporting\_module/ReportingFrameSet.jsp?reportTicket=<\%
=ticketNumber\%>&type=html
Dies startet den Editor mit den Angaben aus dem ViewerControlBean
13.7.3. Definieren von editierbaren Feldern
Als erstes: Ein Report ist nur dann bearbeitbar, wenn der Hauptreport nur einmal
vorhanden ist, das heisst, nicht n-mal wiederholt wird. Und es ist lediglich der
Hauptreport bearbeitbar, keine SubReports.
Alle Felder, die im iReport-Editor mit EditAble anfangen und aller Parameter,
die mit EditAbleParam anfangen sind im Editor bearbeitbar.
13.8. Einen Report aus dem Client heraus aufrufen
13.8.1. Allgemein
Mit Hilfe der Client Komponente von agceptIT, kann man sehr einfach einen Report erstellen.
112
Kapitel 13. Das Reporting-Modul
13.8.2. Beispielaufruf
Folgend ein Beispielaufruf, welcher an localhost:9988 gesendet werden muss:
1 http :// localhost :9988/ report : generateReport ?
2
p = reportName || TestReport &
3
p = editReport || true &
4
p = cvsDataSources || c :\ TestReport . csv &
5
p = cv sD at aS ou rc eN am es || MainDataSource &
6
p = parameterNames []|| T r a ns f e re d P ar a m et e r &
7
p = parameterValues []|| I + am + transfered &
8
p = pdfButton || true &
9
p = rtfButton || true &
10
p = saveButton || true &
11
noCache =1234
(dieser Aufruf muss natürlich in einer Zeile stehen, hier ist er lediglich der Übersichthalber umgebrochen.)
13.8.3. Erklärung
es soll ein Report generiert werden (generateReport). Der Name des Reports
lautet TestReport (wie die Definition in der MetaDb). Er soll so geöffnet werden, dass er nachbearbeitet werden kann (editReport=true). Beim Bearbeiten sollen der PDF-Knopf (pdfButton=true), der RTF-Knopf (rtfButton=true) und der
Speicher-Knopf (saveButton=true) vorhanden sein. Die Datenquelle hat den Namen MainDataSource und befindet sich in der Datei
c:\TestReport.csv
Zudem soll der Parameter TransferedParameter mit dem Wert I am transfered
mitgegeben werden.
13.8.4. Beschreibung
Folgend werden die möglichen Parameter beschrieben, die es gibt. Hierbei wird
zwischen zwei Modi unterschieden: Bearbeiten oder Betrachten:
113
Kapitel 13. Das Reporting-Modul
Bearbeiten
Parameter
editReport
Wert
true
pdfButton
true/false
rtfButton
true/false
saveButton
true/false
Bedeutung
true bedeutet, der Editor wird gestartet
soll der PDF-Knopf dargestellt werden
soll der RTF-Knopf dargestellt werden
soll der Speicher-Knopf dargestellt
werden
Betrachten
Parameter
editReport
Wert
false
saveReport
true/false
showAs
pdf oder rtf
Bedeutung
true bedeutet, der Editor wird gestartet
bei true wird der Report sofort
server-seitig gespeichert
stellt den Report entweder als pdf
dar oder als rtf, wird diese Variable weggelassen, so wird keine Report
Darstellung erstellt
Betrachten und Bearbeiten
Hier sollen Parameter beider Modi beschrieben werden:
Parameter
parameterNames[]
Wert
Name eines Parameters
parameterValues[]
Wert eines Parameters
Datei1::Datei2::etc... hier werden durch :: (Pipes) getrennt
die Dateien aufgelistet, die die CSV
Daten enthalten
cvsDataSources
Bedeutung
es können beliebige Name-Wert Paare übermittelt werden, wobei die Namen der Parameter in mehreren parameterNames[] stehen und in derselben Reihenfolge die parameterValues[] dazu
siehe oben
114
Kapitel 13. Das Reporting-Modul
Parameter
Wert
Bedeutung
cvsDataSourceNames Name1::Name2::etc... hier werden durch :: (Pipes) getrennt
alle DatenQuellenNamen aufgelistet.
Jeder definierte Report in der MetaDb hat einen Datenquellennamen,
so wird die Zugehörigkeit zu Report
und Datenquelle hergestellt
Achtung: die (::) -Pipes sind in Wirklichkeit
\path $||$
Weitere Beispiele
Einen Report als PDF darstellen:
1 http :// localhost :9988/ report : generateReport ?
2
p = reportName || TestReport &
3
p = editReport || false &
4
p = showAs || pdf &
5
p = cvsDataSources || c :\ TestReport . csv &
6
p = cv sD at aS ou rc eN am es || MainDataSource &
7
p = parameterNames []|| T r a ns f e re d P ar a m et e r &
8
p = parameterValues []|| I + am + transfered &
9
noCache =1234
115
Kapitel 14.
Zusätzliche Module
14.1. Das File-Adaptor-Modul
Das File-Adaptor-Modul steht nur in agorum core Pro als Zusatzmodul zur Verfügung.
Es gibt zwei Adaptoren für Filesysteme:
1. Adapter für freigegebene Filessysteme per SMB/CIFS-Protokoll
2. Adapter für das lokale Filesystem, auf dem der agorum core - Server installiert ist
Mit den Adaptoren können Sie externe Dateisysteme in agorum core so einbinden, als wenn diese in agorum core vorhanden wären. agorum core selbst
speichert dabei lediglich die Verweise in der Datenbank, die Dateien und Ordner
selbst bleiben aber wie gewohnten auf dem entfernten Dateiserver. Für die Benutzer ist diese Integration völlig transparent. Für sie ist es, als ob die Dateien direkt
in agorum core gespeichert wären. So können Dateien unterschiedlicher Dateisysteme in agorum core an den unterschiedlichsten Stellen sichtbar gemacht und
verwendet werden. Ein weiterer Vorteil ist dann beispielsweise auch der, dass über
diese adaptierten Dateisysteme in agorum core eine übergeordnete Berechtigung
(unabhängig vom Dateiserver) gelegt werden kann. Adaptierte Dateien erhalten
dabei automatisch DMS-Funktionen, wie Volltextsuche, Verschlagwortung, Integration in Workflows, etc...
116
Kapitel 14. Zusätzliche Module
Adaptoren sind nicht mit dem Serverpapierkorb von agorum core
verbunden und auch nicht mit der Historie.
Die adaptierten Daten sind nur anhand des Pfades zu identifizieren.
Wenn der Pfad auf dem adaptierten Dateisystem geändert wird (Namensänderung eines Ordners), werden alle adaptierten Objekte, die
unterhalb der Änderung liegen in (agorum core) gelöscht und der
Adapter baut die Objekte dann beim Synchronisieren neu auf. Waren
diese Objekte beispielsweise in agorum core verlinkt, so sind diese
danach nicht mehr vorhanden.
Wenn Sie einen Pfad ändern wollen (Namensänderung, Verschieben),
machen Sie das am besten über agorum core. Dann bleiben die adaptierten Objekte und auch alle Verknüpfungen, Links, usw. erhalten. Je
tiefer die Struktur unterhalb solch eines Ordners ist, desto länger kann
die Änderung dauern, weil die geänderte Pfad-Information komplett
durch die Struktur vererbt werden muss.
14.1.1. Der SMB-Adapter
Zum Anlegen eines neuen SMB-Adapters gehen Sie im Web-Portal von agorum
core in einen beliebigen Ordner und wählen Sie über das Menü den SMB-Adapter
aus (siehe Abbildung 14.1). Im Standard kann nur der Administrator einen Adapter anlegen.
117
Kapitel 14. Zusätzliche Module
Abbildung 14.1.: Anlegen eines neuen SMB-File-Adapters
In der Maske zum Anlegen sind folgende Zeilen zum Ausfüllen vorhanden (siehe
Abbildung 14.4):
Name Name des Adapters. Dieser Name wird wie ein normaler Ordner behandelt,
da der Adapter selbst auch als Ordner in agorum core angezeigt wird.
Daher sind als Eingabe nur die Zeichen gültig, die für Ordner gelten.
SMB-Server Domain oder IP-Adresse des Fileservers, von dem per SMB/CIFS
ein Laufwerk adaptiert werden soll.
SMB-Pfad Hier wird der Freigabename des Laufwerks eingegeben. Es kann auch
ein Freigabename+Unterordner eingegeben werden. Getrennt wird hierbei
mit einem /
SMB-Benutzer Technischer Benutzer, der Zugriff auf das freigegebene Laufwerk
hat. (Siehe Beschreibung unten, was dieser Benutzer bedeutet).
SMB-Passwort Passwort des SMB-Benutzers.
Server-Einstellungen (optional) Hier kann in der MetaDB eine optionale Servereinstellung hinterlegt werden. Mit einem Klick auf den Link neben dem Eingabefeld wird die MetaDB geöffnet, so dass sofort die Servereinstellung dort
angelegt werden kann. Als erstes muss ein Property-Bundle angelegt werden
(Datei - Neu - Property-Bundle), mit dem selben Namen wie im Adaptor
118
Kapitel 14. Zusätzliche Module
eingegeben, siehe Abbildung 14.2. Dann in dieses Bundle wechseln und dort
ein Property-Entry mit dem Namen : UseUserConnection anlegen, siehe Abbildung 14.3. Folgende Vorgaben können mit dem Eintrag gemacht werden:
false = Es wird zum Anlegen / Bearbeiten der Daten des Adaptors immer
der technische Benutzer verwendet, unabhängig, welcher Benutzer angemeldet ist. true = Der Adapter nimmt wenn möglich den aktuell angemeldeten
Benutzer für das Anlegen/Bearbeiten der Daten. Wenn dies nicht möglich ist,
wird automaisch der technische Benutzer verwendet (dies ist auch Standard,
wenn keine optionale Servereinstellung vorhanden ist).
Ablgeich Intervall geben Sie ein, wie oft der Adapter das adaptierte Laufwerk
abgleichen soll. Dies ist dazu notwendig, um Änderungen mitzubekommen,
die direkt auf dem adaptierten Laufwerk gemacht werden. (Im Gegensatz:
wenn Sie Änderungen über beispielsweise das agorum core DMS-Laufwerk
durchführen, dann werden diese direkt live an das adaptierte Filesystem
übertragen). Die Eingabe ist hier in Minuten vorzugeben. Z.B.: 1 Tag =
1440 Minuten, eine Stunde = 60 Minuten, 0 bedeutet, dass es keine automatisierte Synchronisation gibt und diese über das Menü (siehe Bild unten)
angestoßen werden muss
Abgleich-Zeitpunk im ersten Feld von links wird die Stunde eingegeben, im zweiten Feld die Minute. Diese Zeit beschreibt, wann der Abgleich das erste mal
ausgeführt wird, nachdem der Adapter angelegt wurde. Von diesem Zeitpunkt aus wird das Intervall gerechnet. Wenn Sie zum Beispiel den Zeitpunkt
0:05 Uhr wählen und als Intervall 60 Minuten, dann läuft der Abgleich um
0:05 Uhr, 1:05 Uhr, 2:05 Uhr, jede Stunde, etc....
Beschreibung Hier kann eine beliebige Beschreibung des Adapters eingegeben
werden.
119
Kapitel 14. Zusätzliche Module
Abbildung 14.2.: Anlegen eines Property-Bundle für die optionalen Servereinstellungen
des SMB-Adapters in der MetaDB
Abbildung 14.3.: Anlegen eines Property-Entry für die optionalen Servereinstellungen
UseUserConnection des SMB-Adapters in der MetaDB
120
Kapitel 14. Zusätzliche Module
Abbildung 14.4.: Maske zum Anlegen eines neuen SMB-File-Adapters
Wenn alle Eingaben gemacht sind, kann über den Knopf Verbindung testen geprüft
werden, ob alles richtig ist und ob das freigegebene Laufwerk adaptiert werden
kann. Siehe Bild (Abbildung 14.5) für einen erfolgreichen Verbindungstest. Ein
gescheiterter Verbindungstest sehen Sie im Bild (Abbildung 14.6).
Abbildung 14.5.: Erfolgreicher Verbindungstest zum adaptierten Dateisystem
121
Kapitel 14. Zusätzliche Module
Wenn der Verbindungstest scheitert kann dies an mehreren Dingen liegen, zum
Beispiel:
1. SMB-Server : Server stimmt nicht
2. SMB-Pfad: Freigabename gibt es nicht
3. SMB-Benutzer: Benutzer gibt es nicht oder er hat keine Rechte
4. SMB-Passwort: Passwort ist falsch
Abbildung 14.6.: Kein erfolgreicher Verbindungstest zum adaptierten Dateisystem
Der SMB-Benutzer
Der SMB-Benutzer sollte ein technischer User sein, der zumindest Lese-Rechte auf
das adaptierte Laufwerk besitzt. Mit diesem Benutzer wird die Synchronisation
durchgeführt.
Wenn jetzt ein Benutzer über agorum core auf dem Adapter arbeitet, wird versucht dessen Benutzerkennung/Passwort aus agorum core zu verwenden (durchzuschleusen). Somit arbeitet der Benutzer mit seiner Benutzerkennung auf dem
adaptierten Fileserver. Damit hat er automatisch auch dessen Rechte. Falls dieser Benutzer sich nicht auf dem adaptierten Laufwerk anmelden kann (weil zum
122
Kapitel 14. Zusätzliche Module
Beispiel sein Benutzer dort nicht vorhanden ist), wird automatisch wieder mit
dem technischen SMB-Benutzer auf das Laufwerk zugegriffen und damit auch die
Rechte des technischen Benutzers verwendet.
14.1.2. Der lokale Filesystem (LFS)-Adapter
Zum Anlegen eines neuen Adapters für das lokale Dateisystem gehen Sie in einen
beliebigen Ordner und wählen über das Menü den Adapter für das Lokale Dateisystem aus (Abbildung 14.7). Im Standard kann nur der Administrator einen Adapter anlegen.
Abbildung 14.7.: Anlegen eines neuen Lokalen Filesystem (LFS)-Adapters
In der Maske zum Anlegen sind folgende Zeilen zum Ausfüllen (Abbildung 14.8):
Name des Adapters. Dieser Name wird wie ein normaler Ordner behandelt, da
der Adapter selbst auch als Ordner in agorum core angezeigt wird. Daher
sind als Eingabe nur die Zeichen gültig, die für Ordner gelten.
Lokaler Pfad Hier geben Sie den Pfad ein, den Sie adaptieren wollen. Die Eingabe
erfolgt im Syntax des jeweiligen Betriebssystems, also zum Beispiel c:/temp
oder /tmp
123
Kapitel 14. Zusätzliche Module
Ablgeich Intervall geben Sie ein, wie oft der Adapter das adaptierte Laufwerk
abgleichen soll. Dies ist dazu notwendig, um Änderungen mitzubekommen,
die direkt auf dem adaptierten Laufwerk gemacht werden. (Im Gegensatz:
wenn Sie Änderungen über beispielsweise das agorum core DMS-Laufwerk
durchführen, dann werden diese direkt live an das adaptierte Filesystem
übertragen). Die Eingabe ist hier in Minuten vorzugeben. Z.B.: 1 Tag =
1440 Minuten, eine Stunde = 60 Minuten, 0 bedeutet, dass es keine automatisierte Synchronisation gibt und diese über das Menü (siehe Bild unten)
angestoßen werden muss
Abgleich-Zeitpunk im ersten Feld von links wird die Stunde eingegeben, im zweiten Feld die Minute. Diese Zeit beschreibt, wann der Abgleich das erste mal
ausgeführt wird, nachdem der Adapter angelegt wurde. Von diesem Zeitpunkt aus wird das Intervall gerechnet. Wenn Sie zum Beispiel den Zeitpunkt
0:05 Uhr wählen und als Intervall 60 Minuten, dann läuft der Abgleich um
0:05 Uhr, 1:05 Uhr, 2:05 Uhr, jede Stunde, etc....
Beschreibung Hier kann eine beliebige Beschreibung des Adapters eingegeben
werden.
Abbildung 14.8.: Maske zum anlegen eines lokalen Filesystem (LFS)-Adapters
Wenn alle Eingaben gemacht sind, kann über den Knopf Verbindung testen geprüft
werden, ob alles richtig ist und ob das freigegebene Laufwerk adaptiert werden
124
Kapitel 14. Zusätzliche Module
kann. Siehe Bild (Abbildung 14.9) mit einem erfolgreichen Verbindungstest. Das
Bild (Abbildung 14.10) zeigt einen gescheiterten Verbindungstest.
Abbildung 14.9.: Erfolgreicher Verbindungstest eines LFS-Adapters
Wenn der Verbindungstest scheitert kann dies nur daran liegen:
Lokaler Pfad Diesen Pfad gibt es nicht
125
Kapitel 14. Zusätzliche Module
Abbildung 14.10.: Gescheiterter Verbindungstest eines LFS-Adapters
14.1.3. Gemeinsames
Synchronisieren / Aktualisieren
Um einen Adapter von Hand zu synchronisieren / aktualisieren, wechseln Sie in
das Verzeichnis des Adapters und rufen Sie über das Menü einen der beiden Befehle auf (Abbildung 14.11). Der Unterschied zwischen den beiden Kommandos ist
folgender:
Synchronisieren Es wird der gesamte Adapter Synchronisiert. Wenn dies gemacht
wird, wird der Adapter selbst mit allen Unter-Ordnern synchronisiert. Hier
läuft dann das selbe ab, wie wenn der Adapter automatisch zu den eingestellten Intervallen synchronisiert wird. Achtung: Synchronisieren ist nur
direkt unterhalb des Adapters im Menü auswählbar.
Aktualisieren Hier wird nur das aktuelle Verzeichnis des Adapters aktualisiert,
in dem Sie sich befinden, wenn Sie das Kommando aufgerufen haben. Das
können Sie z.B. auch dazu einsetzen, um einen neuen Adapter gezielt aufzubauen. Dann haben Sie die Möglichkeit z.B. in den Verzeichnisebenen eigene
ACL’s zu setzen, bevor der gesamte Adapter aufgebaut wird. Natürlich geht
126
Kapitel 14. Zusätzliche Module
es auch hinterher, aber der Aufwand wird größer, da die ACL’s dann durch
alle vorhandenen Ordner-Ebenen vererbt werden müssen. Ist das ACL von
Anfang an gesetzt, so wird sofort bereits das richtige ACL beim Synchronisieren vererbt.
Hier eine beispielhafte Vorgehensweise, wenn Sie auf den Adapter selbst unterschiedliche ACL’s setzen wollen:
• Adapter anlegen
• Erste Ebene aktualisieren, auf die Ordner die ACL’s legen, die benötigt werden.
• Weitere Ebenen aktualisieren und auch dort die richtigen ACL’s setzen.
• Wenn alle ACL’s vergeben sind, den gesamten Adapter synchronisieren
Abbildung 14.11.: Synchronisieren / Aktualisieren eines File-Adapters
Löschen
Beim Löschen ist zu beachten, dass die gelöschten Objekte NICHT in den Serverpapierkorb kommen, sondern die Objekte direkt gelöscht sind.
127
Kapitel 14. Zusätzliche Module
Dies bedeutet, alles was gelöscht wird ist auch weg (in agorum core und auf
dem adaptieren Filesystem). Eine funktionierende Datensicherung für die adaptierten Filesystem ist daher empfehlenswert. In agorum core werden lediglich
die Verweise gespeichert, nicht aber die Daten, diese verbleiben auf den jeweils
adaptierten Fileservern.
Folgendes ist beim Löschen zu beachten:
Löschen eines Adapters
Wenn Sie einen Adapter selbst löschen wollen, geht dies nur über das Webportal
desk 4web. Dazu gehen Sie in das Verzeichnis, in dem sich der Adapter befindet
und wählen den Adapter selbst in der Listenansicht aus (klick in entsprechende
Listenzeile, dies kann nur ein Administrator). dann rufen Sie über das Menü den
Befehl zum Löschen auf. Jetzt müssen Sie unbedingt das Häckchen setzen, damit ohne Serverpapierkorb gelöscht wird. Wenn dieses nicht gesetzt ist, kann der
Adapter selbst nicht gelöscht werden. Siehe dazu nachfolgende Bilder (Abbildung
14.12 und 14.13):
Abbildung 14.12.: Löschen eines File-Adapters
128
Kapitel 14. Zusätzliche Module
Abbildung 14.13.: Löschen eines File-Adapters ohne Serverpapierkorb
Tips zum Löschen:
Wenn Sie den Adapter löschen wollen und der technische Benutzer hat nur LeseRechte auf dem Dateiserver, ändern Sie einfach den Freigabenamen oder den Server. Dann überprüfen Sie mit dem Verbindungstest diese Änderung. Dieser muss
jetzt scheitern. Dann kann auch kein anderer Benutzer mehr darauf zugreifen. Sie
sehen es auch daran, sobal der Adapter keine Verbindung zum Dateiserver hat,
werden alle Dateien mit 0 Byte angezeigt, da die Dateigröße immer vom Originalsystem geholt wird (Abbildung 14.14). Wenn Sie jetzt den Adapter löschen, können
die Objekte in agorum core gelöscht werden, die Dateien auf dem adaptierten
Filesystem bleiben aber bestehen.
129
Kapitel 14. Zusätzliche Module
Abbildung 14.14.: File-Adapter ist nicht verbunden
Löschen von Links
Sie können auch adaptierte Objekte in andere Verzeichnisse innerhalb von agorum
core verlinken. Das Verhalten beim Löschen ist dann aber ein wenig anders, als bei
normalen Dateien. In der Regel ist es egal, wo Sie ein verlinktes Objekt löschen, es
bleibt dann immer an den anderen verlinkten Stellen noch stehen. Beim Adapter
ist es jedoch so, dass wenn Sie das jeweilige verlinkte Objekt direkt unterhalb des
Adapters löschen, dann auch alle Links gelöscht werden (weil ja sonst der Verweis
auf das adaptierte Filesystem fehlen würde)
Verlinken von adaptierten Ordnern / Dateien
Ordner und Dateien aus einem Adapter können wie gewohnt verlinkt werden.
In einen Adapter können keine Daten hinein gelinkt werden.
130
Kapitel 14. Zusätzliche Module
desk4web und Adaptoren
Im Webportal agorum desk 4web ist ein adaptiertes Objekt immer daran zu erkennen, dass im Icon ein blaues Dreieck enthalten ist (Abbildung 14.15).
Abbildung 14.15.: Ordner und Dateien eines File-Adapters werden unterschieden durch
blaue Pfeile
Ausschneiden / Einfügen
Ausschneiden und Einfügen geht nur innerhalb des selben Adapters.
Andere Objekte wie Dateien und Ordner
Über das Webportal agorum desk 4web können aus anderen Ordner-Bereichen
von agorum core heraus nur Dokumnente und Ordner in den Adapter kopiert
werden. Dies bedeutet, Sie können aus einem agorum core - Verzeichnis andere
Objekte wie Foren, Wiki oder EMail nicht in den Adapter kopieren. Dabei gibt es
keinerlei Meldung. So wird ein Kopiervorgang nicht unterbrochen, wenn eine ganze
Ordnerstruktur in den Adapter kopiert wird. Alle nicht-Ordner und nicht-Datei
Objekte werden einfach ausgefiltert.
131
Kapitel 14. Zusätzliche Module
14.2. Das Mail-Adaptor-Modul
Mit dem Mailadapter können Postfächer per IMAP(S) oder POP3(S) adaptiert, bzw. integriert werden. Beim Mailadapter werden die Mails physikalisch in
agorum core gespeichert. Somit kann ein Mail-Adapter auch als Mailarchiv für
Postfächer eingesetzt werden.
Das Mail-Adaptor-Modul steht nur in agorum core Pro als Zusatzmodul zur Verfügung.
14.2.1. Neuen Mail-Adapter anlegen
Um einen neuen Mailadapter anzulegen, gehen Sie mit dem Webportal agorum
desk 4web in einen beliebigen Ordner und wählen dort über das Menü einen neuen
Mailadapter aus (siehe Abbildung 14.16)
Abbildung 14.16.: Anlegen eines neuen Mail-Adapters
Jetzt wird die Eingabemaske aufgeblendet, in der folgende Werte einzugeben sind
(siehe Abbildung 14.17):
Name Name des Adapters. Dieser Name wird wie ein normaler Ordner behandelt,
132
Kapitel 14. Zusätzliche Module
da der Adapter selbst auch als Ordner in agorum core angezeigt wird.
Daher sind als Eingabe nur die Zeichen gültig, die für Ordner gelten.
Server-Typ Hier wird ausgewählt, ob die Verbindung zum Mail-Server über IMAP
oder POP3 stattfinden soll.
Mail-Host Netzwerk-Adresse des Servers. Optional kann mit einem Doppelpunkt
getrennt ein vom Standard abweichender Port angegeben werden. Z.B.: imap.
mailhost.de oder pop.mailhost.com:1234
SSL-Verschlüsselung Hier kann ausgewählt werden, ob die Verbindung über eine SSL-Verschlüsselung hergestellt werden soll. Es werden nur Zertifikate
unterstützt, die von einer öffentlichen Zertifizierungsstelle signiert sind!
Mail-Pfad Verzeichnis unterhalb des Postfaches, ab dem synchronisiert werden
soll. Wenn Sie hier / eingeben, wird das gesamte Postfach adaptiert. Oft
lauten die internen Namen der Ordner anders, als sie dem Benutzer angezeigt
werden. Ein Beispiel dafür ist INBOX anstelle von Posteingang.
Mail-Benutzer Benutzername zur Anmeldung am Postfach.
Mail-Passwort Passwort des Mail-Benutzers. Wenn Sie hier das Passwort leer
lassen und es gibt den Mailbenutzer in agorum core, so wird das Passwort
automatisch aus agorum core benutzt.
Mails behalten Hier können Sie einstellen, was mit den Mails im adaptierten
Postfach geschehen soll, sobald diese synchronisiert wurden. Standardmäßig
ist hier eingestellt, dass die Mails im adaptierten Postfach verbleiben.
Abgleich Intervall geben Sie ein, wie oft der Adapter das adaptierte Postfach abgleichen soll. Die Eingabe ist hier in Minuten vorzugeben. Z.B.: 1 Tag = 1440
Minuten, eine Stunde = 60 Minuten, 0 bedeutet, dass es keine automatisierte
Synchronisation gibt und diese über das Menü (siehe Bild unten) angestoßen
werden muss
Abgleich-Zeitpunkt im ersten Feld von links wird die Stunde eingegeben, im zweiten Feld die Minute. Diese Zeit beschreibt, wann der Abgleich das erste mal
ausgeführt wird, nachdem der Adapter angelegt wurde. Von diesem Zeitpunkt aus wird das Intervall gerechnet. Wenn Sie zum Beispiel den Zeitpunkt
0:05 Uhr wählen und als Intervall 60 Minuten, dann läuft der Abgleich um
0:05 Uhr, 1:05 Uhr, 2:05 Uhr, jede Stunde, etc....
Beschreibung Hier kann eine beliebige Beschreibung des Adapters eingegeben
133
Kapitel 14. Zusätzliche Module
werden.
Abbildung 14.17.: Eingabemaske zum Anlegen eines neuen Mail-Adapters
Nach der Eingabe aller Daten, können Sie über den Knopf Verbindung testen
prüfen, ob sich das Postfach verbinden lässt. Siehe dazu Abbildung 14.18 und
14.19.
134
Kapitel 14. Zusätzliche Module
Abbildung 14.18.: Erfolgreicher Verbindungstest des Mail-Adapters zum Postfach
Wenn der Verbindungstest fehlschlägt, kann dies mehrere Ursachen haben. Hier
die Felder, die Sie überprüfen sollten:
•
•
•
•
•
Server-Typ
Mail-Host (und ein eventuell angegebener Port)
Mail-Benutzer
Mail-Passwort
Mail-Pfad (eventuell heisst der Pfad intern anders, als er Ihnen angezeigt
wird). Hier können Sie auch / eingeben und dann einfach mal den Ordner
aktualisieren (siehe unten). Dann können Sie sehen, wie die einzelnen Ordner
benannt sind.
Der Mail-Pfad wird beim Testen der Verbindung nicht geprüft. Wenn
dieser nicht stimmt, werden keine Mails synchronisiert.
135
Kapitel 14. Zusätzliche Module
Abbildung 14.19.: Fehlgeschlagener Verbindungstest des Mail-Adapters zum Postfach
14.2.2. Filter definieren
In einem weiteren Reiter können Sie Filter definieren, um gezielt Mails über den
Adapter einzulesen, die bestimmte Kriterien erfüllen (siehe Abbildung 14.20).
Es können beliebig viele Filter pro Mailadapter definiert werden. Ein einzelner
Filter wendet einen regulären Ausdruck (Wert) auf eines der ausgewählten Felder
(Anwenden auf ) an. Mit dem Feld Test kann der eingegebene Ausdruck getestet
werden.
136
Kapitel 14. Zusätzliche Module
Abbildung 14.20.: Filtereinstellungen eines Adapters
Reguläre Ausdrücke
Da das Thema Reguläre Ausdrücke sehr umfangreich ist, soll hier nur ein kurzer
Überblick über die Möglichkeiten gegeben werden. Weiterführende Informationen
und eine Unmenge an Anwendungsbeispielen finden Sie im Internet.
Reservierte Zeichen müssen mit einem \ maskiert werden, wenn diese als Text behandelt werden sollen. Folgende Zeichen sind reserviert:
/ . + * ? ^ $ | ( ) [ ] { }
Erklärung der reservierten Zeichen:
• . ist Platzhalter für ein beliebiges Zeichen (x.y findet xay, aber auch xuy)
• + gibt an, dass das vorhergehende Zeichen ein oder n-mal vorkommen kann
(x+ findet x, aber auch xxxxx)
• * gibt an, dass das vorhergehende Zeichen kein, ein oder n-mal vorkommen
kann (x* findet x, aber auch xxxxx, oder aber auch y)
• ? gibt an, dass das vorhergehende Zeichen ein beliebiges anderes sein kann
(xyz? findet xy, xyz, aber auch xyw)
• ^ gibt an, dass der Ausdruck am Anfang des Satzes stehen muss
• $ gibt an, dass der Ausdruck am Ende des Satzes stehen muss
• | gibt ein entweder oder eines Begriffes an (agorum\.(com|de) findet agorum.
com oder auch agorum.de)
• () fasst mehrere Zeichen zusammen, um die vorhergenden Operatoren auch
137
Kapitel 14. Zusätzliche Module
auf mehrere Zeichenketten anwenden zu können
• [] gibt Bereiche an ([a-c]gorum findet agorum, bgorum und auch cgorum)
• {} gibt an, wie oft ein Zeichen wiederholt werden darf (h.{2}s findet haus
aber auch hans, zwei beliebige Zeichen zwischen h und s)
Beispiele Um alle E-Mails, die mit der Absender-Adresse agorum.com versendet
wurden, zu erhalten wird folgendes angegeben:
Anwenden auf: Absender-Adresse
Wert: .*agorum\.com.*
um alle E-Mails, die mit den Absender-Adresse agorum.com oder agorum.de versendet wurden, wird folgendes angegeben:
Anwenden auf: Absender-Adresse
Wert: .*agorum\.(com|de).*
Um alle E-Mails, die NICHT agorum in der Absender-Adresse enthalten, zu erhalten, wird folgendes angegeben:
Anwenden auf: Absender-Adresse
Wert: !.*agorum.*
Löschen im Adapter
Zum Löschen des Adapters muss dieser markiert werden, dann über das
Menü Löschen auswählen.
Verlinken
Aus dem Adapter heraus können die Daten in andere Bereiche von agorum core
verlinkt werden. Umgekehrt ist dies nicht möglich.
14.2.3. Berechtigung
Einen Adapter kann derjenige anlegen, der die Berechtigung für den Menüpunkt
hat (Siehe ParameterAccessIdentifier: ACL_PAI_AMailMountPointCreateUpdate_
und ACL_PAI_Adapters_). Ein Adapter ist nur über einen Administrator und denjenigen, der den Adapter angelegt hat, bearbeitbar. Unabhängig davon, welche
ACL der Adapter selbst besitzt. Unterhalb des Adapters wird die Berechtigung
138
Kapitel 14. Zusätzliche Module
vererbt, die auf dem Adapter selbst gesetzt wurde. Wenn der Adapter als Archiv
für eine Mailbox angelegt wird, sollte dieser immer im Privatbereich des Benutzers
angelegt werden. Dann ist sichergestellt, dass die Mails auch nur diesem Benutzer
zugänglich sind.
14.2.4. Kopieren
Sie können Daten aus dem Adapter in andere Bereiche von agorum core kopieren.
Der Adapter selbst kann nicht kopiert werden.
14.2.5. Mail-Sync / Ordner aktualisieren
Mail-Sync
Hier wird der gesamte Adapter neu synchronisiert. Die Synchronisation läuft im
Hintergrund ab. Das Symbol des Adapters blinkt, solange die Synchronisation
läuft. Um die Änderungen verfolgen zu können, müssen Sie die Ansicht des Ordners hin und wieder aktualisieren. Da die E-Mails immer in Blöcken abgeholt und
abgearbeitet werden, kann es sein, dass es eine Weile dauert, bis Sie etwas sehen.
Mail-Sync ist nur direkt unterhalb des Adapters im Menü auswählbar.
Außerdem ist dieser Menüpunkt nur bei einem Administrator oder bei
dem Benutzer, der dazu berechtigt ist (siehe ParameterAccessIdentifier ACL_PAI_AMailMountPointSync_), sichtbar.
Ordner aktualisieren
Hier wird nur der Ordner aktualisiert, in dem Sie sich gerade befinden. Die Aktualisierung wird sofort ausgeführt und der Ordner wird für die Bearbeitung solange
gesperrt, bis diese beendet wurde.
Zusätzliche Einstellungen
In der Regel ist es notwendig, dass der MailAdaptor einen schreibenden Zugriff
auf das Mail-Postfach erhält, damit der ”‘Gelesen”’ Status beibehalten werden
139
Kapitel 14. Zusätzliche Module
kann. Bei manchen Mail-Server macht dies jedoch Probleme. Daher kann mit folgender MetaDb-Option der Zugriff gesteuert werden: MAIN_MODULE_MANAGEMENT/
ngfsadapter/mailadapter/control/OpenMailFolderReadOnly, true=Die Mailbox
wird read-only geöffnet, false=Die Mailbox wird lesend und schreiben geöffnet.
14.3. Der Metadaten-Designer
Der Metadaten-Designer ist Bestandteil von agorum core Pro.
Mit dem Modul EADesigner haben Sie folende Möglichkeiten:
• Entwurf von Reiter für die Bearbeitungsmasken im agorum desk4web, die
Sie nach bestimmten Kriterien anzeigen lassen können, um darüber Erweiterte Attribute eingeben, bzw. ändern zu können.
• Entwurf von Reitern für die erweiterte Suche im agorum desk4web, um
darüber nach (erweiterten) Attributen suchen zu können.
• Entwurf von Eingabemasken für Workflows.
• Entwurf von Suchfeldern für die Adress-Export-Maske.
Den Designer können Sie über das Portalmenü Systemsteuerung, Menüpunkt
Metadaten-Designer erreichen. Dieser Menüpunkt kann über den ParameterAccessIdentifier ACL_PAI_EADesignerAdministration_ ein- bzw. ausgeblendet werden.
140
Kapitel 14. Zusätzliche Module
Abbildung 14.21.: Liste mit entworfenen Reitern
14.3.1. Erstellen einer neuen Konfiguration
Wenn Sie einen neuen Reiter für die Eingabe von erweiterten Attributen, bzw. für
die erweiterte Suche entwerfen, so müssen Sie auf dem ersten Reiter der Entwurfsmaske (siehe Abbildung 14.22) mindestens die folgenden Werte ausfüllen:
Bezeichnung
Name
Angezeigter
Key)
Masken
Name
(Text-
Beschreibung
Der eindeutige Namen für diesen Reiter. Dieser
Name wird nur intern benutzt und wird an keiner Stelle angezeigt. Der Name darf aus Buchstaben, Zahlen, Bindestrichen, Unterstrichen und
Leerzeichen bestehen.
Der Name mit dem der Reiter in einer Maske
angezeigt wird. Hier kann ein TextKey (welcher
in den Message.property Dateien übersetzt wird)
oder ein Freitext eingegeben werden.
Masken, bei den dieser Reiter angezeigt werden
kann.
141
Kapitel 14. Zusätzliche Module
Bezeichnung
Beschreibung
Zusatz zur erw. Suche
Beschreibung
Eine Beschreibung des Reiters. Dieses Wert ist
optional.
Lucene Query, das mit dem erzeugten Suchquery
”verunded” wird. Dieses Wert ist optional.
Abbildung 14.22.: Allgemeine Einstellungen eines Reiters
Auf dem Reiter Designer können Sie Eingabefelder mit unterschiedlichsten Eigenschaften definieren. Zur Auswahl stehen die folgenden Eingabefelder:
• Eingabefeld. In dieses einzeilige Feld kann eine beliebige Zeichenkette eingegeben werden.
• Eingabebereich. In dieses mehrzeilige Feld kann eine beliebige Zeichenkette
eingegeben werden.
• Datum. In dieses Feld kann ein Datum eingegeben, bzw. ausgewählt werden.
• Datum mit Uhrzeit. In dieses Feld kann ein Datum und eine Uhrzeit eingegeben/ausgewählt werden.
• Ganzzahl. In dieses Feld kann eine Ganzzahl (Integer) eingegeben werden.
142
Kapitel 14. Zusätzliche Module
• Dezimalzahl. In dieses Feld kann eine Dezimalzahl (Double) eingegeben werden.
• Auswahlfeld. Mit diesem Feld kann eine Wert aus einer Liste ausgewählt
werden.
• Ja-/Nein-Feld. Mit dieser Checkbox können sie einen Boolean speichern.
• Trenner. Trennlinie
Mit den vier Knöpfen rechts neben dem Feld (siehe Abbildung 14.23) können Sie
die Position des Feldes verändern, es bearbeiten und es löschen.
Abbildung 14.23.: Konfiguration der Eingabeelemente
Jedes
der
verfügbaren
Eingabefelder hat die drei Attribute Name,
Angezeigter Name (TextKey) und In erweiterter Suche verwenden (siehe
Abbildungen 14.24, 14.25 und 14.26), wobei der Name dem Namen des zu
speichernden Erweiterten Attributes entspricht und der Angezeigte Name in den
Eingabemasken erscheint. Wenn die Option In erweiterter Suche verwenden
gesetzt ist, dann wird dieses Attribut in der Erweiterten Suche verwendet.
143
Kapitel 14. Zusätzliche Module
Abbildung 14.24.: Konfiguration eines Eingabefeldes
Je nach Typ des Feldes können folgende weiteren Eigenschaften konfiguriert werden:
• Vorbelegter Wert: Wenn der Wert des Erweiterten Attributes nicht belegt ist,
wird das Eingabefeld mit diesem Wert vorbelegt. Verfügbar bei: Eingabefeld,
Eingabebereich, Ganzzahl, Dezimalzahl und Ja-/Nein-Feld.
• Pflichtfeld: Für das Erweiterte Attribute muss ein Wert ausgefüllt werden.
Verfügbar bei: Eingabefeld, Eingabebereich, Datum, Datum mit Uhrzeit,
Ganzzahl, Dezimalzahl.
• Validierung: Ein regulärer Ausdruck auf den der Wert des Erweiterten Attributes passen muss. Wird dem regulären Ausdruck ein ! (Ausrufezeichen)
vorangestellt, so wird der Ausdruck negiert! Verfügbar bei: Eingabefeld, Eingabebereich, Ganzzahl, Dezimalzahl.
• Werte: Dieses Feld gibt es nur bei Auswahlfeldern (siehe Abbildung 14.26).
Hier werden die verfügbaren Werte und Texte der Auswahlliste definiert.
Abbildung 14.25.: Konfiguration eines Feldes für Datum mit Uhrzeit
144
Kapitel 14. Zusätzliche Module
Abbildung 14.26.: Konfiguration eines Auswahlfeldes
Auf dem letzten Reiter Bedingungen (siehe Abbildung 14.27) können Sie bestimmen, unter welchen Bedingungen der Reiter auf den Bearbeitungsmasken angezeigt
wird. Die Bedingungen greifen nicht für die erweiterte Suche. Hier wird der Reiter
immer angezeigt!
Sie haben die Möglichkeit nach Pfaden, Objektattributen (z.B. Name, Beschreibung, Änderungsdatum, etc.) oder Erweiterten Attributen zu filtern. Wenn Sie
nach Objektattributen oder Erweiterten Attributen filtern, muss der Wert des Attributes mit einem von Ihnen eingegebenen regulären Ausdrucks passen.
Wenn mehrere Pfade eingegeben werden, so muss einer der Pfade passen (ODERVerknüpfung), damit der Reiter bei einer Bearbeitungsmaske angezeigt wird.
(Erweiterte) Attribute mit gleichen Namen werden ebenfalls ODER-Verknüpft,
Attribute mit unterschiedlichen Namen werden UND-Verknüpft (alle müssen passen).
Pfade, Attribute und Erweiterte Attribute werden miteinander durch eine UNDVerknüpfung verbunden.
145
Kapitel 14. Zusätzliche Module
Abbildung 14.27.: Bedingungen unter denen der Reiter angezeigt wird
14.3.2. Verwendung eines Reiters in einer Bearbeitungsmaske
Wenn die Bedingungen passen, dann wird für die ausgewählten Masken der entsprechende Reiter angezeigt. In Abbildung 14.28 sehen Sie einen Reiter mit ausgefüllten Werten.
Beim Speichern werden die Eigenschaften der Erweiterten Attribute überprüft: Ist
das Attribut ein Pflichtfeld und passt der reguläre Ausdruck auf den eingegeben
Wert.
146
Kapitel 14. Zusätzliche Module
Abbildung 14.28.: Entworfener Reiter in einer Bearbeitungsmaske
14.3.3. Verwendung eines Reiters der erweiterten Suche
Wenn bei mindestens einem Attribute die Option In erweiterter Suche
verwenden gewählt wurde, so wird in der erweiterten Suche ein Reiter mit dem
(angezeigten) Namen der Konfiguration erscheinen.
Alle Attribute werden verunded.
14.3.4. Berechtigung zum Bearbeiten einzelner
Konfigurationen
In
der
MetaDB
unter
MAIN_MODULE_MANAGEMENT/eadesigner/
designedattributestabs werden alle Daten für die Konfigurationen abgelegt. Auf
die einzelnen Konfigurationen unter designedattributestabs ist bereits ein spezielles ACL ACL_DesignedTabs (im ACL Bereich unter System/eadesigner) gesetzt.
Im Standard dürfen nur Administratoren Reiter erstellen, bzw. bearbeiten.
Wenn einzelne Konfigurationen anders berechtigt werden sollen, so können Sie
147
Kapitel 14. Zusätzliche Module
eigene ACLs auf die Konfigurationen unterhalb von MAIN_MODULE_MANAGEMENT/
eadesigner/designedattributestabs setzten. Dabei müssen die bearbeiten Benutzer, bzw. Gruppen das Löschrecht haben.
14.3.5. Metadaten-Maske in der Suche als Standardmaske
öffnen
In
der
MetaDB
unter
MAIN_MODULE_MANAGEMENT/eadesigner/
designedattributestabs/NAME-DER-KONFIGURATION/commons/TabActive
stellen Sie ein, ob diese Metadatenmaske in der erweiterten Suche als Standardmaske
geöffnet werden soll. Wenn Sie dies möchten, so stellen Sie als TabActive den
Wert true ein.
14.4. Der Metadaten-Editor
14.4.1. Allgemein
Mit dem Metadaten-Editor können die Metadaten sowohl von einzelnen als auch
mehreren Objekten gleichzeitig bearbeitet werden. Der Editor ist als Workflow
implementiert.
Der Metadaten-Editor benötigt das agorum core Pro WorkflowModul.
14.4.2. Freigabe für weitere Benutzer
In der aktuellen Version des Metadaten-Editors findet keine Überprüfung auf
Schreibberechtigung statt, daher ist in der Voreinstellung nur der Administrator
berechtigt, den Workflow auszuführen.
Wenn Sie weiteren Benutzern den Zugang zum Editor ermöglichen wollen, so setzen Sie eine entsprechende ACL auf den Workflow, beispielsweise im Menü der
Workflow-Liste unter Bearbeiten → Rechte vergeben. Zusätzlich sollten Sie
den Benutzer zur ACL ACL_PAI_MetaDataWorkflow_ hinzufügen, damit der zusätzliche Eintrag im Kontextmenü auf der Weboberfläche angezeigt wird.
148
Kapitel 14. Zusätzliche Module
14.4.3. Integration in den Windows-Client
Der Metadaten-Editor kann auch im Kontextmenü agorum core WindowsClients angezeigt werden. Um die entsprechenden Einträge hinzuzufügen,
öffnen Sie unterhalb Ihres agorum core-Installationspfads im Verzeichnis
jboss/server/default/deploy/roi.ear/roiwebui.war/WEB-INF/config/winclient/
die Datei MenuController.xml. Fügen Sie dort im Abschnitt <MenuController>
einen Eintrag für den Metadaten-Editor wie folgt hinzu:
<MenuController>
<Identifier>agorum.winclient.contextmenu.Default</Identifier>
<MenuEntries>
<SubMenu sortOrder="100">agorum.winclient.contextmenu.submenu.AgorumCore</SubMenu>
<Entry sortOrder="200">agorum.winclient.contextmenu.JumpToD4wFolder</Entry>
<Entry sortOrder="300">agorum.winclient.contextmenu.Preview</Entry>
<!-- Eintrag für den Metadaten-Editor -->
<Entry sortOrder="400">agorum.winclient.contextmenu.MetaDataEditor</Entry>
</MenuEntries>
</MenuController>
Am Ende der Datei, vor der Zeile </ControllerConfiguration> setzen sie den
folgenden Code ein:
<MenuEntryController>
<Identifier>agorum.winclient.contextmenu.MetaDataEditor</Identifier>
<ParameterIdentifier>parameter.workflow.MetaDataWorkflow.Start</ParameterIdentifier>
<TextKey>Metadaten-Editor</TextKey>
<Icon></Icon>
<MultipleIds>true</MultipleIds>
<Parameters>
<Parameter>
<Name>ForFile</Name>
<Value>true</Value>
</Parameter>
<Parameter>
<Name>ForFolder</Name>
<Value>true</Value>
</Parameter>
<Parameter>
<Name>ForMultiple</Name>
<Value>true</Value>
149
Kapitel 14. Zusätzliche Module
</Parameter>
<Parameter>
<Name>ForNone</Name>
<Value>false</Value>
</Parameter>
<Parameter>
<Name>ForAgorumCoreDrive</Name>
<Value>true</Value>
</Parameter>
</Parameters>
</MenuEntryController>
Danach können alle Benutzer, die über die Berechtigung verfügen, den MetadatenEditor aus dem Kontextmenü im Windows-Explorer starten. Dabei werden die
momentan selektierten Objekte an den Editor übergeben.
Die Datei MenuController.xml kann bei Updates von agorum core
überschrieben werden. Es ist daher empfehlenswert, eine Sicherheitskopie der veränderten Datei anzulegen.
14.5. Metadaten in Listen darstellen
Bestandteil des Metadaten-Designers ist die Möglichkeit Metadaten
direkt in Listen (Suchergebnis, Mitteilungen, Dokumentenordner) darzustellen.
14.5.1. Einstellungen in der MetaDB
Alle Einstellungen des Moduls werden in der MetaDB unter /MAIN_MODULE_
MANAGEMENT/eadesigner/control/MetaDataInList vorgenommen.
Entry
DisplayWidthInPixels
Beschreibung
Definiert die Breite in Pixel pro Metadateneintrag in der Liste. Alle Werte, die
länger sind, werden abgeschnitten.
Standard
180
150
Kapitel 14. Zusätzliche Module
Entry
LinkMetaDataValues
Beschreibung
Wenn dieser Wert true ist, dann sind die
einzelnen Werte in der Liste anklickbar
und es wird daraufhin eine Suche mit
dem gewählten Metadatenfeld und Inhalt
durchgeführt.
MaxCharacters
Definiert die maximale Anzahl von Zeichen für einen Wert. Ist der Wert länger,
wird dieser beschnitten. Somit lässt sich
die zu übertragende Datenmenge vom
Server reduzieren, wenn sehr viel Text in
diversen Feldern steht.
MetaDataDefaultEnabled Ist dieser Wert true, so ist die MetadatenDarstellung für alle Listen standardmäßig aktiviert, der Benutzer
kann dann die Darstellung gezielt pro
Liste ausschalten. Ist der Wert false,
dann sind die Metdaten für alle Listen
deaktiviert, der Benutzer kann dann die
Darstellung gezielt pro Liste einschalten.
MetaDataIncludeFilter
In diesem Wert können mehrere Filter (Array mit Regular Expression) für
die darzustellenden Metadatenfelder bestimmt werden. Dadurch lassen sich
zum einen gezielt Felder ein-/ausblenden
oder aber auch die Reihenfolge der
Darstellung bestimmen. Definiert man
zum Beispiel als Felder kundennummer.
*| |rechnungsnummer. * wird zuerst die
Kundennummer und dann die Rechnungsnummer ausgegeben. Mit einem
vorangestellten ! kann man den Filter negieren. Zum Beispiel !kundennummer. *|
|. * stellt alle Felder dar, außer der Kundennummer
Standard
true
80
true
.*
151
Kapitel 14. Zusätzliche Module
14.6. Metadaten-Eingabe beim Speichern von
Dokumenten erzwingen
Wenn der agorum core Windows-Client installiert ist, kann beim Speichern von Dokumenten in bestimmte Verzeichnisse die Eingabe von
Metadaten erzwungen werden. Es öffnet sich dann automatisch nach
dem Erstellen ein Fenster für die Eingabe der Metadaten für das eben
gespeicherte Dokument. Handelt es sich um mehrere Dokumente, so
können die Metadaten für alle Dokumente auf einmal gesetzt werden
oder für jedes einzelne Dokument hintereinander.
14.6.1. Einstellungen in der MetaDB
Alle Einstellungen des Moduls werden in der MetaDB unter /MAIN_MODULE_
MANAGEMENT/eadesigner/control/MetaDataAutoInput vorgenommen. Unterhalb
dieses Bundles wird ein weiteres Bundle mit einem beliebigen Namen angelegt.
Darin befindet sich die Konfiguration für bestimmte Ordner, auf die die automatische Metadatenvergabe funktionieren soll. Es können mehrere solcher Konfigurationen erstellt werden. Es gibt in der Standardinstallation ein Demo-Bundle, das
die Konfiguration beispielhaft zeigt.
Entry
Active
ClassNames
StartPath
Beschreibung
true=Konfiguration ist aktiv
Ein Array von agorum core ObjektKlassennamen, auf die diese Konfiguration angewendet werden soll.
Ein Array von agorum core Startpfaden
(oder IDs), ab denen die Konfiguration
gelten soll
Standard
true/false
FileObject
/agorum/roi/Files/Demo
Die Metadaten-Maske, die dann kommen soll, wenn ein Dokument in den jeweiligen eingestellten Ordner gespeichert wird, wird im Metadaten-Designer definiert.
Erstellen Sie, wie gewohnt eine Maske mit dem Metadatendesigner und wählen Sie
bei Verfügbare Masken im Reiter Allgemein: Metadaten aus. Über Filtereinstellungen können Sie dann verschiedenen Ordnern verschiedene Metadatenmasken
zuordnen.
152
Kapitel 14. Zusätzliche Module
14.7. Das Search-Highlighting
Dieses Zusatzmodul zeigt Ihnen direkt in der Ergebnisliste Ihrer Suche eine Zusammenfassung des gefundenen Dokumentes an und markiert die gesuchten Worte.
So können Sie sehr schnell erkennen, ob das gefundene Dokument das ist, wonach
Sie gesucht haben. Zudem haben Sie die Möglichkeit auch eine komplette TextAnsicht des Dokumentes inklusive Markierung der Fundstellen anzeigen zu lassen.
So können Sie sich sehr schnell einen Überblick über den Inhalt des Dokumentes
verschaffen, ohne auch nur einmal das Dokument öffnen zu müssen.
Das Search-Highlighting-Modul ist Bestandteil von agorum core
Pro.
14.7.1. Einstellungen in der MetaDB
Für das Modul Search-Highlighting können in der MetaDB unter /MAIN_MODULE_
MANAGEMENT/searchhighlighting/control folgende Einstellungen angepasst werden:
Entry
FragmentSeperator
HighlightStartTag
HighlightEndTag
MaxDocBytesToAnalyze
MaxFragmentsToHighlight
Beschreibung
Optischer Trenner zwischen den Fragmenten
Start - Tag für das markierte Wort, um die Markierung darzustellen
Abschluss - Tag für das
markierte Wort, um die
Markierung darzustellen
Maximale Textlänge die
durch den Highlighter
verarbeitet wird in Bytes
Maximale Anzahl der
Fragmente, die dargestellt werden
Standard
...
<span class=”highlighted”>
</span >
1048576
3
153
Kapitel 14. Zusätzliche Module
14.8. Das Preview/Vorschau-Modul
Der Preview/Vorschau-Modul steht nur in agorum core Pro als
Zusatzmodul zur Verfügung.
14.8.1. Einstellungen in der MetaDB zum Hinzufügen von
Stempeln
In der MetaDb müssen für das Hinzufügen von Stempel unter /MAIN_MODULE_
MANAGEMENT/preview/overlay/DefaultSet Property-Bundles mit beliebigem Namen angelegt werden. Unterhalb dieser Property-Bundles wird dann für jeden
Stempel ein Bild und ein Erweitertes Attribut definiert. Im folgenden Beispiel
werden zwei Stempel (Freigegeben und Abgelehnt) definiert.
Für den Freigeben-Stempel wird das Property-Bundle Approved angelegt. Es hat
folgende Property-Einträge (alle vom Typ Zeichenkette (String), siehe Abbildung
14.29):
Entry
Image
Name
Text
Value
Beschreibung
Der relative Pfad zur Bilddatei des
Freigeben-Stempels.
Name des Erweiterten Attributes, in dem
der Freigabe-Status gespeichert wird.
Der Text des Freigabe-Status.
Der Wert des Freigabe-Status.
Standard
154
Kapitel 14. Zusätzliche Module
Abbildung 14.29.: Einstellungen für den Freigegeben-Stempel
Für den Abgelehnt-Stempel wird das Property-Bundle Rejected angelegt. Es hat
folgende Property-Einträge (alle vom Typ Zeichenkette (String), siehe Abbildung
14.30):
Entry
Image
Name
Text
Value
Beschreibung
Der relative Pfad zur Bilddatei des
Abgelehnt-Stempels.
Name des Erweiterten Attributes, in dem
der Freigabe-Status gespeichert wird.
Der Text des Freigabe-Status.
Der Wert des Freigabe-Status.
Standard
Abbildung 14.30.: Einstellungen für den Abgelehnt-Stempel
155
Kapitel 14. Zusätzliche Module
14.9. Das PreviewThumbnails-Modul Vorschau-Bilder in den Listen
Der PreviewThumbnails-Modul steht nur in agorum core Pro als
Zusatzmodul zur Verfügung. Zudem wird das agorum core PreviewModul als Basis benötigt
14.9.1. Einstellungen in der MetaDB
Alle Einstellungen des Modules werden in der MetaDB unter /MAIN_MODULE_
MANAGEMENT/previewthumbnails/control vorgenommen.
Entry
Beschreibung
PreviewThumbnailsDefaultEnabled
Ist dieser Wert true, so ist das Preview
für alle Listen standard-mäßig aktiviert,
der Benutzer kann dann die Darstellung
gezielt pro Liste ausschalten. Ist der Wert
false, dann sind die Vorschaubilder für alle Listen deaktiviert, der Benutzer kann
dann die Darstellung gezielt pro Liste einschalten.
PreviewThumbnailsSize Gibt die Größe in Pixeln der längsten Seite des Dokumentes an. Ist beispielsweise
das Dokument im Hochformat, gibt dieser Werte die Höhe der darzusetellenden
Vorschau an, die Breite wird entsprechen
skaliert.
Standard
false
95
14.10. Das REDDOXX-Modul
Das REDDOXX-Modul bieten eine Schnittstelle von der E-Mail-ManagementLösung REDDOXX (http://www.reddoxx.com) in agorum core. So besteht
die Möglichkeit der Verbindung einer E-Mail-Archivierungslösung mit einem
Dokumentenmanagement-System.
156
Kapitel 14. Zusätzliche Module
Das REDDOXX-Modul steht nur in agorum core Pro als Zusatzmodul zur Verfügung.
14.10.1. TimePhasedAction
Die TimePhasedAction ReddoxxInputFolderWatcher muss auf den Ordner gesetzt
werden, in den REDDOXX die Schnittstellendateien hin kopiert. Die TimePhasedAction ist so konfiguriert, das sie auf Events reagiert, aber auch zusätzlich jede
Minute läuft.
14.10.2. Einstellungen in der MetaDB
Alle
Einstellungen
des
Modules
werden
über
die
TimePhasedAction
ReddoxxFilesHandler in der MetaDB unter /MAIN_MODULE_MANAGEMENT/
timephasedaction/control/ReddoxxFilesHandler/Parameters vorgenommen.
Direkt unter Parameters befindet sich nur eine Einstellung:
Entry
DeleteXmlFile
Beschreibung
Definiert, nach erfolgreicher Verarbeitung die XML-Schnittstellendatei
gelöscht werden soll (true oder false).
Standard
true
Unter dem Bundle Filter wird für jede Filtereinstellung ein eigenes Bundle mit
einem beliebigen Namen angelegt. Unterhalb diese Bundles gibt es dann folgende
Konfigurationsmöglichkeiten:
Entry
Active
SortOrder
Beschreibung
Definiert, ob dieser Filter aktiv ist oder
nicht (true oder false).
Gibt die Reihenfolge an, in welcher dieser
Filter im Vergleich zu den anderen Filtern ausgeführt wird.
Standard
false
0
157
Kapitel 14. Zusätzliche Module
Entry
FilterMailAddrRegExp
FilterPath
ToPathBase
ToPathIn
ToPathOut
SetACL
WorkflowName
WorkflowDescription
Beschreibung
Regular Expression, die auf die einzelnen
SMTP-Mailadressen
angewendet wird (Erweiterte Attribute: reddoxx EnvRecipients und reddoxx EnvSender ).
Bei
ausgehenden
Mails (wenn reddoxx Direction den
Wert 1 hat) wird die Absenderadresse genommen (reddoxx EnvSender ),
bei allen anderen Mails (wenn reddoxx Direction nicht den Wert 1 hat)
werden die Empfangsadressen geprüft
(reddoxx EnvRecipients).
Filter auf den Eingangsordner.
Basispfad für Zielordner. Der Pfad kann
absolut angeben werden oder relativ ab
dem Ordner, in den die REDDOXXSchnittstellendateien kopiert werden. Innerhalb der Pfadangabe können die unten
aufgeführten Variablen verwendet werden.
Zielordner für eingehende Mails. Dieser
Pfad muss relativ (ab ToPathBase) angegeben werden. Innerhalb der Pfadangabe
können die unten aufgeführten Variablen
verwendet werden.
Zielordner für ausgehende Mails. Dieser
Pfad muss relativ (ab ToPathBase) angegeben werden. Innerhalb der Pfadangabe
können die unten aufgeführten Variablen
verwendet werden.
Definiert, ob Gruppen und ACLs für den
Zielordner angelegt und zugewiesen werden sollen (true oder false).
Name des Workflows, der mit der zu
prüfenden Mail gestartet wird, denn dieser Filter greift. Wenn dieses Entry leer
oder nicht vorhanden ist, wird kein Workflow gestartet.
Beschreibung des zu startenden Workflows, wenn der Filter greift. Ist dieses
Entry leer oder nicht vorhanden, dann
wird kein Workflow gestartet.
Standard
false
158
Kapitel 14. Zusätzliche Module
Entry
PerformNextFilter
Beschreibung
Definiert, ob der nächste Filter (SortOrder ) ausgeführt werden soll, wenn dieser
Filter greift (true oder false). Greift der
Filter nicht, dann wird auf jeden Fall der
nächste Filter ausgeführt
Standard
false
Variablen im Pfadnamen
${RDX:mailaddress} Wird durch die Empfängeradresse, bzw. Absenderadresse ersetzt. Bei ausgehenden Mails (wenn reddoxx Direction den Wert 1 hat)
wird die Absenderadresse genommen (reddoxx EnvSender ), bei allen anderen
Mails (wenn reddoxx Direction nicht den Wert 1 hat) werden die Empfangsadressen verwendet (reddoxx EnvRecipients).
${RDX:domainname} Wird durch den Domainteil der Empfängeradresse, bzw. Ab-
senderadresse ersetzt.Bei ausgehenden Mails (wenn reddoxx Direction den
Wert 1 hat) wird die Absenderadresse genommen (reddoxx EnvSender ), bei
allen anderen Mails (wenn reddoxx Direction nicht den Wert 1 hat) werden
die Empfangsadressen verwendet (reddoxx EnvRecipients).
${SDF:yyyy/mm/dd} Wird durch einen ”Datumsorder” ersetzt. Das Format entspricht dem SimpleDateFormat von Java: http://download.oracle.com/
javase/1.4.2/docs/api/java/text/SimpleDateFormat.html. In dem hier
verwendeten SimpledateFormat werden drei Ordner angelegt: der Erste mit
dem aktuellen Jahr (z.B. 2010 ), der zweite mit dem aktuellen Monat (z.B.
09 ) und der letzte mit dem aktuellen Tag (z.B. 05 ). So lassen sich die E-Mails
sehr einfach in Datumsordner archivieren.
14.11. Das agorum core Sync-Modul
Das Sync-Modul steht nur in agorum core Pro als Zusatzmodul zur
Verfügung.
159
Kapitel 14. Zusätzliche Module
14.11.1. Anwendungsfälle für das agorum core Sync-Modul
Anwendung bei mehreren Standorten
Gibt es mehrere Standorte, an denen jeweils ein eigener agorum core-Server installiert ist, können durch agorum core Sync Bereiche von agorum core an allen
Standorten synchronisiert werden. Dabei kann jeder Standort unabhängig von der
Verbindung über das Internet arbeiten, da gemeinsame Dokumente an allen Standorten abgelegt sind. Diese Dokumente können an jedem Standort geändert werden,
und die Änderungen werden an die anderen Standorte synchronisiert.
Anwendung für den Datenaustausch mit Kunden, Lieferanten oder
Partnern
Rechnungserfassung und Metadatenerstellung Eingangsrechnungen werden in
ein definiertes Verzeichnis gescannt. Ein Workflow ändert nun den Namen des Dokuments in ID.Extension. Anschließend wird das Dokument in das Übertragungsverzeichnis verlinkt. Die Dokumente werden zum Dienstleister übertragen, der die
Metadaten aus den Dokumenten erkennt. Nach Erkennung der Metadaten wird der
Scan gelöscht, die Metadaten werden in einer Datei mit dem Namen des Dokuments
und einer Erweiterung (z.B. ’ID.pdf.xml’ oder ähnliches) abgelegt. Danach werden
die Metadaten in einem Rückübertragungsverzeichnis zuückübertragen. Ein Workflow überwacht das Rückübertragungsverzeichnis, wobei die ankommenden Metadaten dem gescannten Dokument zugeordnet werden. Der Workflow erkennt an
Basisinformationen eine elektronische Akte und ordnet das gescannte Dokument
zu.
Gescannte Dokumente direkt zum Steuerberater In agorum core eingescannte
Belege können über agorum core Sync direkt auf das agorum core System des
Steuerberaters synchronisiert werden. Dieser kann die Belege dann automatisiert
verarbeiten.
Synchronisation auf einen Laptop
Auf einem Laptop wird ein lokales agorum core Pro System, z.B. eine VM-Ware
installiert. In dieses lokale System wird ein gewünschtes Verzeichnis vom Hauptsystem synchronisiert. Nun verfügt man auch mobil über diese Dokumente. Wenn
160
Kapitel 14. Zusätzliche Module
der Laptop wieder an das Heimnetz angeschlossen wird, werden die Daten des
lokalen Systems auf dem Laptop wieder zurücksynchronisiert.
Daten aus einer Cloud auf den lokalen Server holen
Möchte man wichtige Dokumente sichern, die sich in einer Cloud-Umgebung befinden, kann man über das agorum core Sync-Modul diese Daten auf ein eigenenes
internes System synchronisieren und sich somit eine lokales Abbild der Dokumente
anlegen.
14.11.2. Besonderheiten des agorum core Sync-Modules
1. Wenn ein ACL mit dem selben Namen auf dem entfernten System existiert,
wird dieser verwendet und gesetzt.
2. Wenn ein Benutzer mit dem selben Namen auf dem entfernten System existiert, wird dieser als Creator bzw. Lastmodifier des Dokuments gesetzt.
3. Objekte können verschoben und umbenannt werden.
4. Wird ein ACL geändert, so wird dieser vom eigenen System zum Zielsystem
und auch umgekehrt synchronisiert. Wurde der ACL sowohl auf dem eigenen
System als auch auf dem Zielsystem geändert, wird der ACL des in der
Konfiguration angegebenen Masters verwendet. Wurde der ACL auf einem
System geändert und ist im anderen System nicht vorhanden, bleibt der ACL
im ursprünglichen Zustand.
5. Wird ein Objekt gesperrt, wird dieser Status bei der Synchronisation
mitübertragen, wenn es dieses Objekt auf der Gegenseite schon gibt. Ist
es noch nicht vorhanden, wird nichts synchronisiert.
6. Ist ein Ordner gesperrt, wird der Ordner mit Status ’Gesperrt’ übertragen,
nicht aber dessen Inhalt synchronisiert. Ist ein Ordner gesperrt, wird dessen
Inhalt nicht synchronisiert. Wurde der Ordner noch nie synchronisiert, wird
ebenfalls nichts synchronisiert.
7. Ein Fileadapter wird auf dem Zielsystem in ein normales File- bzw. FolderObjekt umgewandelt.
161
Kapitel 14. Zusätzliche Module
8. Werden Objekte in einen Fileadapter synchronisiert, werden diese in
Fileadapter-Objekte umgewandelt. Gibt es dabei Objekte, die ein Fileadapter nicht kennt, wird der Synchronisationsvorgang für dieses Objekt nicht
durchgeführt.
9. Fileadapter- und Mailadapter-Mountpoints werden auf dem Zielsystem zu
normalen Ordnern umgewandelt. Die Einstellungen des Mountpoints werden
nicht mitsynchronisiert.
10. Mailadapter werden auf dem Zielsystem zu normalen Mail- und FolderObjekten umgewandelt.
11. Verlinkungen innerhalb des Synchronisations-Bereiches werden bei der Synchronisation übernommen, Verlinkungen außerhalb des SynchronisationsBereichs nicht.
12. Gibt es ein Objekt mit demselben Namen auf dem anderen Server und war
noch nicht synchronisiert, so wird eine Fehlermeldung produziert und das
Objekt übersprungen. Der Konflikt muss dann manuell gelöst werden.
13. Beim Synchronisieren wird eine UUID (Weltweit eindeutige ID) mit
übertragen, so dass gleiche Objekte auf allen Systemen mit einer eindeutigen ID identifizierbar sind. Über den Webservice NgOSItemsService.getObjectsByUUID können Informationen, wie beispielsweise die
Systemnative ID geladen werden.
14. Wenn der Owner eines Objektes gesetzt werden kann, der Login-User (Der
Synchronisations-User) auf dieses Objekt dadurch aber keinen Vollzugriff
mehr hat, wird der Owner auf den Login-User gesetzt.
Hinweis: Mit dem AdminSync-Modul können Benutzer, Gruppen und ACLs auf
die entfernten Rechner synchronisiert werden.
Besonderheiten der Synchronisations-Konfiguration
1. Die Konfiguration erhält das selbe ACL wie der Ordner, auf den sie angelegt(der synchronisiert werden soll) wird.
2. Die Konfiguration des Zielsystems (die Remote-Konfiguration) erhält das
selbe ACL wie der Zielpfad (der Zielordner).
162
Kapitel 14. Zusätzliche Module
3. Die Konfigurationen sind sichtbar, wenn ein Ordner, der synchronisiert werden soll oder der Zielordner bearbeitet wird. Es erscheint dann der zusätzliche Reiter Synchronisation. Außerdem kann man die SynchronisationsKonfigurationen im Bereich /agorum/roi/AgorumCoreSync einsehen und bearbeiten.
4. Es kann ein beliebiges Verzeichnis an beliebig viele entfernte agorum core
- Systeme synchronisiert werden. Alle Systeme können Änderungen vornehmen, die Änderungen werden dann wieder zurücksynchronisiert. Wenn zwei
Systeme Änderungen an der selben Datei vornehmen, werden die Änderungen des Masters übernommen.
5. Der gesamte Synchronisationsprozess wird über einen Master gesteuert.
6. Für die Sichtbarkeit des Reiters Synchronisation, bei der Bearbeitung eines
Ordners, ist der ParameterAccessIdentifier(PAI) mit dem Namen AgorumCoreSync zuständig.
14.11.3. Einstellungen der agorum core Sync-Konfiguration
Um eine agorum core Sync-Konfiguration zu erstellen, muss der Ordner, der synchronisiert werden soll, bearbeitet werden. Es erscheint ein zusätzlicher Reiter mit
der Bezeichnung Synchronisation. Auf diesem Reiter wird eine Liste aller auf diesem Ordner erstellten Konfigurationen angezeigt (siehe Abbildung 14.31). Zum Erstellen einer neuen Konfiguration wird die Schaltfläche Neue Konfiguration angeklickt. Es erscheint eine neue unausgefüllte Eingabemaske für die KonfigurationsEinstellungen. Zum Löschen einer oder mehrerer Konfiguration müssen die Checkboxen der zu löschenden Konfigurationen angehakt werden und anschließend die
Schaltfläche Konfiguration löschen betätigt werden. Möchten Sie eine Konfiguration bearbeiten, klicken Sie auf den Link des Eintrages in der Übersichtsliste.
Es wird der oben beschriebene Reiter Synchronisations-Einstellungen, vorausgefüllt mit den schon eingegebenen Daten, angezeigt.
163
Kapitel 14. Zusätzliche Module
Abbildung 14.31.: Die Übersicht über die agorum core Sync-Konfiguration eines Ordners
Für die agorum core Sync-Konfiguration sind folgende Einstellungen möglich (siehe
Abbildung 14.32):
1. Der Konfigurations-Name. Nach Erzeugung einer neuen Konfiguration
wird automatisch ein neuer Name vergeben. Dieser Name kann geändert,
darf aber nicht leer gelassen werden.
2. Aktiv. Wird die Konfiguration auf aktiv gesetzt, wird bei jedem Synchronisationsvorgang die den Einstellungen entsprechende Synchronisation vorgenommen. Ist die Konfiguration nicht auf ’Aktiv’ gesetzt, wird die Synchronisation für diese Konfiguration nicht durchgeführt.
3. Eigener Server. Die Adresse unter der der eigene Server per Webservice
erreichbar ist.
4. Ziel-Server. Die Adresse unter der der Zielserver per Webservice erreichbar
ist.
5. Ziel-Server Benutzername. Der Benutzername für das Zielsystem. Mit
diesem Benutzernamen wird auf den Zielserver synchronisiert.
164
Kapitel 14. Zusätzliche Module
6. Ziel-Server Passwort. Das Passwort für das Zielsystem.
7. Pfad/ID auf Zielserver. Der Pfad (z.B agorum/roi/Files/sync bzw. die
Objekt-ID des Zielordners).
8. Master. Gibt das Master-System (Eigener- oder Ziel-Server) an.
9. Synchronisation wird von Ziel-Server angesteuert. Die Einstellung,
ob der Synchronisationsprozess vom Zielserver angestoßen werden soll.
10. Synchronisations-Intervall. Das Synchronisationsintervall (manuell bedeutet, dass der Synchronisationsprozess immer über die Schaltfläche Sofort
synchronisieren angestoßen werden muss). Es gibt die Einstellungsoptionen Manuell, Jede Minute, Alle 10 Minuten, Alle 30 Minuten, Jede
Stunde und Alle 24 Stunden.
11. Zeit bis zum Löschen der Log-Files. Die Zeit in Tagen, bis die LogDateien, die älter als die eingestellte Zeit in Tagen sind, gelöscht werden. Es
ist auch möglich, die Log-Dateien überhaupt nicht löschen zu lassen. Es gibt
die Einstellungsoptionen Nie löschen, 1 Tag, 30 Tage, 90 Tage, Halbes
Jahr und 1 Jahr.
12. Log Level. Der Level der Einträge in die Log-Dateien. Es gibt die Einstellungsoptionen DEBUG, INFO, WARN, ERROR und Keine Protokollierung.
13. Start der Synchronisation. Das Datum zum Start der Synchronisation
(dies darf kein Datum in der Zukunft sein). Bei jeder Bearbeitung der Konfiguration wird das aktuelle Synchronisationsdatum angezeigt.
Dabei müssen in allen mit einem * versehenen Eingabefelder Eintragungen vorgenommen werden.
165
Kapitel 14. Zusätzliche Module
Abbildung 14.32.: Die Einstellungs-Maske einer agorum core Sync-Konfiguration
Wird diese Konfiguration durch Betätigen der Schaltfläche Konfiguration an
Zielserver übertragen an den Zielserver gesendet, kann diese übertragene Konfiguration ebenfalls auf dem Zielsystem durch Bearbeiten des zu synchronisierenden Ordners eingesehen werden. Der Name wird zusammengesetzt aus dem Konfigurationsnamen auf dem Master-System und der ID auf dem Zielserver. Beispiel:
Name auf Master System: AgorumCoreSyncSettings 1659456, Name auf Zielsystem: AgorumCoreSyncSettings 1659456 1659544. Die Bearbeitung dieser
Konfiguration ist jedoch nachträglich nicht möglich, da sie vom Master-Server aus
eingestellt und übersandt wurde (siehe Abbildung 14.33):
166
Kapitel 14. Zusätzliche Module
Abbildung 14.33.: Die Maske der nicht bearbeitbaren Ziel-Server-Konfiguration
14.11.4. Synchronisation
Der Synchronisationsprozess wird entweder automatisch, bei Einstellung eines
Synchronisations-Intervalls, angestoßen, kann aber auch manuell über die Schaltfläche Sofort synchronisieren gestartet werden. Hierbei wird im Feld mit der
Bezeichnung Aktueller Log der alle 0,5 s aktualisierte Log des gerade laufenden Synchronisationsprozesses angezeigt. Es muss zuerst die Konfiguration, die
erstellt wurde, durch Klick auf die Schaltfläche Konfiguration speichern gespeichert werden und anschließend diese Konfiguration durch Klick auf die Schaltfläche Konfiguration an Zielserver übertragen an den Zielserver übertragen
werden. Kann eine Verbindung zum Zielserver nicht aufgebaut werden, weil die
IP-Adresse des Zielservers nicht verfügbar ist, bzw. der Benutzername oder das
Passwort falsch sind, wird dies bei Klick auf die Schaltflächen Konfiguration
an Zielserver übertragen und Sofort synchronisieren über eine Benachrichtigung angezeigt. Wurde der Synchronisationsvorgang angestoßen, kann dieser
während der Synchronisation über die Schaltfläche Synchronisation abbrechen
gestoppt werden (siehe Abbildung 14.35).
Hinweis: Bei Klick auf die Schaltfläche Konfiguration speichern wird diese
Prüfung nicht durchgeführt.
167
Kapitel 14. Zusätzliche Module
In der darunterliegenden Liste werden die Log-Dateien der Synchronisationsvorgänge angezeigt. Diese Liste kann über die Refresh-Schaltfläche aktualisiert
werden (siehe Abbildung 14.34):
Abbildung 14.34.: Der aktuelle Log und die Liste der Log-Dateien einer agorum core
Sync-Konfiguration
Abbildung 14.35.: Button zum Abbrechen des Synchronisationsvorgangs
168
Kapitel 14. Zusätzliche Module
Die Log-Dateien-Liste enthält Informationen über das Synchronisationsdatum, die
Log-Datei als File-Objekt, den Status, wenn z.B. ein Fehler aufgetreten ist und eine Beschreibung des aufgetretenen Fehlers. Bei einem Rechtsklick mit der Maus
auf einen Listeneintrag stehen die Menüpunkte ’Löschen’ und ’Objektinformation’ zur Verfügung. Wird der Link des File-Objektes in der Liste angeklickt, wird
die Text-Datei in einem neuen Reiter geöffnet und kann dort eingesehen werden
(siehe Abbildung 14.37). Die selbe Liste kann z.B. auf dem FTP-Laufwerk unter
dem Pfad /agorum/roi/AgorumCoreSync/NAME DER KONFIGURATION/ eingesehen und
bearbeitet werden (siehe Abbildung 14.36).
169
Kapitel 14. Zusätzliche Module
Abbildung 14.36.: Die Log-Dateien eines Synchronisationsvorgangs auf dem FTPLaufwerk
170
Kapitel 14. Zusätzliche Module
Abbildung 14.37.: Die Log-Datei eines Synchronisationsvorgangs
14.12. Das agorum2go-Modul
agorum2go setzt agorum core sync auf Server- und Clientseite voraus.
Das Zusatzmodul agorum2go vereinfacht die Konfiguration und Verwendung von
agorum core Sync für den Fall, dass ein Benutzer eines Systems einzelne Objekte
mit einem anderen System, wie zum Beispiel einem Laptop oder einem Heimarbeitsplatz synchronisieren möchte.
14.12.1. Installation
Zur Verwendung von agorum2go muss auf dem Serversystem das Modul
agorum2go-server und auf dem Clientsystem das Modul agorum2go-client installiert werden. Die Installation des Server-Moduls setzt dabei einen Neustart von
agorum core voraus.
171
Kapitel 14. Zusätzliche Module
14.12.2. Einrichtung
Server
Um agorum2go für einen Benutzer einzurichten, wählen Sie im Portal-Menü unter
agorum2go den Punkt Administration. In der nun erscheinenden Maske suchen
Sie den Benutzer mit Hilfe der bereitgestellten Suchmaske und klicken danach
auf Einrichten. Dadurch wird der private Synchronisationsbereich des Benutzers
angelegt und der Benutzer für die Verwendung von agorum2go freigeschaltet.
Abbildung 14.38.: agorum2go Administrations-Maske
Laden Sie nun die erzeugte Client-XML-Datei herunter und fahren Sie mit der
Konfiguration auf dem Client-System fort.
172
Kapitel 14. Zusätzliche Module
Client
Legen Sie einen Benutzer mit dem selben Namen wie auf dem Server-System an,
die Wahl des Passworts spielt keine Rolle. Danach führen sie die zuvor herunter
geladene Client-XML-Datei aus, entweder per FTP oder mit Hilfe des Dateiuploads
in desk4web. In letzterem Fall unbedingt den Haken bei XML-Dateien nach
dem Hochladen parsen setzen.
Loggen Sie sich nun mit dem neu angelegten Benutzer ein und wählen Sie im
Portal-Menü unter agorum2go den Punkt Einstellungen. Tragen Sie dort unter
Ziel-Server die öffentliche Adresse des Server-Systems ein und unter Ziel-Server
Passwort das Passwort des Benutzers auf dem Server-System. Danach speichern
Sie die geänderte Konfiguration mit dem Button Konfiguration speichern.
173
Abbildungsverzeichnis
1.1. Beispiel Benutzer - Gruppen - ACL . . . . . . . . . . . . . . . . . .
1.2. Administrationsbereich . . . . . . . . . . . . . . . . . . . . . . . . .
1.3. Referenz Benutzer . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.4. Auswahl Referenz Benutzer . . . . . . . . . . . . . . . . . . . . . .
1.5. Auswahl für Gruppen und ACLs des Referenz Benutzers . . . . . .
1.6. Erweiterte Auswahl für Gruppen und ACLs des Referenz Benutzers
1.7. Gruppenmitglieder hinzufügen . . . . . . . . . . . . . . . . . . . . .
1.8. Gruppenliste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.9. Beispiel eines ACL mit 1 Benutzer und 1 Gruppe . . . . . . . . . .
1.10. Ordnerliste mit Berechtigungen . . . . . . . . . . . . . . . . . . . .
1.11. ACL Suchen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.12. Ordnerliste mit gesetztem ACL . . . . . . . . . . . . . . . . . . . .
1.13. Benutzer Objekt-Info Maske . . . . . . . . . . . . . . . . . . . . . .
1.14. Gruppen Objekt-Info Maske, Objektverknüpfungen . . . . . . . . .
1.15. ACL Objekt-Info Maske . . . . . . . . . . . . . . . . . . . . . . . .
1.16. ACL-Überwachung in der Liste - farbige Darstellung der ACLs . . .
1.17. ACL-Überwachung einschalten für einen Benutzer . . . . . . . . . .
1.18. Farbliche Kennzeichnung der Rechte des überwachten Benutzers/Gruppe in der ACL-Ansicht . . . . . . . . . . . . . . . . . . . . . .
1.19. Farbliche Kennzeichnung der Rechte des überwachten Benutzers/Gruppe in der Benutzer-Verwaltung . . . . . . . . . . . . . . . . . .
1.20. Farbliche Kennzeichnung der Rechte des überwachten Benutzers/Gruppe in der Gruppen-Verwaltung . . . . . . . . . . . . . . . . . .
1.21. ACL-Baum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.22. ACL Struktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.23. ACL Baum Struktur . . . . . . . . . . . . . . . . . . . . . . . . . .
8
9
11
11
12
13
15
15
17
19
20
21
23
24
25
25
25
26
26
27
28
29
30
2.1. Einstieg in die MetaDB . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.2. MetaDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.3. MetaDB Cache leeren . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.1.
3.2.
3.3.
3.4.
Eigenschaften der LAN-Verbindung . . . . . . . . . . .
Erweiterte TCP/IP-Einstellung . . . . . . . . . . . . .
Eigenschaften der LAN-Verbindung . . . . . . . . . . .
Windows-Dialog für Erweiterte TCP/IP - Einstellungen
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
43
44
45
46
174
Abbildungsverzeichnis
9.1. Listenansicht der Session Information . . . . . . . . . . . . . . . . . 86
9.2. Portalmenü für Session Information . . . . . . . . . . . . . . . . . . 87
10.1. Listenansicht der Installierten Module . . . . . . . . . . . . . . . . . 88
10.2. Portalmenü für Installierte Module . . . . . . . . . . . . . . . . . . 89
12.1. Definition eines zusätzlichen Attribute für den Adress-Export . . . . 97
13.1. Dialog zur Verwendung der DataSource . . .
13.2. Eingabe des Parameters für den SubReport .
13.3. Definieren des Parameters in iReport . . . .
13.4. Definieren der Datenquelle . . . . . . . . . .
13.5. Definieren des Parameters der Datenquelle .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
14.1. Anlegen eines neuen SMB-File-Adapters . . . . . . . . . . . . . .
14.2. Anlegen eines Property-Bundle für die optionalen Servereinstellungen des SMB-Adapters in der MetaDB . . . . . . . . . . . . . . .
14.3. Anlegen eines Property-Entry für die optionalen Servereinstellungen
UseUserConnection des SMB-Adapters in der MetaDB . . . . . .
14.4. Maske zum Anlegen eines neuen SMB-File-Adapters . . . . . . . .
14.5. Erfolgreicher Verbindungstest zum adaptierten Dateisystem . . .
14.6. Kein erfolgreicher Verbindungstest zum adaptierten Dateisystem .
14.7. Anlegen eines neuen Lokalen Filesystem (LFS)-Adapters . . . . .
14.8. Maske zum anlegen eines lokalen Filesystem (LFS)-Adapters . . .
14.9. Erfolgreicher Verbindungstest eines LFS-Adapters . . . . . . . . .
14.10.Gescheiterter Verbindungstest eines LFS-Adapters . . . . . . . . .
14.11.Synchronisieren / Aktualisieren eines File-Adapters . . . . . . . .
14.12.Löschen eines File-Adapters . . . . . . . . . . . . . . . . . . . . .
14.13.Löschen eines File-Adapters ohne Serverpapierkorb . . . . . . . .
14.14.File-Adapter ist nicht verbunden . . . . . . . . . . . . . . . . . .
14.15.Ordner und Dateien eines File-Adapters werden unterschieden
durch blaue Pfeile . . . . . . . . . . . . . . . . . . . . . . . . . . .
14.16.Anlegen eines neuen Mail-Adapters . . . . . . . . . . . . . . . . .
14.17.Eingabemaske zum Anlegen eines neuen Mail-Adapters . . . . . .
14.18.Erfolgreicher Verbindungstest des Mail-Adapters zum Postfach . .
14.19.Fehlgeschlagener Verbindungstest des Mail-Adapters zum Postfach
14.20.Filtereinstellungen eines Adapters . . . . . . . . . . . . . . . . . .
14.21.Liste mit entworfenen Reitern . . . . . . . . . . . . . . . . . . . .
14.22.Allgemeine Einstellungen eines Reiters . . . . . . . . . . . . . . .
14.23.Konfiguration der Eingabeelemente . . . . . . . . . . . . . . . . .
14.24.Konfiguration eines Eingabefeldes . . . . . . . . . . . . . . . . . .
14.25.Konfiguration eines Feldes für Datum mit Uhrzeit . . . . . . . . .
14.26.Konfiguration eines Auswahlfeldes . . . . . . . . . . . . . . . . . .
14.27.Bedingungen unter denen der Reiter angezeigt wird . . . . . . . .
.
.
.
.
.
100
104
105
106
106
. 118
. 120
.
.
.
.
.
.
.
.
.
.
.
.
120
121
121
122
123
124
125
126
127
128
129
130
.
.
.
.
.
.
.
.
.
.
.
.
.
131
132
134
135
136
137
141
142
143
144
144
145
146
175
Abbildungsverzeichnis
14.28.Entworfener Reiter in einer Bearbeitungsmaske . . . . . . . . . . . 147
14.29.Einstellungen für den Freigegeben-Stempel . . . . . . . . . . . . . . 155
14.30.Einstellungen für den Abgelehnt-Stempel . . . . . . . . . . . . . . . 155
14.31.Die Übersicht über die agorum core Sync-Konfiguration eines Ordners164
14.32.Die Einstellungs-Maske einer agorum core Sync-Konfiguration . . . 166
14.33.Die Maske der nicht bearbeitbaren Ziel-Server-Konfiguration . . . . 167
14.34.Der aktuelle Log und die Liste der Log-Dateien einer agorum core
Sync-Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
14.35.Button zum Abbrechen des Synchronisationsvorgangs . . . . . . . . 168
14.36.Die Log-Dateien eines Synchronisationsvorgangs auf dem FTPLaufwerk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
14.37.Die Log-Datei eines Synchronisationsvorgangs . . . . . . . . . . . . 171
14.38.agorum2go Administrations-Maske . . . . . . . . . . . . . . . . . . 172
176
Anhang A.
Anhang
A.1. Versions-Historie dieses Dokumentes
Version 1.0.0: Erstellung der ersten Dokumenten-Version
Version 2.0.0: Umschreiben auf LaTeX
Version 6.2.10: Kapitel EADesigner hinzugefügt
Version 6.2.11: Erweiterte Suche im Kapitel EADesigner hinzugefügt
Version 6.2.13: Neu FTP-Option hinzugefügt
Version 6.4.3: neue Lucene Optionen hinzugefügt
Version 6.4.3: Anleitung für Reindizierung zur Pfadsuche
Version 6.4.4: SMB-Installation unter Windows vollständig überarbeitet
Version 6.4.5: Documentconverter-Einstellungen erweitert um eigene Konverterdefinitionen
Version 6.4.6: Kapitel REDDOXX-Modul hinzugefügt. Alle Zusatzmodule als
Unterkapitel in das Kapitel Zusätzliche Module
Version 6.4.7: MetaDb-Einstellungen für roi hinzugefügt.
Version 6.5.0: Kapitel agorum2go hinzugefügt
Version 6.5.0: Kapitel previewthumbnails hinzugefügt
177
Anhang A. Anhang
Version 6.5.0: Kapitel Metadaten-Editor hinzugefügt
Version 6.5.1: Kapitel für Metadaten in Listen hinzugefügt
Version 6.5.2: Änderungen von agorum core Sync hinzugefügt
Version 6.5.4: Beschreibung für Metadaten-Autoinput hinzugefügt
Version 7.0.0: Beschreibung für EML-Contenttask und History erweitert
A.2. Sonstiges
Soweit in dieser Dokumentation Marken- oder Produktbezeichnungen verwendet
werden, unterliegen diese ausschließlich den Schutzrechten des Inhabers, auch wenn
dies nicht explizit kenntlich gemacht wird.
178