1 \input texinfo @c -*-texinfo-*-
3 @documentencoding ISO-8859-15
4 @setfilename INSTALL.info
5 @settitle Lx-Office Installationsanleitung
9 @c Die Lx-Office Installationsanleitung kann beliebig weiter verwendet
14 @title Lx-Office Installationsanleitung
21 @top Inhalt der Anleitung
25 * Aktuelle Hinweise:: Andere Informationsquellen als diese Anleitung
26 * Benötigte Software und Pakete:: Vorraussetzungen zum Betrieb von Lx-Office
27 * Installation des Programmpaketes:: Installationsort, Berechtigungen
28 * Anpassung der PostgreSQL-Konfiguration:: Verschiedene Aspekte der Datenbankkonfiguration
29 * Apache-Konfiguration:: Einrichtung eines Aliases und Optionen für das Ausführen von CGI-Scripten
30 * Benutzerauthentifizierung und Administratorpasswort:: Einrichtung der Authentifizierungsdatenbank und der Passwortüberprüfung
31 * Benutzer- und Gruppenverwaltung:: Einrichten von Benutzern, Gruppen und Datenbanken
32 * OpenDocument-Vorlagen:: Wichtige Hinweise zum Erstellen und zur Verwendung von Dokumentenvorlagen
33 * Lx-Office ERP verwenden:: Die URLs zur Anmeldung und Administration
36 @c ---------------------------------------------------------------
38 @node Aktuelle Hinweise
39 @chapter Aktuelle Hinweise
41 Aktuelle Installations- und Konfigurationshinweise gibt es:
45 auf der Lx-Office Homepage unter @uref{http://lx-office.org/index.php?id=dokumentation}
48 im Lx-Office-Wiki unter Dokumentation (@uref{http://wiki.lx-office.org/index.php/Lx-Office_ERP})
51 im Lx-Office-Forum: @uref{http://www.lx-office.org/forum/}
54 @c ---------------------------------------------------------------
56 @node Benötigte Software und Pakete
57 @chapter Benötigte Software und Pakete
59 Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache) und ein Datenbankserver (PostgreSQL) benötigt.
61 Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht Bestandteil einer Standard-Perl-Installation sind:
79 IO::Wrap (aus dem Paket IO::Stringy)
88 Diese Pakete können bei den unterschiedlichen Distributionen anders heißen.
90 Für Debian oder Ubuntu benötigen Sie diese Pakete:
92 @code{apache postgresql libdbi-perl libdbd-pg-perl libpgperl libclass-accessor-perl libarchive-zip-perl libtext-iconv-perl libyaml-perl libtext-csv-perl libio-stringy-perl libtemplate-perl}
94 Für Fedora Core benötigen Sie unter anderem diese Pakete:
96 @code{httpd postgresql-server perl-DBI perl-DBD-Pg}
98 Für OpenSuSE benötigen Sie diese Pakete:
100 @code{apache2 postgresql-server perl-DBI perl-DBD-Pg perl-Archive-Zip perl-Class-Accessor perl-Text-Iconv perl-Text-CSV_XS perl-IO-stringy perl-Template-Toolkit}
102 Da Perl-CGI-Ajax nicht als Paket für Distributionen bereit steht, muß
103 es mit der CPAN-Shell installiert werden. Leider gibt es Fälle, in
104 denen das nicht möglich oder praktikabel ist. Lx-Office liefert daher
105 das Paket im CGI-Verzeichnis mit. Das sollte als Fall-Back greifen.
107 Lx-Office enthält ein Script, mit dem überprüft werden kann, ob alle
108 benötigten Perl-Module installiert sind. Der Aufruf lautet wie folgt:
110 @code{./scripts/installation_check.pl}
112 @c ---------------------------------------------------------------
114 @node Installation des Programmpaketes
115 @chapter Installation des Programmpaketes
117 Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.4.x.tgz) wird im
118 Dokumentenverzeichnis des Webservers (z.B. @code{/var/www/html/},
119 @code{/srv/www/htdocs} oder @code{/var/www/}) entpackt:
123 tar xvzf lxoffice-erp-2.4.x.tgz}
125 Verändern Sie evtl. noch den Namen des Verzeichnisses mit
127 @code{mv lxoffice-erp/ lx-erp/}
129 Alternativ können Sie auch einen Alias in der Webserverkonfiguration
130 benutzen, um auf das tatsächliche Installationsverzeichnis zu
133 Das Verzeichnis muß für den Benutzer beschreibbar sein, unter dem der
134 Webserver läuft. Dieser ist bei verschiedenen Distributionen
135 unterschiedlich (z.B. bei Debian/Ubuntu @code{www-data}, bei Fedora
136 core @code{apache} oder bei OpenSuSE @code{wwwrun}).
138 @code{chown -R www-data: lx-office-erp/}
140 @c ---------------------------------------------------------------
142 @node Anpassung der PostgreSQL-Konfiguration
143 @chapter Anpassung der PostgreSQL-Konfiguration
145 PostgreSQL muss auf verschiedene Weisen angepasst werden.
148 * Zeichensätze/die Verwendung von UTF-8:: Was bei der Verwendung von UTF-8 zu beachten ist
149 * Änderungen an Konfigurationsdateien:: Anpassungen für Anmeldung am Server und Featureunterstützung
150 * Erweiterung für servergespeicherte Prozeduren:: Lx-Office benutzt servergespeicherte Prozeduren
151 * Datenbankbenutzer anlegen:: Um den Zugriff besser zu reglementieren
154 @node Zeichensätze/die Verwendung von UTF-8
155 @section Zeichensätze/die Verwendung von UTF-8
157 Lx-Office kann komplett mit UTF-8 als Zeichensatz verwendet
158 werden. Dabei gibt es zwei Punkte zu beachten: PostgreSQL muss in
159 Version 8.0 oder neuer benutzt werden, und der
160 PostgreSQL-Datenbankcluster muss ebenfalls mit UTF-8 als Locale
161 angelegt worden sein.
163 Dieses ist kann überprüft werden: ist das Encoding der Datenbank
164 ``template1'' ``UTF8'', so kann auch Lx-Office mit UTF-8 betrieben
165 werden. Andernfalls ist es notwendig, einen neuen Datenbankcluster mit
166 UTF-8-Encoding anzulegen und diesen zu verwenden. Unter Debian und
167 Ubuntu kann dies z.B. mit dem folgenden Befehl getan werden:
169 @code{pg_createcluster --locale=de_DE.UTF-8 --encoding=UTF-8 8.2 clustername}
171 Die Datenbankversionsnummer muss an die tatsächlich verwendete
172 Versionsnummer angepasst werden.
174 Unter anderen Distributionen gibt es ähnliche Methoden.
176 Wurde PostgreSQL nicht mit UTF-8 als Encoding initialisiert und ist
177 ein Neuanlegen eines weiteren Clusters nicht möglich, so kann
178 Lx-Office mit ISO-8850-15 als Encoding betrieben werden.
180 @node Änderungen an Konfigurationsdateien
181 @section Änderungen an Konfigurationsdateien
183 In der Datei @code{postgresql.conf}, die je nach Distribution in
184 verschiedenen Verzeichnissen liegen kann
185 (z.B. @code{/var/lib/pgsql/data/} oder @code{/etc/postgresql/}, muss
186 sichergestellt werden, dass TCP/IP-Verbindungen aktiviert sind. Für
187 PostgreSQL vor Version v8.0 lautete dieser Parameter
189 @code{TCPIP_SOCKET = 1}
191 Ab v8.0 wird das Verhalten hingegen über den neuen Parameter
192 @code{listen_address} gesteuert. Laufen PostgreSQL und Lx-Office auf
193 demselben Rechner, so kann dort der Wert @code{localhost} verwendet
194 werden. Andernfalls müssen Datenbankverbindungen auch von anderen
195 Rechnern aus zugelassen werden, was mit dem Wert \@code{*} geschieht.
197 Bei PostgreSQL-Versionen ab v8.0 und neuer muss zusätzlich der
198 folgende Parameter gesetzt werden:
200 @code{default_with_oids = on}
202 In der Datei @code{pg_hba.conf}, die im gleichen Verzeichnis wie die
203 @code{postgresql.conf} zu finden sein sollte, müssen die
204 Berichtigungen für den Zugriff geändert werden. Hier gibt es mehrere
205 Möglichkeiten. Eine besteht darin, lokale Verbindungen immer
208 @code{local all all trust
210 host all all 127.0.0.1 255.0.0.0 trust}
212 Besser ist es, für eine bestimmte Datenbank Zugriff nur per Passwort
213 zuzulassen. Beispielsweise:
215 @code{local all lxoffice password
217 host all lxoffice 127.0.0.1 255.255.255.255 password}
219 @c ---------------------------------------------------------------
221 @node Erweiterung für servergespeicherte Prozeduren
222 @section Erweiterung für servergespeicherte Prozeduren
224 In der Datenbank @code{template1} muss die Unterstützung für
225 servergespeicherte Prozeduren eingerichet werden. Melden Sie sich
226 dafür als Benutzer ``postgres'' an der Datenbank an, und führen Sie
227 die folgenden Kommandos aus:
229 @code{create function plpgsql_call_handler () returns opaque as '/usr/lib/pgsql/plpgsql.so' language 'c';
231 create language 'plpgsql' handler plpgsql_call_handler
232 lancompiler 'pl/pgsql';}
234 Bitte beachten Sie, dass der Pfad zur Datei @code{plpgsql.so} von
235 Distribution zu Distribution verschiedlich sein kann. Bei
236 Debian/Ubuntu befindet sie sich unter
237 @code{/usr/lib/postgresql/lib/plpgsql.so}.
240 @c ---------------------------------------------------------------
242 @node Datenbankbenutzer anlegen
243 @section Datenbankbenutzer anlegen
245 Wenn Sie nicht den Datenbanksuperuser ``postgres'' zum Zugriff
246 benutzen wollen, so sollten Sie bei PostgreSQL einen neuen Benutzer
247 anlegen. Ein Beispiel, wie Sie einen neuen Benutzer anlegen können:
251 createuser -d -P lxoffice}
253 Wenn Sie später einen Datenbankzugriff konfigurieren, verändern Sie
254 den evtl. voreingestellten Benutzer ``postgres'' auf ``lxoffice''
255 bzw. den hier gewählten Benutzernamen.
257 @c ---------------------------------------------------------------
259 @node Apache-Konfiguration
260 @chapter Apache-Konfiguration
262 Der Zugriff auf das Programmverzeichnis muss in der Apache
263 Webserverkonfigurationsdatei @code{httpd.conf} eingestellt
264 werden. Fügen Sie den folgenden Abschnitt dieser Datei oder einer
265 anderen Datei hinzu, die beim Starten des Webservers eingelesen wird:
268 AddHandler cgi-script .pl
270 Alias /lx-erp/ /var/www/lx-erp/
272 <Directory /var/www/lx-erp>
274 Options ExecCGI Includes FollowSymlinks
279 <Directory /var/www/lx-erp/users>
289 Ersetzen Sie dabei die Pfade durch diejenigen, in die Sie vorher das
290 Lx-Office-Archiv entpacket haben.
292 Achtung: Vor den einzelnen Optionen muss bei einigen Distributionen ein
293 Plus @samp{+} gesetzt werden.
295 Auf einigen Webservern werden manchmal die Grafiken und Style-Sheets
296 nicht ausgeliefert. In solchen Fällen hat es oft geholfen, die
297 folgende Option in die Konfiguration aufzunehmen:
299 @code{EnableSendfile Off}
301 @c ---------------------------------------------------------------
303 @node Benutzerauthentifizierung und Administratorpasswort
304 @chapter Benutzerauthentifizierung und Administratorpasswort
306 Informationen über die Einrichtung der Benutzerauthentifizierung, über
307 die Verwaltung von Gruppen und weitere Einstellungen
310 * Grundlagen zur Benutzerauthentifizierung:: Verfügbare Methoden, Name der Konfigurationsdatei
311 * Administratorpasswort:: Wo das Administratorpasswort gesetzt werden kann
312 * Authentifizierungsdatenbank:: Verbindungseinstellungen zur Authentifizierungsdatenbank
313 * Passwortüberprüfung:: Einstellungen zur Überprüfung der Benutzerpasswörter
314 * Name des Session-Cookies:: Ändern des Cookie-Namens bei Verwendung mehrerer Lx-Office-Installationen auf einem Server
315 * Anlegen der Authentifizierungsdatenbank:: Wie die Authentifizierungsdatenbank angelegt wird
318 @c ---------------------------------------------------------------
320 @node Grundlagen zur Benutzerauthentifizierung
321 @section Grundlagen zur Benutzerauthentifizierung
323 Lx-Office verwaltet die Benutzerinformationen in einer Datenbank, die
324 im folgenden ``Authentifizierungsdatenbank'' genannt wird. Für jeden
325 Benutzer kann dort eine eigene Datenbank für die eigentlichen
326 Finanzdaten hinterlegt sein. Diese beiden Datenbanken können, müssen
327 aber nicht unterschiedlich sein.
329 Im einfachsten Fall gibt es für Lx-Office nur eine einzige Datenbank,
330 in der sowohl die Benutzerinformationen als auch die Daten abgelegt
333 Zusätzlich ermöglicht es Lx-Office, dass die Benutzerpasswörter
334 entweder gegen die Authentifizierungsdatenbank oder gegen einen
335 LDAP-Server überprüft werden.
337 Welche Art der Passwortüberprüfung Lx-Office benutzt und wie Lx-Office
338 die Authentifizierungsdatenbank erreichen kann, wird in der
339 Konfigurationsdatei @code{config/authentication.pl} festgelegt. Diese
340 muss bei der Installation und bei einem Upgrade von einer Version vor
341 v2.6.0 angelegt werden. Eine Beispielkonfigurationsdatei
342 @code{config/authentication.pl.default} existiert, die als Vorlage
345 @node Administratorpasswort
346 @section Administratorpasswort
348 Das Passwort, das zum Zugriff auf das Aministrationsinterface benutzt wird,
349 wird ebenfalls in dieser Datei gespeichert. Es kann auch nur dort und nicht
350 mehr im Administrationsinterface selber geändert werden. Der Parameter dazu
351 heißt @code{$self->@{admin_password@}}.
353 @node Authentifizierungsdatenbank
354 @section Authentifizierungsdatenbank
356 Die Verbindung zur Authentifizierungsdatenbank wird mit den Parametern
357 in @code{$self->@{DB_config@}} konfiguriert. Hier sind die folgenden
362 @samp{host} -- Der Rechnername oder die IP-Adresse des Datenbankservers
364 @samp{port} -- Die Portnummer des Datenbankservers, meist 5432
366 @samp{db} -- Der Name der Authentifizierungsdatenbank
368 @samp{user} -- Der Benutzername, mit dem sich Lx-Office beim Datenbankserver anmeldet (z.B. ``postgres'')
370 @samp{password} -- Das Passwort für den Datenbankbenutzer
373 Die Datenbank muss noch nicht existieren. Lx-Office kann sie
374 automatisch anlegen (mehr dazu siehe unten).
376 @node Passwortüberprüfung
377 @section Passwortüberprüfung
379 Lx-Office unterstützt Passwortüberprüfung auf zwei Arten: gegen die
380 Authentifizierungsdatenbank und gegen einen externen LDAP- oder
381 Active-Directory-Server. Welche davon benutzt wird, regelt der
382 Parameter @code{$self->@{module@}}.
384 Sollen die Benutzerpasswörter in der Authentifizierungsdatenbank
385 gespeichert werden, so muss der Parameter @code{$self->@{module@}} den
386 Wert @samp{DB} enthalten. In diesem Fall können sowohl der
387 Administrator als auch die Benutzer selber ihre Psaswörter in
390 Soll hingegen ein externer LDAP- oder Active-Directory-Server benutzt
391 werden, so muss der Parameter @code{$self->@{module@}} auf @samp{LDAP}
392 gesetzt werden. In diesem Fall müssen zusätzliche Informationen über
393 den LDAP-Server in @code{$self->@{LDAP_config@}} angegeben werden:
397 @samp{host} -- Der Rechnername oder die IP-Adresse des LDAP- oder Active-Directory-Servers. Diese Angabe ist zwingend erforderlich.
399 @samp{port} -- Die Portnummer des LDAP-Servers; meist 389.
401 @samp{tls} -- Wenn Verbindungsverschlüsselung gewünscht ist, so diesen Wert auf @samp{1} setzen, andernfalls auf @samp{0} belassen
403 @samp{attribute'} -- Das LDAP-Attribut, in dem der Benutzername steht, den der Benutzer eingegeben hat. Für Active-Directory-Server
404 ist dies meist @samp{sAMAccountName}, für andere LDAP-Server hingegen @samp{uid}. Diese Angabe ist zwingend erforderlich.
406 @samp{base_dn} -- Der Abschnitt des LDAP-Baumes, der durchsucht werden soll. Diese Angabe ist zwingend erforderlich.
408 @samp{filter} -- Ein optionaler LDAP-Filter. Enthält dieser Filter das Wort @code{<%login%>}, so wird dieses durch den vom Benutzer
409 eingegebenen Benutzernamen ersetzt. Andernfalls wird der LDAP-Baum nach einem Element durchsucht, bei dem das oben angegebene Attribut
410 mit dem Benutzernamen identisch ist.
412 @samp{bind_dn} und @samp{bind_password} -- Wenn der LDAP-Server eine Anmeldung erfordert, bevor er durchsucht werden kann (z.B. ist dies bei
413 Active-Directory-Servern der Fall), so kann diese hier angegeben werden. Für Active-Directory-Server kann als @samp{bind_dn} entweder eine
414 komplette LDAP-DN wie z.B. @samp{cn=Martin Mustermann,cn=Users,dc=firmendomain} auch nur der volle Name des Benutzers
415 eingegeben werden; in diesem Beispiel also @samp{Martin Mustermann}.
418 @node Name des Session-Cookies
419 @section Name des Session-Cookies
421 Sollen auf einem Server mehrere Lx-Office-Installationen aufgesetzt
422 werden, so müssen die Namen der Session-Cookies für alle
423 Installationen unterschiedlich sein. Der Name des Cookies wird mit dem
424 Parameter @code{$self->@{cookie_name@}} gesetzt.
426 Diese Angabe ist optional, wenn nur eine Installation auf dem Server
429 @node Anlegen der Authentifizierungsdatenbank
430 @section Anlegen der Authentifizierungsdatenbank
432 Nachdem alle Einstellungen in @code{config/authentication.pl}
433 vorgenommen wurden, muss Lx-Office die Authentifizierungsdatenbank
434 anlegen. Dieses geschieht automatisch, wenn Sie sich im
435 Administrationsmodul anmelden, das unter der folgenden URL erreichbar
438 @uref{http://localhost/lx-erp/admin.pl}
441 @c ---------------------------------------------------------------
443 @node Benutzer- und Gruppenverwaltung
444 @chapter Benutzer- und Gruppenverwaltung
446 Nach der Installation müssen Benutzer, Gruppen und Datenbanken
447 angelegt werden. Dieses geschieht im Administrationsmenü, dass Sie
448 unter folgender URL finden:
450 @uref{http://localhost/lx-erp/admin.pl}
452 Verwenden Sie zur Anmeldung das Password, dass Sie in der Datei
453 @code{config/authentication.pl} eingetragen haben.
456 * Zusammenhänge:: Übersicht über Benutzer, Gruppen, Berechtigungen und Datenbanken
457 * Datenbanken anlegen:: Hinweise zum Anlegen von Datenbanken
458 * Gruppen anlegen:: Hinweise zum Anlegen von Gruppen
459 * Benutzer anlegen:: Hinweise zum Anlegen von Benutzern
460 * Gruppenmitgliedschaften verwalten:: Wie man Gruppen Benutzer zuordnet
461 * Migration alter Installationen:: Automatische Übernahme bei Update von einer älteren Version
465 @section Zusammenhänge
467 Lx-Office verwendet eine Datenbank zum Speichern all seiner
468 Informationen wie Kundendaten, Artikel, Angebote, Rechnungen etc. Um
469 mit Lx-Office arbeiten zu können, muss eine Person einen
470 Benutzeraccount haben. Jedem Benutzeraccount wiederum wird genau eine
471 Datenbank zugewiesen, mit der dieser Benutzer arbeiten kann. Es ist
472 möglich und normal, dass mehreren Benutzern die selbe Datenbank
473 zugewiesen wird, sodass sie alle mit den selben Daten arbeiten können.
475 Die Basisdaten der Benutzer, die in der Administration eingegeben
476 werden können, werden in einer zweiten Datenbank gespeichert, der
477 bereits erwähnten Authentifizierungsdatenbank. Diese ist also den
478 Produktivdaten enthaltenden Datenbanken vorgeschaltet. Pro
479 Lx-Office-Installation gibt es nur eine Authentifizierungsdatenbank,
480 aber beliebig viele Datenbanken mit Firmendaten.
482 Lx-Office lann seinen Benutzern Zugriff auf bestimmte
483 Funktionsbereiche erlauben oder verbieten. Wird der Zugriff nicht
484 gestattet, so werden der entsprechenden Menüpunkte auch nicht
485 angezeigt. Diese Rechte werden ebenfalls in der
486 Authentifizierungsdatenbank gespeichert.
488 Um Rechte verteilen zu können, verwendet Lx-Office ein
489 Gruppen-Prinzip. Einer Gruppe kann der Zugriff auf bestimmte Bereiche
490 erlaubt werden. Ein Benutzer wiederum kann Mitglied in einer oder
491 mehrerer Gruppen sein. Der Benutzer hat Zugriff auf alle diejenigen
492 Funktionen, die mindestens einer Gruppe erlaubt sind, in der der
493 Benutzer Mitglied ist.
495 Die allgemeine Reihenfolge, in der Datenbanken, Gruppen und Benutzer
496 angelegt werden sollten, lautet:
506 Benutzer den Gruppen zuordnen
509 @node Datenbanken anlegen
510 @section Datenbanken anlegen
512 Zuerst muss eine Datenbank angelegt werden. Verwenden Sie für den
513 Datenbankzugriff den vorhin angelegten Benutzer (in unseren Beispielen
514 ist dies @samp{lxoffice}).
516 Wenn Sie für die Lx-Office-Installation nicht den europäischen
517 Schriftsatz ISO-8859-15 sondern UTF-8 (Unicode) benutzen wollen, so
518 müssen Sie vor dem Anlegen der Datenbank in der Datei
519 @code{config/lx-erp.conf} die Variable @code{$dbcharset} auf den Wert
520 @samp{UTF-8} setzen. Zusätzlich muss beim Anlegen der Datenbank
521 @samp{UTF-8 Unicode} als Schriftsatz ausgewählt werden.
523 Bitte beachten Sie, dass alle Datenbanken den selben Zeichensatz
524 verwenden müssen, da diese Einstellungen momentan global in Lx-Office
525 vorgenommen wird und nicht nach Datenbank unterschieden werden
526 kann. Auch die Authentifizierungsdatenbank muss mit diesem Zeichensatz
527 angelegt worden sein.
529 @node Gruppen anlegen
530 @section Gruppen anlegen
532 Eine Gruppe wird in der Gruppenverwaltung angelegt. Ihr muss ein Name
533 gegeben werden, eine Beschreibung ist hingegen optional. Nach dem
534 Anlegen können Sie die verschiedenen Bereiche wählen, auf die
535 Mitglieder dieser Gruppe Zugriff haben sollen.
537 Benutzergruppen sind unabhängig von Datenbanken, da sie in der
538 Authentifizierungsdatenbank gespeichert werden. Sie gelten für alle
539 Datenbanken, die in dieser Installation verwaltet werden.
541 @node Benutzer anlegen
542 @section Benutzer anlegen
544 Beim Anlegen von Benutzern werden für viele Parameter
545 Standardeinstellungen vorgenommen, die den Gepflogenheiten des
546 deutschen Raumes entsprechen.
548 Zwingend anzugeben sind der Loginname sowie die komplette
549 Datenbankkonfiguration. Wenn die Passwortauthentifizierung über die
550 Datenbank eingestellt ist, so kann hier auch das Benutzerpasswort
551 gesetzt bzw. geändert werden. Ist hingegen die LDAP-Authentifizierung
552 aktiv, so ist das Passwort-Feld deaktiviert.
554 In der Datenbankkonfiguration müssen die Zugriffsdaten einer der eben
555 angelegten Datenbanken eingetragen werden.
557 @node Gruppenmitgliedschaften verwalten
558 @section Gruppenmitgliedschaften verwalten
560 Nach dem Anlegen von Benutzern und Gruppen müssen Benutzer den Gruppen
561 zugewiesen werden. Dazu gibt es zwei Möglichkeiten:
565 In der Gruppenverwaltung wählt man eine Gruppe aus. Im folgenden
566 Dialog kann man dann einzeln die Benutzer der Gruppe hinzufügen.
568 In der Gruppenverwaltung wählt man das Tool zur Verwaltung der
569 Gruppenmitgliedschaft. Hier wird eine Matrix angezeigt, die alle im
570 System angelegten Gruppen und Benutzer enthält. Durch Setzen der
571 Häkchen wird der Benutzer in der ausgewählten Zeile der Gruppe in der
572 ausgewählten Spalte hinzugefügt.
575 @node Migration alter Installationen
576 @section Migration alter Installationen
578 Wenn Lx-Office 2.6.0 über eine ältere Version installiert wird, in der
579 die Benutzerdaten noch im Dateisystem im Verzeichnis @code{users}
580 verwaltet wurden, so bietet Lx-Office die Möglichkeit, diese
581 Benutzerdaten automatisch in die Authentifizierungsdatenbank zu
582 übernehmen. Dies geschieht, wenn man sich nach dem Update der
583 Installation das erste Mal im Administrationsbereich anmeldet. Findet
584 Lx-Office die Datei @code{users/members}, so wird der
585 Migrationsprozess gestartet.
587 Der Migrationsprozess ist nahezu vollautomatisch. Alle Benutzerdaten
588 können übernommen werden. Nach den Benutzerdaten bietet Lx-Office noch
589 die Möglichkeit an, dass automatisch eine Benutzergruppe angelegt
590 wird. Dieser Gruppe wird Zugriff auf alle Funktionen von Lx-Office
591 gewährt. Alle migrierten Benutzern werden Mitglied in dieser
592 Gruppe. Damit wird das Verhalten von Lx-Office bis Version 2.4.3
593 inklusive wiederhergestellt, und die Benutzer können sich sofort
594 wieder anmelden und mit dem System arbeiten.
596 @c ---------------------------------------------------------------
598 @node OpenDocument-Vorlagen
599 @chapter OpenDocument-Vorlagen
601 Lx-Office unterstützt die Verwendung von Vorlagen im
602 OpenDocument-Format, wie es OpenOffice.org ab Version 2
603 erzeugt. Lx-Office kann dabei sowohl neue OpenDocument-Dokumente als
604 auch aus diesen direkt PDF-Dateien erzeugen. Um die Unterstützung von
605 OpenDocument-Vorlagen zu aktivieren muss in der Datei
606 @code{config/lx-erp.conf} die Variable @code{$opendocument_templates}
607 auf @samp{1} stehen. Dieses ist die Standardeinstellung.
609 Weiterhin muss in der Datei @code{config/lx-erp.conf} die Variable
610 @code{$dbcharset} auf die Zeichenkodierung gesetzt werden, die auch
611 bei der Speicherung der Daten in der Datenbank verwendet wird. Diese
612 ist in den meisten Fällen "ISO-8859-15".
614 Während die Erzeugung von reinen OpenDocument-Dateien keinerlei
615 weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF
616 OpenOffice.org benötigt. Soll dieses Feature genutzt werden, so muss
617 neben OpenOffice.org ab Version 2 auch der ``X virtual frame buffer''
618 (xvfb) installiert werden. Bei Debian ist er im Paket ``xvfb''
619 enthalten. Andere Distributionen enthalten ihn in anderen Paketen.
621 Nach der Installation müssen in der Datei @code{config/lx-erp.conf}
622 zwei weitere Variablen angepasst werden:
623 @code{$openofficeorg_writer_bin} muss den vollständigen Pfad zur
624 OpenOffice.org Writer-Anwendung enthalten. @code{$xvfb_bin} muss den
625 Pfad zum ``X virtual frame buffer'' enthalten.
627 Zusätzlich gibt es zwei verschiedene Arten, wie Lx-Office mit
628 OpenOffice kommuniziert. Die erste Variante, die benutzt wird, wenn
629 die Variable @code{$openofficeorg_daemon} gesetzt ist, startet ein
630 OpenOffice, das auch nach der Umwandlung des Dokumentes gestartet
631 bleibt. Bei weiteren Umwandlungen wird dann diese laufende Instanz
632 benutzt. Der Vorteil ist, dass die Zeit zur Umwandlung deutlich
633 reduziert wird, weil nicht für jedes Dokument ein OpenOffice gestartet
634 werden muss. Der Nachteil ist, dass diese Methode Python und die
635 Python-UNO-Bindings benötigt, die Bestandteil von OpenOffice 2 sind.
637 Ist @code{$openofficeorg_daemon} nicht gesetzt, so wird für jedes
638 Dokument OpenOffice neu gestartet und die Konvertierung mit Hilfe
639 eines Makros durchgeführt. Dieses Makro muss in der Dokumentenvorlage
640 enthalten sein und ``Standard.Conversion.ConvertSelfToPDF()''
641 heißen. Die Beispielvorlage @samp{templates/German-invoice.odt}
642 enthält ein solches Makro, das in jeder anderen Dokumentenvorlage
643 ebenfalls enthalten sein muss.
645 Als letztes muss herausgefunden werden, welchen Namen OpenOffice.org
646 Writer dem Verzeichnis mit den Benutzereinstellungen gibt. Unter
647 Debian ist dies momentan @code{~/.openoffice.org2}. Sollte der Name
648 bei Ihrer OpenOffice.org-Installation anders sein, so muss das
649 Verzeichnis @code{users/.openoffice.org2} entsprechend umbenannt
650 werden. Ist der Name z.B. einfach nur @code{.openoffice}, so wäre
651 folgender Befehl auszuführen:
653 @code{mv users/.openoffice.org2 users/.openoffice}
655 Dieses Verzeichnis, wie auch das komplette @code{users}-Verzeichnis,
656 muss vom Webserver beschreibbar sein. Dieses wurde in Schritt
657 @code{Installation des Programmpakets} oben bereits erledigt, kann
658 aber erneut überprüft werden, wenn die Konvertierung nach PDF
661 @c ---------------------------------------------------------------
663 @node Lx-Office ERP verwenden
664 @chapter Lx-Office ERP verwenden
666 Nach erfolgreicher Installation ist der Loginbildschirm unter
667 folgender URL erreichbar:
669 @uref{http://localhost/lx-office-erp/login.pl}
671 Die Administrationsseite erreichen Sie unter:
673 @uref{http://localhost/lx-office-erp/admin.pl}