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