Merge branch 'master' into after-262
[kivitendo-erp.git] / doc / INSTALL.txt
1 Table of Contents
2 *****************
3
4 Inhalt der Anleitung
5 1 Aktuelle Hinweise
6 2 Benötigte Software und Pakete
7   2.1 Betriebssystem
8   2.2 Pakete
9 3 Manuelle Installation des Programmpaketes
10 4 Anpassung der PostgreSQL-Konfiguration
11   4.1 Zeichensätze/die Verwendung von UTF-8
12   4.2 Änderungen an Konfigurationsdateien
13   4.3 Erweiterung für servergespeicherte Prozeduren
14   4.4 Datenbankbenutzer anlegen
15 5 Apache-Konfiguration
16 6 Benutzerauthentifizierung und Administratorpasswort
17   6.1 Grundlagen zur Benutzerauthentifizierung
18   6.2 Administratorpasswort
19   6.3 Authentifizierungsdatenbank
20   6.4 Passwortüberprüfung
21   6.5 Name des Session-Cookies
22   6.6 Anlegen der Authentifizierungsdatenbank
23 7 Benutzer- und Gruppenverwaltung
24   7.1 Zusammenhänge
25   7.2 Datenbanken anlegen
26   7.3 Gruppen anlegen
27   7.4 Benutzer anlegen
28   7.5 Gruppenmitgliedschaften verwalten
29   7.6 Migration alter Installationen
30 8 OpenDocument-Vorlagen
31 9 Lx-Office ERP verwenden
32
33
34 Inhalt der Anleitung
35 ********************
36
37 1 Aktuelle Hinweise
38 *******************
39
40 Aktuelle Installations- und Konfigurationshinweise gibt es:
41
42    * auf der Lx-Office Homepage unter
43      `http://lx-office.org/index.php?id=dokumentation'
44
45    * im Lx-Office-Wiki unter Dokumentation
46      (`http://wiki.lx-office.org/index.php/Lx-Office_ERP')
47
48    * im Lx-Office-Forum: `http://www.lx-office.org/forum/'
49
50 2 Benötigte Software und Pakete
51 ********************************
52
53 2.1 Betriebssystem
54 ==================
55
56 Lx-Office ist für Linux konzipiert, und sollte auf jedem unixoiden
57 Betriebssystem zum Laufen zu kriegen sein. Getestet ist diese Version im
58 speziellen auf Debian und Ubuntu, grundsätzlich wurde bei der Auswahl
59 der Pakete aber darauf Rücksicht genommen, dass es ohne große Probleme
60 auf den derzeit aktuellen verbreiteten Distributionen läuft.
61
62    Anfang 2011 sind das folgende Systeme:
63
64    * Ubuntu 8.04 LTS Hardy Heron
65
66    * Ubuntu 9.10 Karmic Koala
67
68    * Ubuntu 10.04 Lucid Lynx
69
70    * Ubuntu 10.10 Maverick Meerkat
71
72    * Debian 5.0 Lenny
73
74    * Debian 6.0 Squeeze
75
76    * openSUSE 11.2
77
78    * openSUSE 11.3
79
80    * SuSE Linux Enterprice Server 11
81
82    * Fedora 13
83
84    * Fedora 14
85
86    Für die debianoiden Betriebssysteme existiert ein .deb, das deutlich
87 einfacher zu installieren ist.
88
89    Ubuntu 8.04 LTS hat zusätzlich die Schwierigkeit, dass die Module im
90 Archiv recht alt sind, und das viele der benötigten Module nicht
91 einfach zu installieren sind. Dafür sollte es kurz nach dem Release ein
92 eigenes .deb geben.
93
94    Alternativ dazu kann die normale Installation durchgeführt werden
95 (*note Manuelle Installation des Programmpaketes::), wenn vorher ein
96 Kompatibilitätspaket installiert wird, das die fehlenden Pakete
97 bereitstellt.  Das Paket ist auf Sourceforge
98 (https://sourceforge.net/projects/lx-office/files/Lx-Office%20ERP/2.6.2/)
99 unter dem Namen `lx-erp-perl-libs-compat-v2.tar.gz' hinterlegt.
100
101    Zur Installation das Paket in das entpackte Lx-Office Verzeichnis
102 entpacken:
103
104    `tar xzf lx-erp-perl-libs-compat-v2.tar.gz /path/to/lx-office/'
105
106    Danach sollte der Installationscheck (*note Pakete::) die
107 enthaltenen Pakete erkennen.
108
109 2.2 Pakete
110 ==========
111
112 Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache)
113 und ein Datenbankserver (PostgreSQL, mindestens v8.2) benötigt.
114
115    Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht
116 Bestandteil einer Standard-Perl-Installation sind:
117
118    * parent
119
120    * Archive::Zip
121
122    * Class::Accessor
123
124    * CGI::Ajax
125
126    * DateTime
127
128    * DBI
129
130    * DBD::Pg
131
132    * Email::Address
133
134    * List::MoreUtils
135
136    * PDF::API2
137
138    * Rose::Object
139
140    * Rose::DB
141
142    * Rose::DB::Object
143
144    * Template
145
146    * Text::CSV_XS
147
148    * Text::Iconv
149
150    * URI
151
152    * XML::Writer
153
154    * YAML
155
156    Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen,
157 `URI' und `XML::Writer' sind notwendig. Ohne startet Lx-Office nicht.
158
159    Gegenüber Version 2.6.1 sind `parent', `DateTime', `Rose::Object',
160 `Rose::DB' und `Rose::DB::Object' neu hinzugekommen. `IO::Wrap' wurde
161 entfernt.
162
163    `Email::Address' und `List::MoreUtils' sind schon länger feste
164 Abhängigkeiten, wurden aber bisher mit Lx-Office mitgeliefert.  Beide
165 sind auch in 2.6.1 weiterhin mit ausgeliefert, wurden in einer
166 zukünftigen Version aber aus dem Paket entfernt werden. Es wird
167 empfohlen diese Module zusammen mit den anderen als Bibliotheken zu
168 installieren.
169
170    `CGI::Ajax' ist nach wie vor in einer modifizierten Version
171 mitgeliefert und braucht nicht nachinstalliert werden.
172
173    Die zu installierenden Pakete können in den verschiedenen
174 Distributionen unterschiedlich heißen.
175
176    Für Debian oder Ubuntu benötigen Sie diese Pakete:
177
178    `apache2 postgresql libparent-perl libarchive-zip-perl
179 libclass-accessor-perl libdatetime-perl libdbi-perl libdbd-pg-perl
180 libpg-perl libemail-address-perl liblist-moreutils-perl
181 libpdf-api2-perl librose-object-perl librose-db-perl
182 librose-db-object-perl libtemplate-perl libtext-csv-xs-perl
183 libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl'
184
185    Für Fedora Core benötigen Sie diese Pakete:
186
187    `httpd postgresql-server perl-parent perl-Class-Accessor
188 perl-DateTime perl-DBI perl-DBD-Pg perl-Email-Address
189 perl-List-MoreUtils perl-PDF-API2 perl-Rose-Object perl-Rose-DB
190 perl-Rose-DB-Object perl-Template-Toolkit perl-Text-CSV_XS
191 perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML'
192
193    Für OpenSuSE benötigen Sie diese Pakete:
194
195    `apache2 postgresql-server perl-Archive-Zip perl-Class-Accessor
196 perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-List-MoreUtils
197 perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv
198 perl-URI perl-XML-Writer perl-YAML'
199
200    Bei openSuSE 11 ist `parent' bereits enthalten, und braucht nicht
201 nachinstalliert werden. Die `Rose::*' Pakete sind derzeit nicht für
202 SuSE gepackt, und müssen anderweitig nachinstalliert werden.
203
204    Lx-Office enthält ein Script, mit dem überprüft werden kann, ob alle
205 benötigten Perl-Module installiert sind. Der Aufruf lautet wie folgt:
206
207    `./scripts/installation_check.pl'
208
209 3 Manuelle Installation des Programmpaketes
210 *******************************************
211
212 Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.2.tgz) wird im
213 Dokumentenverzeichnis des Webservers (z.B. `/var/www/html/',
214 `/srv/www/htdocs' oder `/var/www/') entpackt:
215
216    `cd /var/www
217 tar xvzf lxoffice-erp-2.6.2.tgz'
218
219    Verändern Sie evtl. noch den Namen des Verzeichnisses mit
220
221    `mv lxoffice-erp/ lx-erp/'
222
223    Alternativ können Sie auch einen Alias in der Webserverkonfiguration
224 benutzen, um auf das tatsächliche Installationsverzeichnis zu verweisen.
225
226    Die Verzeichnisse `users', `spool' und `webdav' müssen für den
227 Benutzer beschreibbar sein, unter dem der Webserver läuft. Die
228 restlichen Dateien müssen für diesen Benutzer lesbar sein. Der
229 Benutzername ist bei verschiedenen Distributionen unterschiedlich (z.B.
230 bei Debian/Ubuntu `www-data', bei Fedora core `apache' oder bei
231 OpenSuSE `wwwrun').
232
233    Der folgende Befehl ändert den Besitzer für die oben genannten
234 Verzeichnisse auf einem Debian/Ubuntu-System:
235
236    `chown -R www-data lx-office-erp/users lx-office-erp/spool
237 lx-office-erp/webdav'
238
239    Weiterhin muss der Webserver-Benutzer im Verzeichnis `templates'
240 Verzeichnisse für jeden neuen Benutzer, der in lx-office angelegt wird,
241 anlegen dürfen:
242
243    `chgrp www-data lx-office-erp/templates; chmod g+w
244 lx-office-erp/templates'
245
246 4 Anpassung der PostgreSQL-Konfiguration
247 ****************************************
248
249 PostgreSQL muss auf verschiedene Weisen angepasst werden.
250
251 4.1 Zeichensätze/die Verwendung von UTF-8
252 ==========================================
253
254 Lx-Office kann komplett mit UTF-8 als Zeichensatz verwendet werden.
255 Dabei gibt es zwei Punkte zu beachten: PostgreSQL muss in Version 8.0
256 oder neuer benutzt werden, und der PostgreSQL-Datenbankcluster muss
257 ebenfalls mit UTF-8 als Locale angelegt worden sein.
258
259    Dieses ist kann überprüft werden: ist das Encoding der Datenbank
260 "template1" "UTF8", so kann auch Lx-Office mit UTF-8 betrieben werden.
261 Andernfalls ist es notwendig, einen neuen Datenbankcluster mit
262 UTF-8-Encoding anzulegen und diesen zu verwenden. Unter Debian und
263 Ubuntu kann dies z.B. mit dem folgenden Befehl getan werden:
264
265    `pg_createcluster --locale=de_DE.UTF-8 --encoding=UTF-8 8.2
266 clustername'
267
268    Die Datenbankversionsnummer muss an die tatsächlich verwendete
269 Versionsnummer angepasst werden.
270
271    Unter anderen Distributionen gibt es ähnliche Methoden.
272
273    Wurde PostgreSQL nicht mit UTF-8 als Encoding initialisiert und ist
274 ein Neuanlegen eines weiteren Clusters nicht möglich, so kann Lx-Office
275 mit ISO-8859-15 als Encoding betrieben werden.
276
277    Das Encoding einer Datenbank kann in `psql' mit `\l' geprüft werden.
278
279 4.2 Änderungen an Konfigurationsdateien
280 ========================================
281
282 In der Datei `postgresql.conf', die je nach Distribution in
283 verschiedenen Verzeichnissen liegen kann (z.B. `/var/lib/pgsql/data/'
284 oder `/etc/postgresql/', muss sichergestellt werden, dass
285 TCP/IP-Verbindungen aktiviert sind. Das Verhalten wird über den
286 Parameter `listen_address' gesteuert. Laufen PostgreSQL und Lx-Office
287 auf demselben Rechner, so kann dort der Wert `localhost' verwendet
288 werden. Andernfalls müssen Datenbankverbindungen auch von anderen
289 Rechnern aus zugelassen werden, was mit dem Wert \`*' geschieht.
290
291    In der Datei `pg_hba.conf', die im gleichen Verzeichnis wie die
292 `postgresql.conf' zu finden sein sollte, müssen die Berichtigungen für
293 den Zugriff geändert werden. Hier gibt es mehrere Möglichkeiten. Eine
294 besteht darin, lokale Verbindungen immer zuzulassen
295
296    `local all all trust
297 host all all 127.0.0.1 255.0.0.0 trust'
298
299    Besser ist es, für eine bestimmte Datenbank Zugriff nur per Passwort
300 zuzulassen. Beispielsweise:
301
302    `local   all         lxoffice
303   password
304 host    all         lxoffice      127.0.0.1         255.255.255.255
305 password'
306
307 4.3 Erweiterung für servergespeicherte Prozeduren
308 ==================================================
309
310 In der Datenbank `template1' muss die Unterstützung für
311 servergespeicherte Prozeduren eingerichet werden. Melden Sie sich dafür
312 als Benutzer "postgres" an der Datenbank an, und führen Sie die
313 folgenden Kommandos aus:
314
315    `create language 'plpgsql';'
316
317    Achtung: In älteren Postgresversionen (vor 8.0) muss der Handler für
318 die Sprache manuell anlelegt werden, diese Versionen werden aber nicht
319 mehr offiziell von Lx-Office unterstützt. Dafür dann die folgenden
320 Kommandos:
321
322    `create function plpgsql_call_handler () returns opaque as
323 '/usr/lib/pgsql/plpgsql.so' language 'c';
324 create language 'plpgsql' handler plpgsql_call_handler lancompiler
325 'pl/pgsql';'
326
327    Bitte beachten Sie, dass der Pfad zur Datei `plpgsql.so' von
328 Distribution zu Distribution verschiedlich sein kann. Bei Debian/Ubuntu
329 befindet sie sich unter `/usr/lib/postgresql/lib/plpgsql.so'.
330
331 4.4 Datenbankbenutzer anlegen
332 =============================
333
334 Wenn Sie nicht den Datenbanksuperuser "postgres" zum Zugriff benutzen
335 wollen, so sollten Sie bei PostgreSQL einen neuen Benutzer anlegen. Ein
336 Beispiel, wie Sie einen neuen Benutzer anlegen können:
337
338    `su - postgres
339 createuser -d -P lxoffice'
340
341    Wenn Sie später einen Datenbankzugriff konfigurieren, verändern Sie
342 den evtl. voreingestellten Benutzer "postgres" auf "lxoffice" bzw. den
343 hier gewählten Benutzernamen.
344
345 5 Apache-Konfiguration
346 **********************
347
348 Hinweis: Für einen deutlichen Performanceschub sorgt die Ausführung
349 mittels FCGI. Die Einrichtung wird ausführlich in der Datei
350 `INSTALL.fcgi' beschrieben.
351
352    Der Zugriff auf das Programmverzeichnis muss in der Apache
353 Webserverkonfigurationsdatei `httpd.conf' eingestellt werden. Fügen Sie
354 den folgenden Abschnitt dieser Datei oder einer anderen Datei hinzu,
355 die beim Starten des Webservers eingelesen wird:
356
357    `
358 AddHandler cgi-script .pl
359 Alias /lx-erp/ /var/www/lx-erp/
360 <Directory /var/www/lx-erp>
361 Options ExecCGI Includes FollowSymlinks
362 </Directory>
363 <Directory /var/www/lx-erp/users>
364 Order Deny,Allow
365 Deny from All
366 </Directory>
367 '
368
369    Ersetzen Sie dabei die Pfade durch diejenigen, in die Sie vorher das
370 Lx-Office-Archiv entpacket haben.
371
372    Achtung: Vor den einzelnen Optionen muss bei einigen Distributionen
373 ein Plus `+' gesetzt werden.
374
375    Auf einigen Webservern werden manchmal die Grafiken und Style-Sheets
376 nicht ausgeliefert. In solchen Fällen hat es oft geholfen, die folgende
377 Option in die Konfiguration aufzunehmen:
378
379    `EnableSendfile Off'
380
381 6 Benutzerauthentifizierung und Administratorpasswort
382 *****************************************************
383
384 Informationen über die Einrichtung der Benutzerauthentifizierung, über
385 die Verwaltung von Gruppen und weitere Einstellungen
386
387 6.1 Grundlagen zur Benutzerauthentifizierung
388 ============================================
389
390 Lx-Office verwaltet die Benutzerinformationen in einer Datenbank, die
391 im folgenden "Authentifizierungsdatenbank" genannt wird. Für jeden
392 Benutzer kann dort eine eigene Datenbank für die eigentlichen
393 Finanzdaten hinterlegt sein. Diese beiden Datenbanken können, müssen
394 aber nicht unterschiedlich sein.
395
396    Im einfachsten Fall gibt es für Lx-Office nur eine einzige Datenbank,
397 in der sowohl die Benutzerinformationen als auch die Daten abgelegt
398 werden.
399
400    Zusätzlich ermöglicht es Lx-Office, dass die Benutzerpasswörter
401 entweder gegen die Authentifizierungsdatenbank oder gegen einen
402 LDAP-Server überprüft werden.
403
404    Welche Art der Passwortüberprüfung Lx-Office benutzt und wie
405 Lx-Office die Authentifizierungsdatenbank erreichen kann, wird in der
406 Konfigurationsdatei `config/authentication.pl' festgelegt. Diese muss
407 bei der Installation und bei einem Upgrade von einer Version vor v2.6.0
408 angelegt werden. Eine Beispielkonfigurationsdatei
409 `config/authentication.pl.default' existiert, die als Vorlage benutzt
410 werden kann.
411
412 6.2 Administratorpasswort
413 =========================
414
415 Das Passwort, das zum Zugriff auf das Aministrationsinterface benutzt
416 wird, wird ebenfalls in dieser Datei gespeichert. Es kann auch nur dort
417 und nicht mehr im Administrationsinterface selber geändert werden. Der
418 Parameter dazu heißt `$self->{admin_password}'.
419
420 6.3 Authentifizierungsdatenbank
421 ===============================
422
423 Die Verbindung zur Authentifizierungsdatenbank wird mit den Parametern
424 in `$self->{DB_config}' konfiguriert. Hier sind die folgenden Parameter
425 anzugeben:
426
427    * `host' - Der Rechnername oder die IP-Adresse des Datenbankservers
428
429    * `port' - Die Portnummer des Datenbankservers, meist 5432
430
431    * `db' - Der Name der Authentifizierungsdatenbank
432
433    * `user' - Der Benutzername, mit dem sich Lx-Office beim
434      Datenbankserver anmeldet (z.B. "postgres")
435
436    * `password' - Das Passwort für den Datenbankbenutzer
437
438    Die Datenbank muss noch nicht existieren. Lx-Office kann sie
439 automatisch anlegen (mehr dazu siehe unten).
440
441 6.4 Passwortüberprüfung
442 =========================
443
444 Lx-Office unterstützt Passwortüberprüfung auf zwei Arten: gegen die
445 Authentifizierungsdatenbank und gegen einen externen LDAP- oder
446 Active-Directory-Server. Welche davon benutzt wird, regelt der
447 Parameter `$self->{module}'.
448
449    Sollen die Benutzerpasswörter in der Authentifizierungsdatenbank
450 gespeichert werden, so muss der Parameter `$self->{module}' den Wert
451 `DB' enthalten. In diesem Fall können sowohl der Administrator als auch
452 die Benutzer selber ihre Psaswörter in Lx-Office ändern.
453
454    Soll hingegen ein externer LDAP- oder Active-Directory-Server benutzt
455 werden, so muss der Parameter `$self->{module}' auf `LDAP' gesetzt
456 werden. In diesem Fall müssen zusätzliche Informationen über den
457 LDAP-Server in `$self->{LDAP_config}' angegeben werden:
458
459    * `host' - Der Rechnername oder die IP-Adresse des LDAP- oder
460      Active-Directory-Servers. Diese Angabe ist zwingend erforderlich.
461
462    * `port' - Die Portnummer des LDAP-Servers; meist 389.
463
464    * `tls' - Wenn Verbindungsverschlüsselung gewünscht ist, so diesen
465      Wert auf `1' setzen, andernfalls auf `0' belassen
466
467    * `attribute' - Das LDAP-Attribut, in dem der Benutzername steht,
468      den der Benutzer eingegeben hat. Für Active-Directory-Server   ist
469      dies meist `sAMAccountName', für andere LDAP-Server hingegen
470      `uid'. Diese Angabe ist zwingend erforderlich.
471
472    * `base_dn' - Der Abschnitt des LDAP-Baumes, der durchsucht werden
473      soll. Diese Angabe ist zwingend erforderlich.
474
475    * `filter' - Ein optionaler LDAP-Filter. Enthält dieser Filter das
476      Wort `<%login%>', so wird dieses durch den vom Benutzer
477      eingegebenen Benutzernamen ersetzt. Andernfalls wird der LDAP-Baum
478      nach einem Element durchsucht, bei dem das oben angegebene Attribut
479       mit dem Benutzernamen identisch ist.
480
481    * `bind_dn' und `bind_password' - Wenn der LDAP-Server eine
482      Anmeldung erfordert, bevor er durchsucht werden kann (z.B. ist
483      dies bei   Active-Directory-Servern der Fall), so kann diese hier
484      angegeben werden. Für Active-Directory-Server kann als `bind_dn'
485      entweder eine   komplette LDAP-DN wie z.B. `cn=Martin
486      Mustermann,cn=Users,dc=firmendomain' auch nur der volle Name des
487      Benutzers   eingegeben werden; in diesem Beispiel also `Martin
488      Mustermann'.
489
490 6.5 Name des Session-Cookies
491 ============================
492
493 Sollen auf einem Server mehrere Lx-Office-Installationen aufgesetzt
494 werden, so müssen die Namen der Session-Cookies für alle Installationen
495 unterschiedlich sein. Der Name des Cookies wird mit dem Parameter
496 `$self->{cookie_name}' gesetzt.
497
498    Diese Angabe ist optional, wenn nur eine Installation auf dem Server
499 existiert.
500
501 6.6 Anlegen der Authentifizierungsdatenbank
502 ===========================================
503
504 Nachdem alle Einstellungen in `config/authentication.pl' vorgenommen
505 wurden, muss Lx-Office die Authentifizierungsdatenbank anlegen. Dieses
506 geschieht automatisch, wenn Sie sich im Administrationsmodul anmelden,
507 das unter der folgenden URL erreichbar sein sollte:
508
509    `http://localhost/lx-erp/admin.pl'
510
511 7 Benutzer- und Gruppenverwaltung
512 *********************************
513
514 Nach der Installation müssen Benutzer, Gruppen und Datenbanken angelegt
515 werden.  Dieses geschieht im Administrationsmenü, das Sie unter
516 folgender URL finden:
517
518    `http://localhost/lx-erp/admin.pl'
519
520    Verwenden Sie zur Anmeldung das Password, dass Sie in der Datei
521 `config/authentication.pl' eingetragen haben.
522
523 7.1 Zusammenhänge
524 ==================
525
526 Lx-Office verwendet eine Datenbank zum Speichern all seiner
527 Informationen wie Kundendaten, Artikel, Angebote, Rechnungen etc. Um
528 mit Lx-Office arbeiten zu können, muss eine Person einen
529 Benutzeraccount haben. Jedem Benutzeraccount wiederum wird genau eine
530 Datenbank zugewiesen, mit der dieser Benutzer arbeiten kann. Es ist
531 möglich und normal, dass mehreren Benutzern die selbe Datenbank
532 zugewiesen wird, sodass sie alle mit den selben Daten arbeiten können.
533
534    Die Basisdaten der Benutzer, die in der Administration eingegeben
535 werden können, werden in einer zweiten Datenbank gespeichert, der
536 bereits erwähnten Authentifizierungsdatenbank. Diese ist also den
537 Produktivdaten enthaltenden Datenbanken vorgeschaltet. Pro
538 Lx-Office-Installation gibt es nur eine Authentifizierungsdatenbank,
539 aber beliebig viele Datenbanken mit Firmendaten.
540
541    Lx-Office kann seinen Benutzern Zugriff auf bestimmte
542 Funktionsbereiche erlauben oder verbieten. Wird der Zugriff nicht
543 gestattet, so werden der entsprechenden Menüpunkte auch nicht
544 angezeigt. Diese Rechte werden ebenfalls in der
545 Authentifizierungsdatenbank gespeichert.
546
547    Um Rechte verteilen zu können, verwendet Lx-Office ein
548 Gruppen-Prinzip. Einer Gruppe kann der Zugriff auf bestimmte Bereiche
549 erlaubt werden. Ein Benutzer wiederum kann Mitglied in einer oder
550 mehrerer Gruppen sein. Der Benutzer hat Zugriff auf alle diejenigen
551 Funktionen, die mindestens einer Gruppe erlaubt sind, in der der
552 Benutzer Mitglied ist.
553
554    Die allgemeine Reihenfolge, in der Datenbanken, Gruppen und Benutzer
555 angelegt werden sollten, lautet:
556
557   1. Datenbank anlegen
558
559   2. Gruppen anlegen
560
561   3. Benutzer anlegen
562
563   4. Benutzer den Gruppen zuordnen
564
565 7.2 Datenbanken anlegen
566 =======================
567
568 Zuerst muss eine Datenbank angelegt werden. Verwenden Sie für den
569 Datenbankzugriff den vorhin angelegten Benutzer (in unseren Beispielen
570 ist dies `lxoffice').
571
572    Wenn Sie für die Lx-Office-Installation nicht den europäischen
573 Schriftsatz ISO-8859-15 sondern UTF-8 (Unicode) benutzen wollen, so
574 müssen Sie vor dem Anlegen der Datenbank in der Datei
575 `config/lx_office.conf' die Variable `dbcharset' im Abschnitt `system'
576 auf den Wert `UTF-8' setzen. Zusätzlich muss beim Anlegen der Datenbank
577 `UTF-8 Unicode' als Schriftsatz ausgewählt werden.
578
579    Bitte beachten Sie, dass alle Datenbanken den selben Zeichensatz
580 verwenden müssen, da diese Einstellungen momentan global in Lx-Office
581 vorgenommen wird und nicht nach Datenbank unterschieden werden kann.
582 Auch die Authentifizierungsdatenbank muss mit diesem Zeichensatz
583 angelegt worden sein.
584
585 7.3 Gruppen anlegen
586 ===================
587
588 Eine Gruppe wird in der Gruppenverwaltung angelegt. Ihr muss ein Name
589 gegeben werden, eine Beschreibung ist hingegen optional. Nach dem
590 Anlegen können Sie die verschiedenen Bereiche wählen, auf die
591 Mitglieder dieser Gruppe Zugriff haben sollen.
592
593    Benutzergruppen sind unabhängig von Datenbanken, da sie in der
594 Authentifizierungsdatenbank gespeichert werden. Sie gelten für alle
595 Datenbanken, die in dieser Installation verwaltet werden.
596
597 7.4 Benutzer anlegen
598 ====================
599
600 Beim Anlegen von Benutzern werden für viele Parameter
601 Standardeinstellungen vorgenommen, die den Gepflogenheiten des
602 deutschen Raumes entsprechen.
603
604    Zwingend anzugeben sind der Loginname sowie die komplette
605 Datenbankkonfiguration. Wenn die Passwortauthentifizierung über die
606 Datenbank eingestellt ist, so kann hier auch das Benutzerpasswort
607 gesetzt bzw. geändert werden. Ist hingegen die LDAP-Authentifizierung
608 aktiv, so ist das Passwort-Feld deaktiviert.
609
610    In der Datenbankkonfiguration müssen die Zugriffsdaten einer der eben
611 angelegten Datenbanken eingetragen werden.
612
613 7.5 Gruppenmitgliedschaften verwalten
614 =====================================
615
616 Nach dem Anlegen von Benutzern und Gruppen müssen Benutzer den Gruppen
617 zugewiesen werden. Dazu gibt es zwei Möglichkeiten:
618
619   1. In der Gruppenverwaltung wählt man eine Gruppe aus. Im folgenden
620      Dialog kann man dann einzeln die Benutzer der Gruppe hinzufügen.
621
622   2. In der Gruppenverwaltung wählt man das Tool zur Verwaltung der
623      Gruppenmitgliedschaft. Hier wird eine Matrix angezeigt, die alle im
624      System angelegten Gruppen und Benutzer enthält. Durch Setzen der
625      Häkchen wird der Benutzer in der ausgewählten Zeile der Gruppe in
626      der ausgewählten Spalte hinzugefügt.
627
628 7.6 Migration alter Installationen
629 ==================================
630
631 Wenn Lx-Office 2.6.2 über eine ältere Version installiert wird, in der
632 die Benutzerdaten noch im Dateisystem im Verzeichnis `users' verwaltet
633 wurden, so bietet Lx-Office die Möglichkeit, diese Benutzerdaten
634 automatisch in die Authentifizierungsdatenbank zu übernehmen. Dies
635 geschieht, wenn man sich nach dem Update der Installation das erste Mal
636 im Administrationsbereich anmeldet. Findet Lx-Office die Datei
637 `users/members', so wird der Migrationsprozess gestartet.
638
639    Der Migrationsprozess ist nahezu vollautomatisch. Alle Benutzerdaten
640 können übernommen werden. Nach den Benutzerdaten bietet Lx-Office noch
641 die Möglichkeit an, dass automatisch eine Benutzergruppe angelegt wird.
642 Dieser Gruppe wird Zugriff auf alle Funktionen von Lx-Office gewährt.
643 Alle migrierten Benutzern werden Mitglied in dieser Gruppe. Damit wird
644 das Verhalten von Lx-Office bis Version 2.4.3 inklusive
645 wiederhergestellt, und die Benutzer können sich sofort wieder anmelden
646 und mit dem System arbeiten.
647
648 8 OpenDocument-Vorlagen
649 ***********************
650
651 Lx-Office unterstützt die Verwendung von Vorlagen im
652 OpenDocument-Format, wie es OpenOffice.org ab Version 2 erzeugt.
653 Lx-Office kann dabei sowohl neue OpenDocument-Dokumente als auch aus
654 diesen direkt PDF-Dateien erzeugen.  Um die Unterstützung von
655 OpenDocument-Vorlagen zu aktivieren muss in der Datei
656 `config/lx_office.conf' die Variable `opendocument' im Abschnitt
657 `print_templates' auf `1' stehen.  Dieses ist die Standardeinstellung.
658
659    Weiterhin muss in der Datei `config/lx_office.conf' die Variable
660 `dbcharset' im Abschnitt `system' auf die Zeichenkodierung gesetzt
661 werden, die auch bei der Speicherung der Daten in der Datenbank
662 verwendet wird. Diese ist in den meisten Fällen "UTF-8".
663
664    Während die Erzeugung von reinen OpenDocument-Dateien keinerlei
665 weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF
666 OpenOffice.org benötigt. Soll dieses Feature genutzt werden, so muss
667 neben OpenOffice.org ab Version 2 auch der "X virtual frame buffer"
668 (xvfb) installiert werden.  Bei Debian ist er im Paket "xvfb"
669 enthalten. Andere Distributionen enthalten ihn in anderen Paketen.
670
671    Nach der Installation müssen in der Datei `config/lx_config.conf'
672 zwei weitere Variablen angepasst werden: `openofficeorg_writer' muss
673 den vollständigen Pfad zur OpenOffice.org Writer-Anwendung enthalten.
674 `xvfb' muss den Pfad zum "X virtual frame buffer" enthalten. Beide
675 stehen im Abschnitt `applications'.
676
677    Zusätzlich gibt es zwei verschiedene Arten, wie Lx-Office mit
678 OpenOffice kommuniziert. Die erste Variante, die benutzt wird, wenn die
679 Variable `$openofficeorg_daemon' gesetzt ist, startet ein OpenOffice,
680 das auch nach der Umwandlung des Dokumentes gestartet bleibt. Bei
681 weiteren Umwandlungen wird dann diese laufende Instanz benutzt. Der
682 Vorteil ist, dass die Zeit zur Umwandlung deutlich reduziert wird, weil
683 nicht für jedes Dokument ein OpenOffice gestartet werden muss. Der
684 Nachteil ist, dass diese Methode Python und die Python-UNO-Bindings
685 benötigt, die Bestandteil von OpenOffice 2 sind.
686
687    Ist `$openofficeorg_daemon' nicht gesetzt, so wird für jedes
688 Dokument OpenOffice neu gestartet und die Konvertierung mit Hilfe eines
689 Makros durchgeführt. Dieses Makro muss in der Dokumentenvorlage
690 enthalten sein und "Standard.Conversion.ConvertSelfToPDF()" heißen. Die
691 Beispielvorlage `templates/German-invoice.odt' enthält ein solches
692 Makro, das in jeder anderen Dokumentenvorlage ebenfalls enthalten sein
693 muss.
694
695    Als letztes muss herausgefunden werden, welchen Namen OpenOffice.org
696 Writer dem Verzeichnis mit den Benutzereinstellungen gibt. Unter Debian
697 ist dies momentan `~/.openoffice.org2'. Sollte der Name bei Ihrer
698 OpenOffice.org-Installation anders sein, so muss das Verzeichnis
699 `users/.openoffice.org2' entsprechend umbenannt werden. Ist der Name
700 z.B. einfach nur `.openoffice', so wäre folgender Befehl auszuführen:
701
702    `mv users/.openoffice.org2 users/.openoffice'
703
704    Dieses Verzeichnis, wie auch das komplette `users'-Verzeichnis, muss
705 vom Webserver beschreibbar sein. Dieses wurde bereits erledigt (*note
706 Manuelle Installation des Programmpaketes::), kann aber erneut überprüft
707 werden, wenn die Konvertierung nach PDF fehlschlägt.
708
709 9 Lx-Office ERP verwenden
710 *************************
711
712 Nach erfolgreicher Installation ist der Loginbildschirm unter folgender
713 URL erreichbar:
714
715    `http://localhost/lx-office-erp/login.pl'
716
717    Die Administrationsseite erreichen Sie unter:
718
719    `http://localhost/lx-office-erp/admin.pl'
720
721
722 \1f
723 Local Variables:
724 coding: utf-8
725 End: