6 2 Benötigte Software und 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
17 6.1 Verfügbare und notwendige Konfigurationsoptionen
18 6.2 Automatisches Starten des Task-Servers beim Booten
19 6.2.1 SystemV-basierende Systeme (z.B. Debian, OpenSuSE, Fedora Core)
20 6.2.2 Upstart-basierende Systeme (z.B. Ubuntu)
21 6.3 Wie der Task-Server gestartet und beendet wird
22 7 Benutzerauthentifizierung und Administratorpasswort
23 7.1 Grundlagen zur Benutzerauthentifizierung
24 7.2 Administratorpasswort
25 7.3 Authentifizierungsdatenbank
26 7.4 Passwortüberprüfung
27 7.5 Name des Session-Cookies
28 7.6 Anlegen der Authentifizierungsdatenbank
29 8 Benutzer- und Gruppenverwaltung
31 8.2 Datenbanken anlegen
34 8.5 Gruppenmitgliedschaften verwalten
35 8.6 Migration alter Installationen
36 9 Drucken mit Lx-Office
37 10 OpenDocument-Vorlagen
38 11 Lx-Office ERP verwenden
47 Aktuelle Installations- und Konfigurationshinweise gibt es:
49 * auf der Lx-Office Homepage unter
50 `http://lx-office.org/index.php?id=dokumentation'
52 * im Lx-Office-Wiki unter Dokumentation
53 (`http://wiki.lx-office.org/index.php/Lx-Office_ERP')
55 * im Lx-Office-Forum: `http://www.lx-office.org/forum/'
57 2 Benötigte Software und Pakete
58 ********************************
63 Lx-Office ist für Linux konzipiert, und sollte auf jedem unixoiden
64 Betriebssystem zum Laufen zu kriegen sein. Getestet ist diese Version im
65 speziellen auf Debian und Ubuntu, grundsätzlich wurde bei der Auswahl
66 der Pakete aber darauf Rücksicht genommen, dass es ohne große Probleme
67 auf den derzeit aktuellen verbreiteten Distributionen läuft.
69 Anfang 2011 sind das folgende Systeme:
71 * Ubuntu 8.04 LTS Hardy Heron
73 * Ubuntu 9.10 Karmic Koala
75 * Ubuntu 10.04 Lucid Lynx
77 * Ubuntu 10.10 Maverick Meerkat
87 * SuSE Linux Enterprice Server 11
93 Für die debianoiden Betriebssysteme existiert ein .deb, das deutlich
94 einfacher zu installieren ist.
96 Ubuntu 8.04 LTS hat zusätzlich die Schwierigkeit, dass die Module im
97 Archiv recht alt sind, und das viele der benötigten Module nicht
98 einfach zu installieren sind. Dafür sollte es kurz nach dem Release ein
101 Alternativ dazu kann die normale Installation durchgeführt werden
102 (*note Manuelle Installation des Programmpaketes::), wenn vorher ein
103 Kompatibilitätspaket installiert wird, das die fehlenden Pakete
104 bereitstellt. Das Paket ist auf Sourceforge
105 (https://sourceforge.net/projects/lx-office/files/Lx-Office%20ERP/2.6.2/)
106 unter dem Namen `lx-erp-perl-libs-compat-v2.tar.gz' hinterlegt.
108 Zur Installation das Paket in das entpackte Lx-Office Verzeichnis
111 `tar xzf lx-erp-perl-libs-compat-v2.tar.gz /path/to/lx-office/'
113 Zusätzlich müssen dann noch die folgenden Pakete installiert weerden
115 `libbit-vector-perl libsub-exporter-perl libclone-perl
116 libclass-factory-util-perl'
118 Danach sollte der Installationscheck (*note Pakete::) die
119 enthaltenen Pakete erkennen.
124 Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache)
125 und ein Datenbankserver (PostgreSQL, mindestens v8.2) benötigt.
127 Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht
128 Bestandteil einer Standard-Perl-Installation sind:
174 Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen,
175 `URI' und `XML::Writer' sind notwendig. Ohne startet Lx-Office nicht.
177 Gegenüber Version 2.6.1 sind `parent', `DateTime', `Rose::Object',
178 `Rose::DB' und `Rose::DB::Object' neu hinzugekommen. `IO::Wrap' wurde
180 Gegenüber Version 2.6.3 ist `JSON` neu hinzugekommen.
182 `Email::Address' und `List::MoreUtils' sind schon länger feste
183 Abhängigkeiten, wurden aber bisher mit Lx-Office mitgeliefert. Beide
184 sind auch in 2.6.1 weiterhin mit ausgeliefert, wurden in einer
185 zukünftigen Version aber aus dem Paket entfernt werden. Es wird
186 empfohlen diese Module zusammen mit den anderen als Bibliotheken zu
189 `CGI::Ajax' ist nach wie vor in einer modifizierten Version
190 mitgeliefert und braucht nicht nachinstalliert werden.
192 Die zu installierenden Pakete können in den verschiedenen
193 Distributionen unterschiedlich heißen.
195 Für Debian oder Ubuntu benötigen Sie diese Pakete:
197 `apache2 postgresql libparent-perl libarchive-zip-perl
198 libclass-accessor-perl libdatetime-perl libdbi-perl libdbd-pg-perl
199 libpg-perl libemail-address-perl liblist-moreutils-perl
200 libpdf-api2-perl librose-object-perl librose-db-perl
201 librose-db-object-perl libtemplate-perl libtext-csv-xs-perl
202 libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl
203 libconfig-std-perl libparams-validate-perl libjson-perl'
205 Für Fedora Core benötigen Sie diese Pakete:
207 `httpd postgresql-server perl-parent perl-Class-Accessor
208 perl-DateTime perl-DBI perl-DBD-Pg perl-Email-Address
209 perl-List-MoreUtils perl-PDF-API2 perl-Rose-Object perl-Rose-DB
210 perl-Rose-DB-Object perl-Template-Toolkit perl-Text-CSV_XS
211 perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML'
213 Für OpenSuSE benötigen Sie diese Pakete:
215 `apache2 postgresql-server perl-Archive-Zip perl-Class-Accessor
216 perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-List-MoreUtils
217 perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv
218 perl-URI perl-XML-Writer perl-YAML'
220 Bei openSuSE 11 ist `parent' bereits enthalten, und braucht nicht
221 nachinstalliert werden. Die `Rose::*' Pakete sind derzeit nicht für
222 SuSE gepackt, und müssen anderweitig nachinstalliert werden.
224 Lx-Office enthält ein Script, mit dem überprüft werden kann, ob alle
225 benötigten Perl-Module installiert sind. Der Aufruf lautet wie folgt:
227 `./scripts/installation_check.pl'
229 3 Manuelle Installation des Programmpaketes
230 *******************************************
232 Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.2.tgz) wird im
233 Dokumentenverzeichnis des Webservers (z.B. `/var/www/html/',
234 `/srv/www/htdocs' oder `/var/www/') entpackt:
237 tar xvzf lxoffice-erp-2.6.2.tgz'
239 Verändern Sie evtl. noch den Namen des Verzeichnisses mit
241 `mv lxoffice-erp/ lx-erp/'
243 Alternativ können Sie auch einen Alias in der Webserverkonfiguration
244 benutzen, um auf das tatsächliche Installationsverzeichnis zu verweisen.
246 Die Verzeichnisse `users', `spool' und `webdav' müssen für den
247 Benutzer beschreibbar sein, unter dem der Webserver läuft. Die
248 restlichen Dateien müssen für diesen Benutzer lesbar sein. Der
249 Benutzername ist bei verschiedenen Distributionen unterschiedlich (z.B.
250 bei Debian/Ubuntu `www-data', bei Fedora core `apache' oder bei
253 Der folgende Befehl ändert den Besitzer für die oben genannten
254 Verzeichnisse auf einem Debian/Ubuntu-System:
256 `chown -R www-data lx-office-erp/users lx-office-erp/spool
257 lx-office-erp/webdav'
259 Weiterhin muss der Webserver-Benutzer im Verzeichnis `templates'
260 Verzeichnisse für jeden neuen Benutzer, der in lx-office angelegt wird,
263 `chgrp www-data lx-office-erp/templates; chmod g+w
264 lx-office-erp/templates'
266 4 Anpassung der PostgreSQL-Konfiguration
267 ****************************************
269 PostgreSQL muss auf verschiedene Weisen angepasst werden.
271 4.1 Zeichensätze/die Verwendung von UTF-8
272 ==========================================
274 Lx-Office kann komplett mit UTF-8 als Zeichensatz verwendet werden.
275 Dabei gibt es zwei Punkte zu beachten: PostgreSQL muss in Version 8.0
276 oder neuer benutzt werden, und der PostgreSQL-Datenbankcluster muss
277 ebenfalls mit UTF-8 als Locale angelegt worden sein.
279 Dieses ist kann überprüft werden: ist das Encoding der Datenbank
280 "template1" "UTF8", so kann auch Lx-Office mit UTF-8 betrieben werden.
281 Andernfalls ist es notwendig, einen neuen Datenbankcluster mit
282 UTF-8-Encoding anzulegen und diesen zu verwenden. Unter Debian und
283 Ubuntu kann dies z.B. mit dem folgenden Befehl getan werden:
285 `pg_createcluster --locale=de_DE.UTF-8 --encoding=UTF-8 8.2
288 Die Datenbankversionsnummer muss an die tatsächlich verwendete
289 Versionsnummer angepasst werden.
291 Unter anderen Distributionen gibt es ähnliche Methoden.
293 Wurde PostgreSQL nicht mit UTF-8 als Encoding initialisiert und ist
294 ein Neuanlegen eines weiteren Clusters nicht möglich, so kann Lx-Office
295 mit ISO-8859-15 als Encoding betrieben werden.
297 Das Encoding einer Datenbank kann in `psql' mit `\l' geprüft werden.
299 4.2 Änderungen an Konfigurationsdateien
300 ========================================
302 In der Datei `postgresql.conf', die je nach Distribution in
303 verschiedenen Verzeichnissen liegen kann (z.B. `/var/lib/pgsql/data/'
304 oder `/etc/postgresql/', muss sichergestellt werden, dass
305 TCP/IP-Verbindungen aktiviert sind. Das Verhalten wird über den
306 Parameter `listen_address' gesteuert. Laufen PostgreSQL und Lx-Office
307 auf demselben Rechner, so kann dort der Wert `localhost' verwendet
308 werden. Andernfalls müssen Datenbankverbindungen auch von anderen
309 Rechnern aus zugelassen werden, was mit dem Wert \`*' geschieht.
311 In der Datei `pg_hba.conf', die im gleichen Verzeichnis wie die
312 `postgresql.conf' zu finden sein sollte, müssen die Berichtigungen für
313 den Zugriff geändert werden. Hier gibt es mehrere Möglichkeiten. Eine
314 besteht darin, lokale Verbindungen immer zuzulassen
317 host all all 127.0.0.1 255.0.0.0 trust'
319 Besser ist es, für eine bestimmte Datenbank Zugriff nur per Passwort
320 zuzulassen. Beispielsweise:
324 host all lxoffice 127.0.0.1 255.255.255.255
327 4.3 Erweiterung für servergespeicherte Prozeduren
328 ==================================================
330 In der Datenbank `template1' muss die Unterstützung für
331 servergespeicherte Prozeduren eingerichet werden. Melden Sie sich dafür
332 als Benutzer "postgres" an der Datenbank an, und führen Sie die
333 folgenden Kommandos aus:
335 `create language 'plpgsql';'
337 Achtung: In älteren Postgresversionen (vor 8.0) muss der Handler für
338 die Sprache manuell anlelegt werden, diese Versionen werden aber nicht
339 mehr offiziell von Lx-Office unterstützt. Dafür dann die folgenden
342 `create function plpgsql_call_handler () returns opaque as
343 '/usr/lib/pgsql/plpgsql.so' language 'c';
344 create language 'plpgsql' handler plpgsql_call_handler lancompiler
347 Bitte beachten Sie, dass der Pfad zur Datei `plpgsql.so' von
348 Distribution zu Distribution verschiedlich sein kann. Bei Debian/Ubuntu
349 befindet sie sich unter `/usr/lib/postgresql/lib/plpgsql.so'.
351 4.4 Datenbankbenutzer anlegen
352 =============================
354 Wenn Sie nicht den Datenbanksuperuser "postgres" zum Zugriff benutzen
355 wollen, so sollten Sie bei PostgreSQL einen neuen Benutzer anlegen. Ein
356 Beispiel, wie Sie einen neuen Benutzer anlegen können:
359 createuser -d -P lxoffice'
361 Wenn Sie später einen Datenbankzugriff konfigurieren, verändern Sie
362 den evtl. voreingestellten Benutzer "postgres" auf "lxoffice" bzw. den
363 hier gewählten Benutzernamen.
365 5 Apache-Konfiguration
366 **********************
368 Hinweis: Für einen deutlichen Performanceschub sorgt die Ausführung
369 mittels FCGI. Die Einrichtung wird ausführlich in der Datei
370 `INSTALL.fcgi' beschrieben.
372 Der Zugriff auf das Programmverzeichnis muss in der Apache
373 Webserverkonfigurationsdatei `httpd.conf' eingestellt werden. Fügen Sie
374 den folgenden Abschnitt dieser Datei oder einer anderen Datei hinzu,
375 die beim Starten des Webservers eingelesen wird:
378 AddHandler cgi-script .pl
379 Alias /lx-erp/ /var/www/lx-erp/
380 <Directory /var/www/lx-erp>
381 Options ExecCGI Includes FollowSymlinks
383 <Directory /var/www/lx-erp/users>
389 Ersetzen Sie dabei die Pfade durch diejenigen, in die Sie vorher das
390 Lx-Office-Archiv entpacket haben.
392 Achtung: Vor den einzelnen Optionen muss bei einigen Distributionen
393 ein Plus `+' gesetzt werden.
395 Auf einigen Webservern werden manchmal die Grafiken und Style-Sheets
396 nicht ausgeliefert. In solchen Fällen hat es oft geholfen, die folgende
397 Option in die Konfiguration aufzunehmen:
404 Der Task-Server ist ein Prozess, der im Hintergrund läuft, in
405 regelmäßigen Abständen nach abzuarbeitenden Aufgaben sucht und diese zu
406 festgelegten Zeitpunkten abarbeitet (ähnlich wie Cron). Dieser Prozess
407 wird bisher nur für die Erzeugung der wiederkehrenden Rechnungen
408 benutzt, wird aber in Zukunft deutlich mehr Aufgaben übertragen
411 6.1 Verfügbare und notwendige Konfigurationsoptionen
412 =====================================================
414 Die Konfiguration erfolgt über den Abschnitt `[task_server]' in der
415 Datei `config/lx_office.conf'. Die dort verfügbaren Optionen sind:
417 * `login': gültiger Lx-Office-Benutzername, der benutzt wird, um die
418 zu verwendende Datenbankverbindung auszulesen. Der Benutzer muss
419 in der Administration angelegt werden. Diese Option muss angegeben
422 * `run_as': Wird der Server vom Systembenutzer `root' gestartet, so
423 wechselt er auf den mit `run_as' angegebenen Systembenutzer. Der
424 Systembenutzer muss dieselben Lese- und Schreibrechte haben, wie
425 auch der Webserverbenutzer (siehe *note Manuelle Installation des
426 Programmpaketes::). Daher ist es sinnvoll, hier denselben
427 Systembenutzer einzutragen, unter dem auch der Webserver läuft.
429 * `debug': Schaltet Debug-Informationen an und aus.
431 6.2 Automatisches Starten des Task-Servers beim Booten
432 ======================================================
434 Der Task-Server verhält sich von seinen Optionen her wie ein reguläres
435 SystemV-kompatibles Boot-Script. Außerdem wechselt er beim Starten
436 automatisch in das Lx-Office-Installationsverzeichnis.
438 Deshalb ist es möglich, ihn durch Setzen eines symbolischen Links aus
439 einem der Runlevel-Verzeichnisse heraus in den Boot-Prozess
440 einzubinden. Da das bei neueren Linux-Distributionen aber nicht
441 zwangsläufig funktioniert, werden auch Start-Scripte mitgeliefert, die
442 anstelle eines symbolischen Links verwendet werden können.
444 6.2.1 SystemV-basierende Systeme (z.B. Debian, OpenSuSE, Fedora Core)
445 ---------------------------------------------------------------------
447 Kopieren Sie die Datei `scripts/boot/system-v/lx-office-task-server'
448 nach `/etc/init.d/lx-office-task-server'. Passen Sie in der kopierten
449 Datei den Pfad zum Task-Server an (Zeile `DAEMON=....'). Binden Sie das
450 Script in den Boot-Prozess ein. Dies ist distributionsabhängig:
452 * Debian-basierende Systeme:
453 `update-rc.d lx-office-task-server defaults
454 # Nur bei Debian Squeeze und neuer:
455 insserv lx-office-task-server'
457 * OpenSuSE und Fedora Core:
458 `chkconfig --add lx-office-task-server'
460 Danach kann der Task-Server mit dem folgenden Befehl gestartet
461 werden: `/etc/init.d/lx-office-task-server start'
463 6.2.2 Upstart-basierende Systeme (z.B. Ubuntu)
464 ----------------------------------------------
466 Kopieren Sie die Datei
467 `scripts/boot/upstart/lx-office-task-server.conf' nach
468 `/etc/init/lx-office-task-server.conf'. Passen Sie in der kopierten
469 Datei den Pfad zum Task-Server an (Zeile `exec ....').
471 Danach kann der Task-Server mit dem folgenden Befehl gestartet
472 werden: `service lx-office-task-server start'
474 6.3 Wie der Task-Server gestartet und beendet wird
475 ==================================================
477 Der Task-Server wird wie folgt kontrolliert:
479 `./scripts/task_server.pl Befehl'
481 `Befehl' ist dabei eine der folgenden Optionen:
483 * `start' startet eine neue Instanz des Task-Servers. Die Prozess-ID
484 wird innerhalb des `users'-Verzeichnisses abgelegt.
486 * `stop' beendet einen laufenden Task-Server.
488 * `restart' beendet und startet ihn neu.
490 * `status' berichtet, ob der Task-Server läuft.
492 Der Task-Server wechselt beim Starten automatisch in das
493 Lx-Office-Installationsverzeichnis.
495 Dieselben Optionen können auch für die SystemV-basierenden
496 Runlevel-Scripte benutzt werden (siehe oben).
498 7 Benutzerauthentifizierung und Administratorpasswort
499 *****************************************************
501 Informationen über die Einrichtung der Benutzerauthentifizierung, über
502 die Verwaltung von Gruppen und weitere Einstellungen
504 7.1 Grundlagen zur Benutzerauthentifizierung
505 ============================================
507 Lx-Office verwaltet die Benutzerinformationen in einer Datenbank, die
508 im folgenden "Authentifizierungsdatenbank" genannt wird. Für jeden
509 Benutzer kann dort eine eigene Datenbank für die eigentlichen
510 Finanzdaten hinterlegt sein. Diese beiden Datenbanken können, müssen
511 aber nicht unterschiedlich sein.
513 Im einfachsten Fall gibt es für Lx-Office nur eine einzige Datenbank,
514 in der sowohl die Benutzerinformationen als auch die Daten abgelegt
517 Zusätzlich ermöglicht es Lx-Office, dass die Benutzerpasswörter
518 entweder gegen die Authentifizierungsdatenbank oder gegen einen
519 LDAP-Server überprüft werden.
521 Welche Art der Passwortüberprüfung Lx-Office benutzt und wie
522 Lx-Office die Authentifizierungsdatenbank erreichen kann, wird in der
523 Konfigurationsdatei `config/lx_office.conf' festgelegt. Diese muss bei
524 der Installation und bei einem Upgrade von einer Version vor v2.6.0
525 angelegt werden. Eine Beispielkonfigurationsdatei
526 `config/lx_office.conf.default' existiert, die als Vorlage benutzt
529 7.2 Administratorpasswort
530 =========================
532 Das Passwort, das zum Zugriff auf das Aministrationsinterface benutzt
533 wird, wird ebenfalls in dieser Datei gespeichert. Es kann auch nur dort
534 und nicht mehr im Administrationsinterface selber geändert werden. Der
535 Parameter dazu heißt `$self->{admin_password}'.
537 7.3 Authentifizierungsdatenbank
538 ===============================
540 Die Verbindung zur Authentifizierungsdatenbank wird mit den Parametern
541 in `$self->{DB_config}' konfiguriert. Hier sind die folgenden Parameter
544 * `host' - Der Rechnername oder die IP-Adresse des Datenbankservers
546 * `port' - Die Portnummer des Datenbankservers, meist 5432
548 * `db' - Der Name der Authentifizierungsdatenbank
550 * `user' - Der Benutzername, mit dem sich Lx-Office beim
551 Datenbankserver anmeldet (z.B. "postgres")
553 * `password' - Das Passwort für den Datenbankbenutzer
555 Die Datenbank muss noch nicht existieren. Lx-Office kann sie
556 automatisch anlegen (mehr dazu siehe unten).
558 7.4 Passwortüberprüfung
559 =========================
561 Lx-Office unterstützt Passwortüberprüfung auf zwei Arten: gegen die
562 Authentifizierungsdatenbank und gegen einen externen LDAP- oder
563 Active-Directory-Server. Welche davon benutzt wird, regelt der
564 Parameter `$self->{module}'.
566 Sollen die Benutzerpasswörter in der Authentifizierungsdatenbank
567 gespeichert werden, so muss der Parameter `$self->{module}' den Wert
568 `DB' enthalten. In diesem Fall können sowohl der Administrator als auch
569 die Benutzer selber ihre Psaswörter in Lx-Office ändern.
571 Soll hingegen ein externer LDAP- oder Active-Directory-Server benutzt
572 werden, so muss der Parameter `$self->{module}' auf `LDAP' gesetzt
573 werden. In diesem Fall müssen zusätzliche Informationen über den
574 LDAP-Server in `$self->{LDAP_config}' angegeben werden:
576 * `host' - Der Rechnername oder die IP-Adresse des LDAP- oder
577 Active-Directory-Servers. Diese Angabe ist zwingend erforderlich.
579 * `port' - Die Portnummer des LDAP-Servers; meist 389.
581 * `tls' - Wenn Verbindungsverschlüsselung gewünscht ist, so diesen
582 Wert auf `1' setzen, andernfalls auf `0' belassen
584 * `attribute' - Das LDAP-Attribut, in dem der Benutzername steht,
585 den der Benutzer eingegeben hat. Für Active-Directory-Server ist
586 dies meist `sAMAccountName', für andere LDAP-Server hingegen
587 `uid'. Diese Angabe ist zwingend erforderlich.
589 * `base_dn' - Der Abschnitt des LDAP-Baumes, der durchsucht werden
590 soll. Diese Angabe ist zwingend erforderlich.
592 * `filter' - Ein optionaler LDAP-Filter. Enthält dieser Filter das
593 Wort `<%login%>', so wird dieses durch den vom Benutzer
594 eingegebenen Benutzernamen ersetzt. Andernfalls wird der LDAP-Baum
595 nach einem Element durchsucht, bei dem das oben angegebene Attribut
596 mit dem Benutzernamen identisch ist.
598 * `bind_dn' und `bind_password' - Wenn der LDAP-Server eine
599 Anmeldung erfordert, bevor er durchsucht werden kann (z.B. ist
600 dies bei Active-Directory-Servern der Fall), so kann diese hier
601 angegeben werden. Für Active-Directory-Server kann als `bind_dn'
602 entweder eine komplette LDAP-DN wie z.B. `cn=Martin
603 Mustermann,cn=Users,dc=firmendomain' auch nur der volle Name des
604 Benutzers eingegeben werden; in diesem Beispiel also `Martin
607 7.5 Name des Session-Cookies
608 ============================
610 Sollen auf einem Server mehrere Lx-Office-Installationen aufgesetzt
611 werden, so müssen die Namen der Session-Cookies für alle Installationen
612 unterschiedlich sein. Der Name des Cookies wird mit dem Parameter
613 `$self->{cookie_name}' gesetzt.
615 Diese Angabe ist optional, wenn nur eine Installation auf dem Server
618 7.6 Anlegen der Authentifizierungsdatenbank
619 ===========================================
621 Nachdem alle Einstellungen in `config/lx_office.conf' vorgenommen
622 wurden, muss Lx-Office die Authentifizierungsdatenbank anlegen. Dieses
623 geschieht automatisch, wenn Sie sich im Administrationsmodul anmelden,
624 das unter der folgenden URL erreichbar sein sollte:
626 `http://localhost/lx-erp/admin.pl'
628 8 Benutzer- und Gruppenverwaltung
629 *********************************
631 Nach der Installation müssen Benutzer, Gruppen und Datenbanken angelegt
632 werden. Dieses geschieht im Administrationsmenü, das Sie unter
633 folgender URL finden:
635 `http://localhost/lx-erp/admin.pl'
637 Verwenden Sie zur Anmeldung das Password, dass Sie in der Datei
638 `config/lx_office.conf' eingetragen haben.
643 Lx-Office verwendet eine Datenbank zum Speichern all seiner
644 Informationen wie Kundendaten, Artikel, Angebote, Rechnungen etc. Um
645 mit Lx-Office arbeiten zu können, muss eine Person einen
646 Benutzeraccount haben. Jedem Benutzeraccount wiederum wird genau eine
647 Datenbank zugewiesen, mit der dieser Benutzer arbeiten kann. Es ist
648 möglich und normal, dass mehreren Benutzern die selbe Datenbank
649 zugewiesen wird, sodass sie alle mit den selben Daten arbeiten können.
651 Die Basisdaten der Benutzer, die in der Administration eingegeben
652 werden können, werden in einer zweiten Datenbank gespeichert, der
653 bereits erwähnten Authentifizierungsdatenbank. Diese ist also den
654 Produktivdaten enthaltenden Datenbanken vorgeschaltet. Pro
655 Lx-Office-Installation gibt es nur eine Authentifizierungsdatenbank,
656 aber beliebig viele Datenbanken mit Firmendaten.
658 Lx-Office kann seinen Benutzern Zugriff auf bestimmte
659 Funktionsbereiche erlauben oder verbieten. Wird der Zugriff nicht
660 gestattet, so werden der entsprechenden Menüpunkte auch nicht
661 angezeigt. Diese Rechte werden ebenfalls in der
662 Authentifizierungsdatenbank gespeichert.
664 Um Rechte verteilen zu können, verwendet Lx-Office ein
665 Gruppen-Prinzip. Einer Gruppe kann der Zugriff auf bestimmte Bereiche
666 erlaubt werden. Ein Benutzer wiederum kann Mitglied in einer oder
667 mehrerer Gruppen sein. Der Benutzer hat Zugriff auf alle diejenigen
668 Funktionen, die mindestens einer Gruppe erlaubt sind, in der der
669 Benutzer Mitglied ist.
671 Die allgemeine Reihenfolge, in der Datenbanken, Gruppen und Benutzer
672 angelegt werden sollten, lautet:
680 4. Benutzer den Gruppen zuordnen
682 8.2 Datenbanken anlegen
683 =======================
685 Zuerst muss eine Datenbank angelegt werden. Verwenden Sie für den
686 Datenbankzugriff den vorhin angelegten Benutzer (in unseren Beispielen
687 ist dies `lxoffice').
689 Wenn Sie für die Lx-Office-Installation nicht den europäischen
690 Schriftsatz ISO-8859-15 sondern UTF-8 (Unicode) benutzen wollen, so
691 müssen Sie vor dem Anlegen der Datenbank in der Datei
692 `config/lx_office.conf' die Variable `dbcharset' im Abschnitt `system'
693 auf den Wert `UTF-8' setzen. Zusätzlich muss beim Anlegen der Datenbank
694 `UTF-8 Unicode' als Schriftsatz ausgewählt werden.
696 Bitte beachten Sie, dass alle Datenbanken den selben Zeichensatz
697 verwenden müssen, da diese Einstellungen momentan global in Lx-Office
698 vorgenommen wird und nicht nach Datenbank unterschieden werden kann.
699 Auch die Authentifizierungsdatenbank muss mit diesem Zeichensatz
700 angelegt worden sein.
705 Eine Gruppe wird in der Gruppenverwaltung angelegt. Ihr muss ein Name
706 gegeben werden, eine Beschreibung ist hingegen optional. Nach dem
707 Anlegen können Sie die verschiedenen Bereiche wählen, auf die
708 Mitglieder dieser Gruppe Zugriff haben sollen.
710 Benutzergruppen sind unabhängig von Datenbanken, da sie in der
711 Authentifizierungsdatenbank gespeichert werden. Sie gelten für alle
712 Datenbanken, die in dieser Installation verwaltet werden.
717 Beim Anlegen von Benutzern werden für viele Parameter
718 Standardeinstellungen vorgenommen, die den Gepflogenheiten des
719 deutschen Raumes entsprechen.
721 Zwingend anzugeben sind der Loginname sowie die komplette
722 Datenbankkonfiguration. Wenn die Passwortauthentifizierung über die
723 Datenbank eingestellt ist, so kann hier auch das Benutzerpasswort
724 gesetzt bzw. geändert werden. Ist hingegen die LDAP-Authentifizierung
725 aktiv, so ist das Passwort-Feld deaktiviert.
727 In der Datenbankkonfiguration müssen die Zugriffsdaten einer der eben
728 angelegten Datenbanken eingetragen werden.
730 8.5 Gruppenmitgliedschaften verwalten
731 =====================================
733 Nach dem Anlegen von Benutzern und Gruppen müssen Benutzer den Gruppen
734 zugewiesen werden. Dazu gibt es zwei Möglichkeiten:
736 1. In der Gruppenverwaltung wählt man eine Gruppe aus. Im folgenden
737 Dialog kann man dann einzeln die Benutzer der Gruppe hinzufügen.
739 2. In der Gruppenverwaltung wählt man das Tool zur Verwaltung der
740 Gruppenmitgliedschaft. Hier wird eine Matrix angezeigt, die alle im
741 System angelegten Gruppen und Benutzer enthält. Durch Setzen der
742 Häkchen wird der Benutzer in der ausgewählten Zeile der Gruppe in
743 der ausgewählten Spalte hinzugefügt.
745 8.6 Migration alter Installationen
746 ==================================
748 Wenn Lx-Office 2.6.2 über eine ältere Version installiert wird, in der
749 die Benutzerdaten noch im Dateisystem im Verzeichnis `users' verwaltet
750 wurden, so bietet Lx-Office die Möglichkeit, diese Benutzerdaten
751 automatisch in die Authentifizierungsdatenbank zu übernehmen. Dies
752 geschieht, wenn man sich nach dem Update der Installation das erste Mal
753 im Administrationsbereich anmeldet. Findet Lx-Office die Datei
754 `users/members', so wird der Migrationsprozess gestartet.
756 Der Migrationsprozess ist nahezu vollautomatisch. Alle Benutzerdaten
757 können übernommen werden. Nach den Benutzerdaten bietet Lx-Office noch
758 die Möglichkeit an, dass automatisch eine Benutzergruppe angelegt wird.
759 Dieser Gruppe wird Zugriff auf alle Funktionen von Lx-Office gewährt.
760 Alle migrierten Benutzern werden Mitglied in dieser Gruppe. Damit wird
761 das Verhalten von Lx-Office bis Version 2.4.3 inklusive
762 wiederhergestellt, und die Benutzer können sich sofort wieder anmelden
763 und mit dem System arbeiten.
765 9 Drucken mit Lx-Office
766 ***********************
768 Das Drucksystem von Lx-Office benutzt von Haus aus LaTeX Vorlagen. Um
769 drucken zu können, braucht der Server ein geeignetes LaTeX System. Am
770 einfachsten ist dazu eine `texlive' Installation. Unter Debianoiden
771 Betriebssystemen sind das die Pakete:
773 `texlive-latex-base texlive-latex-extra texlive-fonts-recommended'
775 Diese hinteren beiden enthalten Bibliotheken und Schriftarten die
776 von den Standardvorlagen verwendet werden.
780 In den allermeisten Installationen sollte drucken jetzt schon
781 funktionieren. Sollte ein Fehler auftreten wirft TeX sehr lange
782 Fehlerbeschreibungen, der eigentliche Fehler ist immer die erste Zeite
783 die mit einem Ausrufezeichen anfängt. Häufig auftretende Fehler sind
786 * ! LaTeX Error: File `eurosym.sty' not found. Die entsprechende
787 LaTeX-Bibliothek wurde nicht gefunden. Das tritt vor allem bei
788 Vorlagen aus der Community auf. Installieren Sie die
789 entsprechenden Pakete.
791 * ! Package inputenc Error: Unicode char \u8:æ¡
\9c not set up for use
792 with LaTeX. Dieser Fehler tritt auf, wenn sie versuchen mit einer
793 Standardinstallation exotische utf8 Zeichen zu drucken. TeXLive
794 unterstützt von Haus nur romanische Schriften und muss mit
795 diversen Tricks dazu gebracht werden andere Zeichen zu
796 akzeptieren. Adere TeX Systeme wie XeTeX schaffen hier Abhilfe.
798 Wird garkein Fehler angezeigt sondern nur der Name des Templates,
799 heißt das normalerweise, dass das LaTeX Binary nicht gefunden wurde.
800 Prüfen Sie den Namen in der Konfiguration (Standard: `pdflatex'), und
801 stellen Sie sicher, dass pdflatex (oder das von Ihnen verwendete
802 System) vom Webserver ausgeführt werden darf.
804 10 OpenDocument-Vorlagen
805 ************************
807 Lx-Office unterstützt die Verwendung von Vorlagen im
808 OpenDocument-Format, wie es OpenOffice.org ab Version 2 erzeugt.
809 Lx-Office kann dabei sowohl neue OpenDocument-Dokumente als auch aus
810 diesen direkt PDF-Dateien erzeugen. Um die Unterstützung von
811 OpenDocument-Vorlagen zu aktivieren muss in der Datei
812 `config/lx_office.conf' die Variable `opendocument' im Abschnitt
813 `print_templates' auf `1' stehen. Dieses ist die Standardeinstellung.
815 Weiterhin muss in der Datei `config/lx_office.conf' die Variable
816 `dbcharset' im Abschnitt `system' auf die Zeichenkodierung gesetzt
817 werden, die auch bei der Speicherung der Daten in der Datenbank
818 verwendet wird. Diese ist in den meisten Fällen "UTF-8".
820 Während die Erzeugung von reinen OpenDocument-Dateien keinerlei
821 weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF
822 OpenOffice.org benötigt. Soll dieses Feature genutzt werden, so muss
823 neben OpenOffice.org ab Version 2 auch der "X virtual frame buffer"
824 (xvfb) installiert werden. Bei Debian ist er im Paket "xvfb"
825 enthalten. Andere Distributionen enthalten ihn in anderen Paketen.
827 Nach der Installation müssen in der Datei `config/lx_config.conf'
828 zwei weitere Variablen angepasst werden: `openofficeorg_writer' muss
829 den vollständigen Pfad zur OpenOffice.org Writer-Anwendung enthalten.
830 `xvfb' muss den Pfad zum "X virtual frame buffer" enthalten. Beide
831 stehen im Abschnitt `applications'.
833 Zusätzlich gibt es zwei verschiedene Arten, wie Lx-Office mit
834 OpenOffice kommuniziert. Die erste Variante, die benutzt wird, wenn die
835 Variable `$openofficeorg_daemon' gesetzt ist, startet ein OpenOffice,
836 das auch nach der Umwandlung des Dokumentes gestartet bleibt. Bei
837 weiteren Umwandlungen wird dann diese laufende Instanz benutzt. Der
838 Vorteil ist, dass die Zeit zur Umwandlung deutlich reduziert wird, weil
839 nicht für jedes Dokument ein OpenOffice gestartet werden muss. Der
840 Nachteil ist, dass diese Methode Python und die Python-UNO-Bindings
841 benötigt, die Bestandteil von OpenOffice 2 sind.
843 Ist `$openofficeorg_daemon' nicht gesetzt, so wird für jedes
844 Dokument OpenOffice neu gestartet und die Konvertierung mit Hilfe eines
845 Makros durchgeführt. Dieses Makro muss in der Dokumentenvorlage
846 enthalten sein und "Standard.Conversion.ConvertSelfToPDF()" heißen. Die
847 Beispielvorlage `templates/German-invoice.odt' enthält ein solches
848 Makro, das in jeder anderen Dokumentenvorlage ebenfalls enthalten sein
851 Als letztes muss herausgefunden werden, welchen Namen OpenOffice.org
852 Writer dem Verzeichnis mit den Benutzereinstellungen gibt. Unter Debian
853 ist dies momentan `~/.openoffice.org2'. Sollte der Name bei Ihrer
854 OpenOffice.org-Installation anders sein, so muss das Verzeichnis
855 `users/.openoffice.org2' entsprechend umbenannt werden. Ist der Name
856 z.B. einfach nur `.openoffice', so wäre folgender Befehl auszuführen:
858 `mv users/.openoffice.org2 users/.openoffice'
860 Dieses Verzeichnis, wie auch das komplette `users'-Verzeichnis, muss
861 vom Webserver beschreibbar sein. Dieses wurde bereits erledigt (*note
862 Manuelle Installation des Programmpaketes::), kann aber erneut überprüft
863 werden, wenn die Konvertierung nach PDF fehlschlägt.
865 11 Lx-Office ERP verwenden
866 **************************
868 Nach erfolgreicher Installation ist der Loginbildschirm unter folgender
871 `http://localhost/lx-office-erp/login.pl'
873 Die Administrationsseite erreichen Sie unter:
875 `http://localhost/lx-office-erp/admin.pl'