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