a6a05f129003c044a9496a7e43c34e4c79b219b1
[kivitendo-erp.git] / doc / INSTALL.html
1 <html lang="en">
2 <head>
3 <title>Lx-Office Installationsanleitung</title>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5 <meta name="description" content="Lx-Office Installationsanleitung">
6 <meta name="generator" content="makeinfo 4.13">
7 <link title="Top" rel="top" href="#Top">
8 <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
9 <meta http-equiv="Content-Style-Type" content="text/css">
10 <style type="text/css"><!--
11   pre.display { font-family:inherit }
12   pre.format  { font-family:inherit }
13   pre.smalldisplay { font-family:inherit; font-size:smaller }
14   pre.smallformat  { font-family:inherit; font-size:smaller }
15   pre.smallexample { font-size:smaller }
16   pre.smalllisp    { font-size:smaller }
17   span.sc    { font-variant:small-caps }
18   span.roman { font-family:serif; font-weight:normal; } 
19   span.sansserif { font-family:sans-serif; font-weight:normal; } 
20 --></style>
21 </head>
22 <body>
23 <h1 class="settitle">Lx-Office Installationsanleitung</h1>
24    <div class="contents">
25 <h2>Inhaltsverzeichnis</h2>
26 <ul>
27 <li><a name="toc_Top" href="#Top">Inhalt der Anleitung</a>
28 <li><a name="toc_Aktuelle-Hinweise" href="#Aktuelle-Hinweise">1 Aktuelle Hinweise</a>
29 <li><a name="toc_Ben_00c3_00b6tigte-Software-und-Pakete" href="#Ben_00c3_00b6tigte-Software-und-Pakete">2 Benötigte Software und Pakete</a>
30 <ul>
31 <li><a href="#Betriebssystem">2.1 Betriebssystem</a>
32 <li><a href="#Pakete">2.2 Pakete</a>
33 </li></ul>
34 <li><a name="toc_Manuelle-Installation-des-Programmpaketes" href="#Manuelle-Installation-des-Programmpaketes">3 Manuelle Installation des Programmpaketes</a>
35 <li><a name="toc_Anpassung-der-PostgreSQL_002dKonfiguration" href="#Anpassung-der-PostgreSQL_002dKonfiguration">4 Anpassung der PostgreSQL-Konfiguration</a>
36 <ul>
37 <li><a href="#Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8">4.1 Zeichensätze/die Verwendung von UTF-8</a>
38 <li><a href="#_00c3_0084nderungen-an-Konfigurationsdateien">4.2 Änderungen an Konfigurationsdateien</a>
39 <li><a href="#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">4.3 Erweiterung für servergespeicherte Prozeduren</a>
40 <li><a href="#Datenbankbenutzer-anlegen">4.4 Datenbankbenutzer anlegen</a>
41 </li></ul>
42 <li><a name="toc_Apache_002dKonfiguration" href="#Apache_002dKonfiguration">5 Apache-Konfiguration</a>
43 <li><a name="toc_Der-Task_002dServer" href="#Der-Task_002dServer">6 Der Task-Server</a>
44 <ul>
45 <li><a href="#Konfiguration-des-Task_002dServers">6.1 Verfügbare und notwendige Konfigurationsoptionen</a>
46 <li><a href="#Einbinden-in-den-Boot_002dProzess">6.2 Automatisches Starten des Task-Servers beim Booten</a>
47 <ul>
48 <li><a href="#Einbinden-in-den-Boot_002dProzess">6.2.1 SystemV-basierende Systeme (z.B. Debian, OpenSuSE, Fedora Core)</a>
49 <li><a href="#Einbinden-in-den-Boot_002dProzess">6.2.2 Upstart-basierende Systeme (z.B. Ubuntu)</a>
50 </li></ul>
51 <li><a href="#Prozesskontrolle">6.3 Wie der Task-Server gestartet und beendet wird</a>
52 </li></ul>
53 <li><a name="toc_Benutzerauthentifizierung-und-Administratorpasswort" href="#Benutzerauthentifizierung-und-Administratorpasswort">7 Benutzerauthentifizierung und Administratorpasswort</a>
54 <ul>
55 <li><a href="#Grundlagen-zur-Benutzerauthentifizierung">7.1 Grundlagen zur Benutzerauthentifizierung</a>
56 <li><a href="#Administratorpasswort">7.2 Administratorpasswort</a>
57 <li><a href="#Authentifizierungsdatenbank">7.3 Authentifizierungsdatenbank</a>
58 <li><a href="#Passwort_00c3_00bcberpr_00c3_00bcfung">7.4 Passwortüberprüfung</a>
59 <li><a href="#Name-des-Session_002dCookies">7.5 Name des Session-Cookies</a>
60 <li><a href="#Anlegen-der-Authentifizierungsdatenbank">7.6 Anlegen der Authentifizierungsdatenbank</a>
61 </li></ul>
62 <li><a name="toc_Benutzer_002d-und-Gruppenverwaltung" href="#Benutzer_002d-und-Gruppenverwaltung">8 Benutzer- und Gruppenverwaltung</a>
63 <ul>
64 <li><a href="#Zusammenh_00c3_00a4nge">8.1 Zusammenhänge</a>
65 <li><a href="#Datenbanken-anlegen">8.2 Datenbanken anlegen</a>
66 <li><a href="#Gruppen-anlegen">8.3 Gruppen anlegen</a>
67 <li><a href="#Benutzer-anlegen">8.4 Benutzer anlegen</a>
68 <li><a href="#Gruppenmitgliedschaften-verwalten">8.5 Gruppenmitgliedschaften verwalten</a>
69 <li><a href="#Migration-alter-Installationen">8.6 Migration alter Installationen</a>
70 </li></ul>
71 <li><a name="toc_Drucken-mit-Lx_002dOffice" href="#Drucken-mit-Lx_002dOffice">9 Drucken mit Lx-Office</a>
72 <li><a name="toc_OpenDocument_002dVorlagen" href="#OpenDocument_002dVorlagen">10 OpenDocument-Vorlagen</a>
73 <li><a name="toc_Lx_002dOffice-ERP-verwenden" href="#Lx_002dOffice-ERP-verwenden">11 Lx-Office ERP verwenden</a>
74 </li></ul>
75 </div>
76
77
78
79 <div class="node">
80 <a name="Top"></a>
81 <p><hr>
82 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Aktuelle-Hinweise">Aktuelle Hinweise</a>,
83 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#dir">(dir)</a>
84
85 </div>
86
87 <h2 class="unnumbered">Inhalt der Anleitung</h2>
88
89 <ul class="menu">
90 <li><a accesskey="1" href="#Aktuelle-Hinweise">Aktuelle Hinweise</a>:  Andere Informationsquellen als diese Anleitung
91 <li><a accesskey="2" href="#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>:  Vorraussetzungen zum Betrieb von Lx-Office
92 <li><a accesskey="3" href="#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>:  Installationsort, Berechtigungen
93 <li><a accesskey="4" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>:  Verschiedene Aspekte der Datenbankkonfiguration
94 <li><a accesskey="5" href="#Apache_002dKonfiguration">Apache-Konfiguration</a>:  Einrichtung eines Aliases und Optionen für das Ausführen von CGI-Scripten
95 <li><a accesskey="6" href="#Der-Task_002dServer">Der Task-Server</a>:  Konfiguration und Einrichtung des Task-Server-Dämonen
96 <li><a accesskey="7" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>:  Einrichtung der Authentifizierungsdatenbank und der Passwortüberprüfung
97 <li><a accesskey="8" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>:  Einrichten von Benutzern, Gruppen und Datenbanken
98 <li><a accesskey="9" href="#Drucken-mit-Lx_002dOffice">Drucken mit Lx-Office</a>:  Voraussetzungen, Einrichtung und Fehlerdiagnose
99 <li><a href="#OpenDocument_002dVorlagen">OpenDocument-Vorlagen</a>:  Wichtige Hinweise zum Erstellen und zur Verwendung von Dokumentenvorlagen
100 <li><a href="#Lx_002dOffice-ERP-verwenden">Lx-Office ERP verwenden</a>:  Die URLs zur Anmeldung und Administration
101 </ul>
102
103 <!--  -->
104 <div class="node">
105 <a name="Aktuelle-Hinweise"></a>
106 <p><hr>
107 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>,
108 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Top">Top</a>,
109 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
110
111 </div>
112
113 <h2 class="chapter">1 Aktuelle Hinweise</h2>
114
115 <p>Aktuelle Installations- und Konfigurationshinweise gibt es:
116
117      <ul>
118 <li>auf der Lx-Office Homepage unter <a href="http://lx-office.org/index.php?id=dokumentation">http://lx-office.org/index.php?id=dokumentation</a>
119
120      <li>im Lx-Office-Wiki unter Dokumentation (<a href="http://wiki.lx-office.org/index.php/Lx-Office_ERP">http://wiki.lx-office.org/index.php/Lx-Office_ERP</a>)
121
122      <li>im Lx-Office-Forum: <a href="http://www.lx-office.org/forum/">http://www.lx-office.org/forum/</a>
123 </ul>
124
125 <!--  -->
126 <div class="node">
127 <a name="Ben%c3%b6tigte-Software-und-Pakete"></a>
128 <a name="Ben_00c3_00b6tigte-Software-und-Pakete"></a>
129 <p><hr>
130 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>,
131 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Aktuelle-Hinweise">Aktuelle Hinweise</a>,
132 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
133
134 </div>
135
136 <h2 class="chapter">2 Benötigte Software und Pakete</h2>
137
138 <ul class="menu">
139 <li><a accesskey="1" href="#Betriebssystem">Betriebssystem</a>:  Unterstützte Betriebsysteme und Hinweise für ältere Systeme
140 <li><a accesskey="2" href="#Pakete">Pakete</a>:  Benötigte Software und Perlpakete sowie deren Quellen
141 </ul>
142
143 <div class="node">
144 <a name="Betriebssystem"></a>
145 <p><hr>
146 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Pakete">Pakete</a>,
147 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>
148
149 </div>
150
151 <h3 class="section">2.1 Betriebssystem</h3>
152
153 <p>Lx-Office ist für Linux konzipiert, und sollte auf jedem unixoiden
154 Betriebssystem zum Laufen zu kriegen sein. Getestet ist diese Version im
155 speziellen auf Debian und Ubuntu, grundsätzlich wurde bei der Auswahl der
156 Pakete aber darauf Rücksicht genommen, dass es ohne große Probleme auf den
157 derzeit aktuellen verbreiteten Distributionen läuft.
158
159    <p>Anfang 2011 sind das folgende Systeme:
160
161      <ul>
162 <li>Ubuntu 8.04 LTS Hardy Heron
163 <li>Ubuntu 9.10 Karmic Koala
164 <li>Ubuntu 10.04 Lucid Lynx
165 <li>Ubuntu 10.10 Maverick Meerkat
166 <li>Debian 5.0 Lenny
167 <li>Debian 6.0 Squeeze
168 <li>openSUSE 11.2
169 <li>openSUSE 11.3
170 <li>SuSE Linux Enterprice Server 11
171 <li>Fedora 13
172 <li>Fedora 14
173 </ul>
174
175    <p>Für die debianoiden Betriebssysteme existiert ein .deb, das deutlich einfacher
176 zu installieren ist.
177
178    <p>Ubuntu 8.04 LTS hat zusätzlich die Schwierigkeit, dass die Module im Archiv
179 recht alt sind, und das viele der benötigten Module nicht einfach zu
180 installieren sind. Dafür sollte es kurz nach dem Release ein eigenes .deb
181 geben.
182
183    <p>Alternativ dazu kann die normale Installation durchgeführt werden
184 (see <a href="#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>), wenn vorher ein
185 Kompatibilitätspaket installiert wird, das die fehlenden Pakete bereitstellt. 
186 Das Paket ist auf <a href="https://sourceforge.net/projects/lx-office/files/Lx-Office%20ERP/2.6.2/">Sourceforge</a> unter dem Namen <code>lx-erp-perl-libs-compat-v2.tar.gz</code> hinterlegt.
187
188    <p>Zur Installation das Paket in das entpackte Lx-Office Verzeichnis entpacken:
189
190    <p><code>tar xzf lx-erp-perl-libs-compat-v2.tar.gz /path/to/lx-office/</code>
191
192    <p>Zusätzlich müssen dann noch die folgenden Pakete installiert weerden
193
194    <p><code>libbit-vector-perl libsub-exporter-perl libclone-perl libclass-factory-util-perl</code>
195
196    <p>Danach sollte der Installationscheck (see <a href="#Pakete">Pakete</a>) die enthaltenen Pakete erkennen.
197
198 <div class="node">
199 <a name="Pakete"></a>
200 <p><hr>
201 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Betriebssystem">Betriebssystem</a>,
202 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>
203
204 </div>
205
206 <h3 class="section">2.2 Pakete</h3>
207
208 <p>Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache)
209 und ein Datenbankserver (PostgreSQL, mindestens v8.2) benötigt.
210
211    <p>Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht Bestandteil
212 einer Standard-Perl-Installation sind:
213
214      <ul>
215 <li>parent
216 <li>Archive::Zip
217 <li>Class::Accessor
218 <li>CGI::Ajax
219 <li>Config::Std
220 <li>DateTime
221 <li>DBI
222 <li>DBD::Pg
223 <li>Email::Address
224 <li>List::MoreUtils
225 <li>Params::Validate
226 <li>PDF::API2
227 <li>Rose::Object
228 <li>Rose::DB
229 <li>Rose::DB::Object
230 <li>Template
231 <li>Text::CSV_XS
232 <li>Text::Iconv
233 <li>URI
234 <li>XML::Writer
235 <li>YAML
236 </ul>
237
238    <p>Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen, <code>URI</code>
239 und <code>XML::Writer</code> sind notwendig. Ohne startet Lx-Office nicht.
240
241    <p>Gegenüber Version 2.6.1 sind <code>parent</code>, <code>DateTime</code>,
242 <code>Rose::Object</code>, <code>Rose::DB</code> und <code>Rose::DB::Object</code> neu
243 hinzugekommen. <code>IO::Wrap</code> wurde entfernt.
244
245    <p><code>Email::Address</code> und <code>List::MoreUtils</code> sind schon länger feste
246 Abhängigkeiten, wurden aber bisher mit Lx-Office mitgeliefert.  Beide sind auch
247 in 2.6.1 weiterhin mit ausgeliefert, wurden in einer zukünftigen Version aber
248 aus dem Paket entfernt werden. Es wird empfohlen diese Module zusammen mit den
249 anderen als Bibliotheken zu installieren.
250
251    <p><code>CGI::Ajax</code> ist nach wie vor in einer modifizierten Version mitgeliefert
252 und braucht nicht nachinstalliert werden.
253
254    <p>Die zu installierenden Pakete können in den verschiedenen Distributionen unterschiedlich heißen.
255
256    <p>Für Debian oder Ubuntu benötigen Sie diese Pakete:
257
258    <p><code>apache2 postgresql libparent-perl libarchive-zip-perl libclass-accessor-perl libdatetime-perl libdbi-perl libdbd-pg-perl libpg-perl libemail-address-perl liblist-moreutils-perl libpdf-api2-perl librose-object-perl librose-db-perl librose-db-object-perl libtemplate-perl libtext-csv-xs-perl libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl libconfig-std-perl libparams-validate-perl</code>
259
260    <p>Für Fedora Core benötigen Sie diese Pakete:
261
262    <p><code>httpd postgresql-server perl-parent perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-Email-Address perl-List-MoreUtils perl-PDF-API2 perl-Rose-Object perl-Rose-DB perl-Rose-DB-Object perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML</code>
263
264    <p>Für OpenSuSE benötigen Sie diese Pakete:
265
266    <p><code>apache2 postgresql-server perl-Archive-Zip perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-List-MoreUtils perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML</code>
267
268    <p>Bei openSuSE 11 ist <code>parent</code> bereits enthalten, und braucht nicht nachinstalliert werden. Die <code>Rose::*</code> Pakete sind derzeit nicht für SuSE gepackt, und müssen anderweitig nachinstalliert werden.
269
270    <p>Lx-Office enthält ein Script, mit dem überprüft werden kann, ob alle
271 benötigten Perl-Module installiert sind. Der Aufruf lautet wie folgt:
272
273    <p><code>./scripts/installation_check.pl</code>
274
275 <!--  -->
276 <div class="node">
277 <a name="Manuelle-Installation-des-Programmpaketes"></a>
278 <p><hr>
279 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>,
280 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>,
281 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
282
283 </div>
284
285 <h2 class="chapter">3 Manuelle Installation des Programmpaketes</h2>
286
287 <p>Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.2.tgz) wird im
288 Dokumentenverzeichnis des Webservers (z.B. <code>/var/www/html/</code>,
289 <code>/srv/www/htdocs</code> oder <code>/var/www/</code>) entpackt:
290
291    <p><code>cd /var/www
292 <br>
293 tar xvzf lxoffice-erp-2.6.2.tgz</code>
294
295    <p>Verändern Sie evtl. noch den Namen des Verzeichnisses mit
296
297    <p><code>mv lxoffice-erp/ lx-erp/</code>
298
299    <p>Alternativ können Sie auch einen Alias in der Webserverkonfiguration
300 benutzen, um auf das tatsächliche Installationsverzeichnis zu
301 verweisen.
302
303    <p>Die Verzeichnisse <code>users</code>, <code>spool</code> und <code>webdav</code> müssen
304 für den Benutzer beschreibbar sein, unter dem der Webserver läuft. Die
305 restlichen Dateien müssen für diesen Benutzer lesbar sein. Der
306 Benutzername ist bei verschiedenen Distributionen unterschiedlich
307 (z.B. bei Debian/Ubuntu <code>www-data</code>, bei Fedora core <code>apache</code>
308 oder bei OpenSuSE <code>wwwrun</code>).
309
310    <p>Der folgende Befehl ändert den Besitzer für die oben genannten
311 Verzeichnisse auf einem Debian/Ubuntu-System:
312
313    <p><code>chown -R www-data lx-office-erp/users lx-office-erp/spool lx-office-erp/webdav</code>
314
315    <p>Weiterhin muss der Webserver-Benutzer im Verzeichnis <code>templates</code> Verzeichnisse für
316 jeden neuen Benutzer, der in lx-office angelegt wird, anlegen dürfen:
317
318    <p><code>chgrp www-data lx-office-erp/templates; chmod g+w lx-office-erp/templates</code>
319
320 <!--  -->
321 <div class="node">
322 <a name="Anpassung-der-PostgreSQL-Konfiguration"></a>
323 <a name="Anpassung-der-PostgreSQL_002dKonfiguration"></a>
324 <p><hr>
325 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Apache_002dKonfiguration">Apache-Konfiguration</a>,
326 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>,
327 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
328
329 </div>
330
331 <h2 class="chapter">4 Anpassung der PostgreSQL-Konfiguration</h2>
332
333 <p>PostgreSQL muss auf verschiedene Weisen angepasst werden.
334
335 <ul class="menu">
336 <li><a accesskey="1" href="#Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8">Zeichensätze/die Verwendung von UTF-8</a>:  Was bei der Verwendung von UTF-8 zu beachten ist
337 <li><a accesskey="2" href="#g_t_00c3_0084nderungen-an-Konfigurationsdateien">Änderungen an Konfigurationsdateien</a>:  Anpassungen für Anmeldung am Server und Featureunterstützung
338 <li><a accesskey="3" href="#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">Erweiterung für servergespeicherte Prozeduren</a>:  Lx-Office benutzt servergespeicherte Prozeduren
339 <li><a accesskey="4" href="#Datenbankbenutzer-anlegen">Datenbankbenutzer anlegen</a>:  Um den Zugriff besser zu reglementieren
340 </ul>
341
342 <div class="node">
343 <a name="Zeichens%c3%a4tze%2fdie-Verwendung-von-UTF-8"></a>
344 <a name="Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8"></a>
345 <p><hr>
346 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#g_t_00c3_0084nderungen-an-Konfigurationsdateien">Änderungen an Konfigurationsdateien</a>,
347 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
348
349 </div>
350
351 <h3 class="section">4.1 Zeichensätze/die Verwendung von UTF-8</h3>
352
353 <p>Lx-Office kann komplett mit UTF-8 als Zeichensatz verwendet
354 werden. Dabei gibt es zwei Punkte zu beachten: PostgreSQL muss in
355 Version 8.0 oder neuer benutzt werden, und der
356 PostgreSQL-Datenbankcluster muss ebenfalls mit UTF-8 als Locale
357 angelegt worden sein.
358
359    <p>Dieses ist kann überprüft werden: ist das Encoding der Datenbank
360 &ldquo;template1&rdquo; &ldquo;UTF8&rdquo;, so kann auch Lx-Office mit UTF-8 betrieben
361 werden. Andernfalls ist es notwendig, einen neuen Datenbankcluster mit
362 UTF-8-Encoding anzulegen und diesen zu verwenden. Unter Debian und
363 Ubuntu kann dies z.B. mit dem folgenden Befehl getan werden:
364
365    <p><code>pg_createcluster --locale=de_DE.UTF-8 --encoding=UTF-8 8.2 clustername</code>
366
367    <p>Die Datenbankversionsnummer muss an die tatsächlich verwendete
368 Versionsnummer angepasst werden.
369
370    <p>Unter anderen Distributionen gibt es ähnliche Methoden.
371
372    <p>Wurde PostgreSQL nicht mit UTF-8 als Encoding initialisiert und ist
373 ein Neuanlegen eines weiteren Clusters nicht möglich, so kann
374 Lx-Office mit ISO-8859-15 als Encoding betrieben werden.
375
376    <p>Das Encoding einer Datenbank kann in <code>psql</code> mit <code>\l</code> geprüft werden.
377
378 <div class="node">
379 <a name="%c3%84nderungen-an-Konfigurationsdateien"></a>
380 <a name="g_t_00c3_0084nderungen-an-Konfigurationsdateien"></a>
381 <p><hr>
382 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">Erweiterung für servergespeicherte Prozeduren</a>,
383 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8">Zeichensätze/die Verwendung von UTF-8</a>,
384 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
385
386 </div>
387
388 <h3 class="section">4.2 Änderungen an Konfigurationsdateien</h3>
389
390 <p>In der Datei <code>postgresql.conf</code>, die je nach Distribution in
391 verschiedenen Verzeichnissen liegen kann
392 (z.B. <code>/var/lib/pgsql/data/</code> oder <code>/etc/postgresql/</code>, muss
393 sichergestellt werden, dass TCP/IP-Verbindungen aktiviert sind. Das
394 Verhalten wird über den Parameter <code>listen_address</code>
395 gesteuert. Laufen PostgreSQL und Lx-Office auf demselben Rechner, so
396 kann dort der Wert <code>localhost</code> verwendet werden. Andernfalls
397 müssen Datenbankverbindungen auch von anderen Rechnern aus zugelassen
398 werden, was mit dem Wert \<code>*</code> geschieht.
399
400    <p>In der Datei <code>pg_hba.conf</code>, die im gleichen Verzeichnis wie die
401 <code>postgresql.conf</code> zu finden sein sollte, müssen die
402 Berichtigungen für den Zugriff geändert werden. Hier gibt es mehrere
403 Möglichkeiten. Eine besteht darin, lokale Verbindungen immer
404 zuzulassen
405
406    <p><code>local all all trust
407 <br>
408 host all all 127.0.0.1 255.0.0.0 trust</code>
409
410    <p>Besser ist es, für eine bestimmte Datenbank Zugriff nur per Passwort
411 zuzulassen. Beispielsweise:
412
413    <p><code>local   all         lxoffice                                           password
414 <br>
415 host    all         lxoffice      127.0.0.1         255.255.255.255    password</code>
416
417 <!--  -->
418 <div class="node">
419 <a name="Erweiterung-f%c3%bcr-servergespeicherte-Prozeduren"></a>
420 <a name="Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren"></a>
421 <p><hr>
422 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Datenbankbenutzer-anlegen">Datenbankbenutzer anlegen</a>,
423 voriges:&nbsp;<a rel="previous" accesskey="p" href="#g_t_00c3_0084nderungen-an-Konfigurationsdateien">Änderungen an Konfigurationsdateien</a>,
424 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
425
426 </div>
427
428 <h3 class="section">4.3 Erweiterung für servergespeicherte Prozeduren</h3>
429
430 <p>In der Datenbank <code>template1</code> muss die Unterstützung für servergespeicherte
431 Prozeduren eingerichet werden. Melden Sie sich dafür als Benutzer &ldquo;postgres&rdquo;
432 an der Datenbank an, und führen Sie die folgenden Kommandos aus:
433
434    <p><code>create language 'plpgsql';</code>
435
436    <p>Achtung: In älteren Postgresversionen (vor 8.0) muss der Handler für die
437 Sprache manuell anlelegt werden, diese Versionen werden aber nicht mehr
438 offiziell von Lx-Office unterstützt. Dafür dann die folgenden Kommandos:
439
440    <p><code>create function plpgsql_call_handler () returns opaque as '/usr/lib/pgsql/plpgsql.so' language 'c';
441 <br>
442 create language 'plpgsql' handler plpgsql_call_handler lancompiler 'pl/pgsql';</code>
443
444    <p>Bitte beachten Sie, dass der Pfad zur Datei <code>plpgsql.so</code> von Distribution
445 zu Distribution verschiedlich sein kann. Bei Debian/Ubuntu befindet sie sich
446 unter <code>/usr/lib/postgresql/lib/plpgsql.so</code>.
447
448 <!--  -->
449 <div class="node">
450 <a name="Datenbankbenutzer-anlegen"></a>
451 <p><hr>
452 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">Erweiterung für servergespeicherte Prozeduren</a>,
453 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
454
455 </div>
456
457 <h3 class="section">4.4 Datenbankbenutzer anlegen</h3>
458
459 <p>Wenn Sie nicht den Datenbanksuperuser &ldquo;postgres&rdquo; zum Zugriff
460 benutzen wollen, so sollten Sie bei PostgreSQL einen neuen Benutzer
461 anlegen. Ein Beispiel, wie Sie einen neuen Benutzer anlegen können:
462
463    <p><code>su - postgres
464 <br>
465 createuser -d -P lxoffice</code>
466
467    <p>Wenn Sie später einen Datenbankzugriff konfigurieren, verändern Sie
468 den evtl. voreingestellten Benutzer &ldquo;postgres&rdquo; auf &ldquo;lxoffice&rdquo;
469 bzw. den hier gewählten Benutzernamen.
470
471 <!--  -->
472 <div class="node">
473 <a name="Apache-Konfiguration"></a>
474 <a name="Apache_002dKonfiguration"></a>
475 <p><hr>
476 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Der-Task_002dServer">Der Task-Server</a>,
477 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>,
478 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
479
480 </div>
481
482 <h2 class="chapter">5 Apache-Konfiguration</h2>
483
484 <p>Hinweis: Für einen deutlichen Performanceschub sorgt die Ausführung
485 mittels FCGI. Die Einrichtung wird ausführlich in der Datei
486 <code>INSTALL.fcgi</code> beschrieben.
487
488    <p>Der Zugriff auf das Programmverzeichnis muss in der Apache
489 Webserverkonfigurationsdatei <code>httpd.conf</code> eingestellt
490 werden. Fügen Sie den folgenden Abschnitt dieser Datei oder einer
491 anderen Datei hinzu, die beim Starten des Webservers eingelesen wird:
492
493    <p><code><br>
494 AddHandler cgi-script .pl
495 <br>
496 Alias /lx-erp/ /var/www/lx-erp/
497 <br>
498 &lt;Directory /var/www/lx-erp&gt;
499 <br>
500   Options ExecCGI Includes FollowSymlinks
501 <br>
502 &lt;/Directory&gt;
503 <br>
504 <br>
505 &lt;Directory /var/www/lx-erp/users&gt;
506 <br>
507   Order Deny,Allow
508 <br>
509   Deny from All
510 <br>
511 &lt;/Directory&gt;
512 <br>
513 </code>
514
515    <p>Ersetzen Sie dabei die Pfade durch diejenigen, in die Sie vorher das
516 Lx-Office-Archiv entpacket haben.
517
518    <p>Achtung: Vor den einzelnen Optionen muss bei einigen Distributionen ein
519 Plus &lsquo;<samp><span class="samp">+</span></samp>&rsquo; gesetzt werden.
520
521    <p>Auf einigen Webservern werden manchmal die Grafiken und Style-Sheets
522 nicht ausgeliefert. In solchen Fällen hat es oft geholfen, die
523 folgende Option in die Konfiguration aufzunehmen:
524
525    <p><code>EnableSendfile Off</code>
526
527 <!--  -->
528 <div class="node">
529 <a name="Der-Task-Server"></a>
530 <a name="Der-Task_002dServer"></a>
531 <p><hr>
532 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>,
533 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Apache_002dKonfiguration">Apache-Konfiguration</a>,
534 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
535
536 </div>
537
538 <h2 class="chapter">6 Der Task-Server</h2>
539
540 <p>Der Task-Server ist ein Prozess, der im Hintergrund läuft, in
541 regelmäßigen Abständen nach abzuarbeitenden Aufgaben sucht und diese
542 zu festgelegten Zeitpunkten abarbeitet (ähnlich wie Cron). Dieser
543 Prozess wird bisher nur für die Erzeugung der wiederkehrenden
544 Rechnungen benutzt, wird aber in Zukunft deutlich mehr Aufgaben
545 übertragen bekommen.
546
547 <ul class="menu">
548 <li><a accesskey="1" href="#Konfiguration-des-Task_002dServers">Konfiguration des Task-Servers</a>:  Verfügbare und notwendige Konfigurationsoptionen
549 <li><a accesskey="2" href="#Prozesskontrolle">Prozesskontrolle</a>:  Wie der Task-Server gestartet und beendet wird
550 <li><a accesskey="3" href="#Einbinden-in-den-Boot_002dProzess">Einbinden in den Boot-Prozess</a>:  Automatisches Starten des Task-Servers beim Booten
551 </ul>
552
553 <div class="node">
554 <a name="Konfiguration-des-Task-Servers"></a>
555 <a name="Konfiguration-des-Task_002dServers"></a>
556 <p><hr>
557 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Prozesskontrolle">Prozesskontrolle</a>,
558 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Der-Task_002dServer">Der Task-Server</a>
559
560 </div>
561
562 <h3 class="section">6.1 Verfügbare und notwendige Konfigurationsoptionen</h3>
563
564 <p>Die Konfiguration erfolgt über den Abschnitt <code>[task_server]</code> in
565 der Datei <samp><span class="file">config/lx_office.conf</span></samp>. Die dort verfügbaren Optionen
566 sind:
567
568      <ul>
569 <li><code>login</code>: gültiger Lx-Office-Benutzername, der benutzt wird, um die zu verwendende Datenbankverbindung auszulesen. Der Benutzer muss in der Administration angelegt werden. Diese Option muss angegeben werden. 
570 <li><code>run_as</code>: Wird der Server vom Systembenutzer <code>root</code> gestartet, so wechselt er auf den mit <code>run_as</code> angegebenen Systembenutzer. Der Systembenutzer muss dieselben Lese- und Schreibrechte haben, wie auch der Webserverbenutzer (siehe see <a href="#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>). Daher ist es sinnvoll, hier denselben Systembenutzer einzutragen, unter dem auch der Webserver läuft. 
571 <li><code>debug</code>: Schaltet Debug-Informationen an und aus. 
572 </ul>
573
574 <div class="node">
575 <a name="Einbinden-in-den-Boot-Prozess"></a>
576 <a name="Einbinden-in-den-Boot_002dProzess"></a>
577 <p><hr>
578 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Prozesskontrolle">Prozesskontrolle</a>,
579 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Der-Task_002dServer">Der Task-Server</a>
580
581 </div>
582
583 <h3 class="section">6.2 Automatisches Starten des Task-Servers beim Booten</h3>
584
585 <p>Der Task-Server verhält sich von seinen Optionen her wie ein reguläres
586 SystemV-kompatibles Boot-Script. Außerdem wechselt er beim Starten
587 automatisch in das Lx-Office-Installationsverzeichnis.
588
589    <p>Deshalb ist es möglich, ihn durch Setzen eines symbolischen Links aus
590 einem der Runlevel-Verzeichnisse heraus in den Boot-Prozess
591 einzubinden. Da das bei neueren Linux-Distributionen aber nicht
592 zwangsläufig funktioniert, werden auch Start-Scripte mitgeliefert, die
593 anstelle eines symbolischen Links verwendet werden können.
594
595 <h4 class="subsection">6.2.1 SystemV-basierende Systeme (z.B. Debian, OpenSuSE, Fedora Core)</h4>
596
597 <p>Kopieren Sie die Datei
598 <samp><span class="file">scripts/boot/system-v/lx-office-task-server</span></samp> nach
599 <samp><span class="file">/etc/init.d/lx-office-task-server</span></samp>. Passen Sie in der kopierten
600 Datei den Pfad zum Task-Server an (Zeile <code>DAEMON=....</code>). Binden
601 Sie das Script in den Boot-Prozess ein. Dies ist distributionsabhängig:
602
603      <ul>
604 <li>Debian-basierende Systeme:
605 <br>
606 <code>update-rc.d lx-office-task-server defaults
607 <br>
608 # Nur bei Debian Squeeze und neuer:
609 <br>
610 insserv lx-office-task-server</code>
611 <li>OpenSuSE und Fedora Core:
612 <br>
613 <code>chkconfig --add lx-office-task-server</code>
614 </ul>
615
616    <p>Danach kann der Task-Server mit dem folgenden Befehl gestartet werden:
617 <code>/etc/init.d/lx-office-task-server start</code>
618
619 <h4 class="subsection">6.2.2 Upstart-basierende Systeme (z.B. Ubuntu)</h4>
620
621 <p>Kopieren Sie die Datei
622 <samp><span class="file">scripts/boot/upstart/lx-office-task-server.conf</span></samp> nach
623 <samp><span class="file">/etc/init/lx-office-task-server.conf</span></samp>. Passen Sie in der kopierten
624 Datei den Pfad zum Task-Server an (Zeile <code>exec ....</code>).
625
626    <p>Danach kann der Task-Server mit dem folgenden Befehl gestartet werden:
627 <code>service lx-office-task-server start</code>
628
629 <div class="node">
630 <a name="Prozesskontrolle"></a>
631 <p><hr>
632 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Einbinden-in-den-Boot_002dProzess">Einbinden in den Boot-Prozess</a>,
633 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Konfiguration-des-Task_002dServers">Konfiguration des Task-Servers</a>,
634 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Der-Task_002dServer">Der Task-Server</a>
635
636 </div>
637
638 <h3 class="section">6.3 Wie der Task-Server gestartet und beendet wird</h3>
639
640 <p>Der Task-Server wird wie folgt kontrolliert:
641
642    <p><code>./scripts/task_server.pl Befehl</code>
643
644    <p><code>Befehl</code> ist dabei eine der folgenden Optionen:
645
646      <ul>
647 <li><code>start</code> startet eine neue Instanz des Task-Servers. Die Prozess-ID wird innerhalb des <samp><span class="file">users</span></samp>-Verzeichnisses abgelegt. 
648 <li><code>stop</code> beendet einen laufenden Task-Server. 
649 <li><code>restart</code> beendet und startet ihn neu. 
650 <li><code>status</code> berichtet, ob der Task-Server läuft. 
651 </ul>
652
653    <p>Der Task-Server wechselt beim Starten automatisch in das Lx-Office-Installationsverzeichnis.
654
655    <p>Dieselben Optionen können auch für die SystemV-basierenden
656 Runlevel-Scripte benutzt werden (siehe oben).
657
658 <!--  -->
659 <div class="node">
660 <a name="Benutzerauthentifizierung-und-Administratorpasswort"></a>
661 <p><hr>
662 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>,
663 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Der-Task_002dServer">Der Task-Server</a>,
664 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
665
666 </div>
667
668 <h2 class="chapter">7 Benutzerauthentifizierung und Administratorpasswort</h2>
669
670 <p>Informationen über die Einrichtung der Benutzerauthentifizierung, über
671 die Verwaltung von Gruppen und weitere Einstellungen
672
673 <ul class="menu">
674 <li><a accesskey="1" href="#Grundlagen-zur-Benutzerauthentifizierung">Grundlagen zur Benutzerauthentifizierung</a>:  Verfügbare Methoden, Name der Konfigurationsdatei
675 <li><a accesskey="2" href="#Administratorpasswort">Administratorpasswort</a>:  Wo das Administratorpasswort gesetzt werden kann
676 <li><a accesskey="3" href="#Authentifizierungsdatenbank">Authentifizierungsdatenbank</a>:  Verbindungseinstellungen zur Authentifizierungsdatenbank
677 <li><a accesskey="4" href="#Passwort_00c3_00bcberpr_00c3_00bcfung">Passwortüberprüfung</a>:  Einstellungen zur Überprüfung der Benutzerpasswörter
678 <li><a accesskey="5" href="#Name-des-Session_002dCookies">Name des Session-Cookies</a>:  Ändern des Cookie-Namens bei Verwendung mehrerer Lx-Office-Installationen auf einem Server
679 <li><a accesskey="6" href="#Anlegen-der-Authentifizierungsdatenbank">Anlegen der Authentifizierungsdatenbank</a>:  Wie die Authentifizierungsdatenbank angelegt wird
680 </ul>
681
682 <!--  -->
683 <div class="node">
684 <a name="Grundlagen-zur-Benutzerauthentifizierung"></a>
685 <p><hr>
686 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Administratorpasswort">Administratorpasswort</a>,
687 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
688
689 </div>
690
691 <h3 class="section">7.1 Grundlagen zur Benutzerauthentifizierung</h3>
692
693 <p>Lx-Office verwaltet die Benutzerinformationen in einer Datenbank, die
694 im folgenden &ldquo;Authentifizierungsdatenbank&rdquo; genannt wird. Für jeden
695 Benutzer kann dort eine eigene Datenbank für die eigentlichen
696 Finanzdaten hinterlegt sein. Diese beiden Datenbanken können, müssen
697 aber nicht unterschiedlich sein.
698
699    <p>Im einfachsten Fall gibt es für Lx-Office nur eine einzige Datenbank,
700 in der sowohl die Benutzerinformationen als auch die Daten abgelegt
701 werden.
702
703    <p>Zusätzlich ermöglicht es Lx-Office, dass die Benutzerpasswörter
704 entweder gegen die Authentifizierungsdatenbank oder gegen einen
705 LDAP-Server überprüft werden.
706
707    <p>Welche Art der Passwortüberprüfung Lx-Office benutzt und wie Lx-Office
708 die Authentifizierungsdatenbank erreichen kann, wird in der
709 Konfigurationsdatei <samp><span class="file">config/lx_office.conf</span></samp> festgelegt. Diese
710 muss bei der Installation und bei einem Upgrade von einer Version vor
711 v2.6.0 angelegt werden. Eine Beispielkonfigurationsdatei
712 <samp><span class="file">config/lx_office.conf.default</span></samp> existiert, die als Vorlage
713 benutzt werden kann.
714
715 <div class="node">
716 <a name="Administratorpasswort"></a>
717 <p><hr>
718 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Authentifizierungsdatenbank">Authentifizierungsdatenbank</a>,
719 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Grundlagen-zur-Benutzerauthentifizierung">Grundlagen zur Benutzerauthentifizierung</a>,
720 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
721
722 </div>
723
724 <h3 class="section">7.2 Administratorpasswort</h3>
725
726 <p>Das Passwort, das zum Zugriff auf das Aministrationsinterface benutzt wird,
727 wird ebenfalls in dieser Datei gespeichert. Es kann auch nur dort und nicht
728 mehr im Administrationsinterface selber geändert werden. Der Parameter dazu
729 heißt <code>$self-&gt;{admin_password}</code>.
730
731 <div class="node">
732 <a name="Authentifizierungsdatenbank"></a>
733 <p><hr>
734 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Passwort_00c3_00bcberpr_00c3_00bcfung">Passwortüberprüfung</a>,
735 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Administratorpasswort">Administratorpasswort</a>,
736 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
737
738 </div>
739
740 <h3 class="section">7.3 Authentifizierungsdatenbank</h3>
741
742 <p>Die Verbindung zur Authentifizierungsdatenbank wird mit den Parametern
743 in <code>$self-&gt;{DB_config}</code> konfiguriert. Hier sind die folgenden
744 Parameter anzugeben:
745
746      <ul>
747 <li>&lsquo;<samp><span class="samp">host</span></samp>&rsquo; &ndash; Der Rechnername oder die IP-Adresse des Datenbankservers
748 <li>&lsquo;<samp><span class="samp">port</span></samp>&rsquo; &ndash; Die Portnummer des Datenbankservers, meist 5432
749 <li>&lsquo;<samp><span class="samp">db</span></samp>&rsquo; &ndash; Der Name der Authentifizierungsdatenbank
750 <li>&lsquo;<samp><span class="samp">user</span></samp>&rsquo; &ndash; Der Benutzername, mit dem sich Lx-Office beim Datenbankserver anmeldet (z.B. &ldquo;postgres&rdquo;)
751 <li>&lsquo;<samp><span class="samp">password</span></samp>&rsquo; &ndash; Das Passwort für den Datenbankbenutzer
752 </ul>
753
754    <p>Die Datenbank muss noch nicht existieren. Lx-Office kann sie
755 automatisch anlegen (mehr dazu siehe unten).
756
757 <div class="node">
758 <a name="Passwort%c3%bcberpr%c3%bcfung"></a>
759 <a name="Passwort_00c3_00bcberpr_00c3_00bcfung"></a>
760 <p><hr>
761 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Name-des-Session_002dCookies">Name des Session-Cookies</a>,
762 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Authentifizierungsdatenbank">Authentifizierungsdatenbank</a>,
763 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
764
765 </div>
766
767 <h3 class="section">7.4 Passwortüberprüfung</h3>
768
769 <p>Lx-Office unterstützt Passwortüberprüfung auf zwei Arten: gegen die
770 Authentifizierungsdatenbank und gegen einen externen LDAP- oder
771 Active-Directory-Server. Welche davon benutzt wird, regelt der
772 Parameter <code>$self-&gt;{module}</code>.
773
774    <p>Sollen die Benutzerpasswörter in der Authentifizierungsdatenbank
775 gespeichert werden, so muss der Parameter <code>$self-&gt;{module}</code> den
776 Wert &lsquo;<samp><span class="samp">DB</span></samp>&rsquo; enthalten. In diesem Fall können sowohl der
777 Administrator als auch die Benutzer selber ihre Psaswörter in
778 Lx-Office ändern.
779
780    <p>Soll hingegen ein externer LDAP- oder Active-Directory-Server benutzt
781 werden, so muss der Parameter <code>$self-&gt;{module}</code> auf &lsquo;<samp><span class="samp">LDAP</span></samp>&rsquo;
782 gesetzt werden. In diesem Fall müssen zusätzliche Informationen über
783 den LDAP-Server in <code>$self-&gt;{LDAP_config}</code> angegeben werden:
784
785      <ul>
786 <li>&lsquo;<samp><span class="samp">host</span></samp>&rsquo; &ndash; Der Rechnername oder die IP-Adresse des LDAP- oder Active-Directory-Servers. Diese Angabe ist zwingend erforderlich. 
787 <li>&lsquo;<samp><span class="samp">port</span></samp>&rsquo; &ndash; Die Portnummer des LDAP-Servers; meist 389. 
788 <li>&lsquo;<samp><span class="samp">tls</span></samp>&rsquo; &ndash; Wenn Verbindungsverschlüsselung gewünscht ist, so diesen Wert auf &lsquo;<samp><span class="samp">1</span></samp>&rsquo; setzen, andernfalls auf &lsquo;<samp><span class="samp">0</span></samp>&rsquo; belassen
789 <li>&lsquo;<samp><span class="samp">attribute</span></samp>&rsquo; &ndash; Das LDAP-Attribut, in dem der Benutzername steht, den der Benutzer eingegeben hat. Für Active-Directory-Server
790   ist dies meist &lsquo;<samp><span class="samp">sAMAccountName</span></samp>&rsquo;, für andere LDAP-Server hingegen &lsquo;<samp><span class="samp">uid</span></samp>&rsquo;. Diese Angabe ist zwingend erforderlich. 
791 <li>&lsquo;<samp><span class="samp">base_dn</span></samp>&rsquo; &ndash; Der Abschnitt des LDAP-Baumes, der durchsucht werden soll. Diese Angabe ist zwingend erforderlich. 
792 <li>&lsquo;<samp><span class="samp">filter</span></samp>&rsquo; &ndash; Ein optionaler LDAP-Filter. Enthält dieser Filter das Wort <code>&lt;%login%&gt;</code>, so wird dieses durch den vom Benutzer
793   eingegebenen Benutzernamen ersetzt. Andernfalls wird der LDAP-Baum nach einem Element durchsucht, bei dem das oben angegebene Attribut
794   mit dem Benutzernamen identisch ist. 
795 <li>&lsquo;<samp><span class="samp">bind_dn</span></samp>&rsquo; und &lsquo;<samp><span class="samp">bind_password</span></samp>&rsquo; &ndash; Wenn der LDAP-Server eine Anmeldung erfordert, bevor er durchsucht werden kann (z.B. ist dies bei
796   Active-Directory-Servern der Fall), so kann diese hier angegeben werden. Für Active-Directory-Server kann als &lsquo;<samp><span class="samp">bind_dn</span></samp>&rsquo; entweder eine
797   komplette LDAP-DN wie z.B. &lsquo;<samp><span class="samp">cn=Martin Mustermann,cn=Users,dc=firmendomain</span></samp>&rsquo; auch nur der volle Name des Benutzers
798   eingegeben werden; in diesem Beispiel also &lsquo;<samp><span class="samp">Martin Mustermann</span></samp>&rsquo;. 
799 </ul>
800
801 <div class="node">
802 <a name="Name-des-Session-Cookies"></a>
803 <a name="Name-des-Session_002dCookies"></a>
804 <p><hr>
805 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Anlegen-der-Authentifizierungsdatenbank">Anlegen der Authentifizierungsdatenbank</a>,
806 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Passwort_00c3_00bcberpr_00c3_00bcfung">Passwortüberprüfung</a>,
807 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
808
809 </div>
810
811 <h3 class="section">7.5 Name des Session-Cookies</h3>
812
813 <p>Sollen auf einem Server mehrere Lx-Office-Installationen aufgesetzt
814 werden, so müssen die Namen der Session-Cookies für alle
815 Installationen unterschiedlich sein. Der Name des Cookies wird mit dem
816 Parameter <code>$self-&gt;{cookie_name}</code> gesetzt.
817
818    <p>Diese Angabe ist optional, wenn nur eine Installation auf dem Server
819 existiert.
820
821 <div class="node">
822 <a name="Anlegen-der-Authentifizierungsdatenbank"></a>
823 <p><hr>
824 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Name-des-Session_002dCookies">Name des Session-Cookies</a>,
825 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
826
827 </div>
828
829 <h3 class="section">7.6 Anlegen der Authentifizierungsdatenbank</h3>
830
831 <p>Nachdem alle Einstellungen in <samp><span class="file">config/lx_office.conf</span></samp>
832 vorgenommen wurden, muss Lx-Office die Authentifizierungsdatenbank
833 anlegen. Dieses geschieht automatisch, wenn Sie sich im
834 Administrationsmodul anmelden, das unter der folgenden URL erreichbar
835 sein sollte:
836
837    <p><a href="http://localhost/lx-erp/admin.pl">http://localhost/lx-erp/admin.pl</a>
838
839 <!--  -->
840 <div class="node">
841 <a name="Benutzer--und-Gruppenverwaltung"></a>
842 <a name="Benutzer_002d-und-Gruppenverwaltung"></a>
843 <p><hr>
844 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Drucken-mit-Lx_002dOffice">Drucken mit Lx-Office</a>,
845 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>,
846 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
847
848 </div>
849
850 <h2 class="chapter">8 Benutzer- und Gruppenverwaltung</h2>
851
852 <p>Nach der Installation müssen Benutzer, Gruppen und Datenbanken
853 angelegt werden.  Dieses geschieht im Administrationsmenü, das Sie
854 unter folgender URL finden:
855
856    <p><a href="http://localhost/lx-erp/admin.pl">http://localhost/lx-erp/admin.pl</a>
857
858    <p>Verwenden Sie zur Anmeldung das Password, dass Sie in der Datei
859 <samp><span class="file">config/lx_office.conf</span></samp> eingetragen haben.
860
861 <ul class="menu">
862 <li><a accesskey="1" href="#Zusammenh_00c3_00a4nge">Zusammenhänge</a>:  Übersicht über Benutzer, Gruppen, Berechtigungen und Datenbanken
863 <li><a accesskey="2" href="#Datenbanken-anlegen">Datenbanken anlegen</a>:  Hinweise zum Anlegen von Datenbanken
864 <li><a accesskey="3" href="#Gruppen-anlegen">Gruppen anlegen</a>:  Hinweise zum Anlegen von Gruppen
865 <li><a accesskey="4" href="#Benutzer-anlegen">Benutzer anlegen</a>:  Hinweise zum Anlegen von Benutzern
866 <li><a accesskey="5" href="#Gruppenmitgliedschaften-verwalten">Gruppenmitgliedschaften verwalten</a>:  Wie man Gruppen Benutzer zuordnet
867 <li><a accesskey="6" href="#Migration-alter-Installationen">Migration alter Installationen</a>:  Automatische Übernahme bei Update von einer älteren Version
868 </ul>
869
870 <div class="node">
871 <a name="Zusammenh%c3%a4nge"></a>
872 <a name="Zusammenh_00c3_00a4nge"></a>
873 <p><hr>
874 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Datenbanken-anlegen">Datenbanken anlegen</a>,
875 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
876
877 </div>
878
879 <h3 class="section">8.1 Zusammenhänge</h3>
880
881 <p>Lx-Office verwendet eine Datenbank zum Speichern all seiner
882 Informationen wie Kundendaten, Artikel, Angebote, Rechnungen etc. Um
883 mit Lx-Office arbeiten zu können, muss eine Person einen
884 Benutzeraccount haben. Jedem Benutzeraccount wiederum wird genau eine
885 Datenbank zugewiesen, mit der dieser Benutzer arbeiten kann. Es ist
886 möglich und normal, dass mehreren Benutzern die selbe Datenbank
887 zugewiesen wird, sodass sie alle mit den selben Daten arbeiten können.
888
889    <p>Die Basisdaten der Benutzer, die in der Administration eingegeben
890 werden können, werden in einer zweiten Datenbank gespeichert, der
891 bereits erwähnten Authentifizierungsdatenbank. Diese ist also den
892 Produktivdaten enthaltenden Datenbanken vorgeschaltet. Pro
893 Lx-Office-Installation gibt es nur eine Authentifizierungsdatenbank,
894 aber beliebig viele Datenbanken mit Firmendaten.
895
896    <p>Lx-Office kann seinen Benutzern Zugriff auf bestimmte
897 Funktionsbereiche erlauben oder verbieten. Wird der Zugriff nicht
898 gestattet, so werden der entsprechenden Menüpunkte auch nicht
899 angezeigt. Diese Rechte werden ebenfalls in der
900 Authentifizierungsdatenbank gespeichert.
901
902    <p>Um Rechte verteilen zu können, verwendet Lx-Office ein
903 Gruppen-Prinzip. Einer Gruppe kann der Zugriff auf bestimmte Bereiche
904 erlaubt werden. Ein Benutzer wiederum kann Mitglied in einer oder
905 mehrerer Gruppen sein. Der Benutzer hat Zugriff auf alle diejenigen
906 Funktionen, die mindestens einer Gruppe erlaubt sind, in der der
907 Benutzer Mitglied ist.
908
909    <p>Die allgemeine Reihenfolge, in der Datenbanken, Gruppen und Benutzer
910 angelegt werden sollten, lautet:
911
912      <ol type=1 start=1>
913 <li>Datenbank anlegen
914 <li>Gruppen anlegen
915 <li>Benutzer anlegen
916 <li>Benutzer den Gruppen zuordnen
917         </ol>
918
919 <div class="node">
920 <a name="Datenbanken-anlegen"></a>
921 <p><hr>
922 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Gruppen-anlegen">Gruppen anlegen</a>,
923 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Zusammenh_00c3_00a4nge">Zusammenhänge</a>,
924 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
925
926 </div>
927
928 <h3 class="section">8.2 Datenbanken anlegen</h3>
929
930 <p>Zuerst muss eine Datenbank angelegt werden. Verwenden Sie für den
931 Datenbankzugriff den vorhin angelegten Benutzer (in unseren Beispielen
932 ist dies &lsquo;<samp><span class="samp">lxoffice</span></samp>&rsquo;).
933
934    <p>Wenn Sie für die Lx-Office-Installation nicht den europäischen
935 Schriftsatz ISO-8859-15 sondern UTF-8 (Unicode) benutzen wollen, so
936 müssen Sie vor dem Anlegen der Datenbank in der Datei
937 <samp><span class="file">config/lx_office.conf</span></samp> die Variable <code>dbcharset</code> im
938 Abschnitt <code>system</code> auf den Wert &lsquo;<samp><span class="samp">UTF-8</span></samp>&rsquo; setzen. Zusätzlich
939 muss beim Anlegen der Datenbank &lsquo;<samp><span class="samp">UTF-8 Unicode</span></samp>&rsquo; als Schriftsatz
940 ausgewählt werden.
941
942    <p>Bitte beachten Sie, dass alle Datenbanken den selben Zeichensatz
943 verwenden müssen, da diese Einstellungen momentan global in Lx-Office
944 vorgenommen wird und nicht nach Datenbank unterschieden werden
945 kann. Auch die Authentifizierungsdatenbank muss mit diesem Zeichensatz
946 angelegt worden sein.
947
948 <div class="node">
949 <a name="Gruppen-anlegen"></a>
950 <p><hr>
951 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Benutzer-anlegen">Benutzer anlegen</a>,
952 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Datenbanken-anlegen">Datenbanken anlegen</a>,
953 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
954
955 </div>
956
957 <h3 class="section">8.3 Gruppen anlegen</h3>
958
959 <p>Eine Gruppe wird in der Gruppenverwaltung angelegt. Ihr muss ein Name
960 gegeben werden, eine Beschreibung ist hingegen optional. Nach dem
961 Anlegen können Sie die verschiedenen Bereiche wählen, auf die
962 Mitglieder dieser Gruppe Zugriff haben sollen.
963
964    <p>Benutzergruppen sind unabhängig von Datenbanken, da sie in der
965 Authentifizierungsdatenbank gespeichert werden. Sie gelten für alle
966 Datenbanken, die in dieser Installation verwaltet werden.
967
968 <div class="node">
969 <a name="Benutzer-anlegen"></a>
970 <p><hr>
971 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Gruppenmitgliedschaften-verwalten">Gruppenmitgliedschaften verwalten</a>,
972 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Gruppen-anlegen">Gruppen anlegen</a>,
973 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
974
975 </div>
976
977 <h3 class="section">8.4 Benutzer anlegen</h3>
978
979 <p>Beim Anlegen von Benutzern werden für viele Parameter
980 Standardeinstellungen vorgenommen, die den Gepflogenheiten des
981 deutschen Raumes entsprechen.
982
983    <p>Zwingend anzugeben sind der Loginname sowie die komplette
984 Datenbankkonfiguration. Wenn die Passwortauthentifizierung über die
985 Datenbank eingestellt ist, so kann hier auch das Benutzerpasswort
986 gesetzt bzw. geändert werden. Ist hingegen die LDAP-Authentifizierung
987 aktiv, so ist das Passwort-Feld deaktiviert.
988
989    <p>In der Datenbankkonfiguration müssen die Zugriffsdaten einer der eben
990 angelegten Datenbanken eingetragen werden.
991
992 <div class="node">
993 <a name="Gruppenmitgliedschaften-verwalten"></a>
994 <p><hr>
995 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Migration-alter-Installationen">Migration alter Installationen</a>,
996 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Benutzer-anlegen">Benutzer anlegen</a>,
997 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
998
999 </div>
1000
1001 <h3 class="section">8.5 Gruppenmitgliedschaften verwalten</h3>
1002
1003 <p>Nach dem Anlegen von Benutzern und Gruppen müssen Benutzer den Gruppen
1004 zugewiesen werden. Dazu gibt es zwei Möglichkeiten:
1005
1006      <ol type=1 start=1>
1007 <li>In der Gruppenverwaltung wählt man eine Gruppe aus. Im folgenden
1008 Dialog kann man dann einzeln die Benutzer der Gruppe hinzufügen. 
1009 <li>In der Gruppenverwaltung wählt man das Tool zur Verwaltung der
1010 Gruppenmitgliedschaft. Hier wird eine Matrix angezeigt, die alle im
1011 System angelegten Gruppen und Benutzer enthält. Durch Setzen der
1012 Häkchen wird der Benutzer in der ausgewählten Zeile der Gruppe in der
1013 ausgewählten Spalte hinzugefügt.
1014         </ol>
1015
1016 <div class="node">
1017 <a name="Migration-alter-Installationen"></a>
1018 <p><hr>
1019 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Gruppenmitgliedschaften-verwalten">Gruppenmitgliedschaften verwalten</a>,
1020 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
1021
1022 </div>
1023
1024 <h3 class="section">8.6 Migration alter Installationen</h3>
1025
1026 <p>Wenn Lx-Office 2.6.2 über eine ältere Version installiert wird, in der
1027 die Benutzerdaten noch im Dateisystem im Verzeichnis <code>users</code>
1028 verwaltet wurden, so bietet Lx-Office die Möglichkeit, diese
1029 Benutzerdaten automatisch in die Authentifizierungsdatenbank zu
1030 übernehmen. Dies geschieht, wenn man sich nach dem Update der
1031 Installation das erste Mal im Administrationsbereich anmeldet. Findet
1032 Lx-Office die Datei <code>users/members</code>, so wird der
1033 Migrationsprozess gestartet.
1034
1035    <p>Der Migrationsprozess ist nahezu vollautomatisch. Alle Benutzerdaten
1036 können übernommen werden. Nach den Benutzerdaten bietet Lx-Office noch
1037 die Möglichkeit an, dass automatisch eine Benutzergruppe angelegt
1038 wird. Dieser Gruppe wird Zugriff auf alle Funktionen von Lx-Office
1039 gewährt. Alle migrierten Benutzern werden Mitglied in dieser
1040 Gruppe. Damit wird das Verhalten von Lx-Office bis Version 2.4.3
1041 inklusive wiederhergestellt, und die Benutzer können sich sofort
1042 wieder anmelden und mit dem System arbeiten.
1043
1044 <!--  -->
1045 <div class="node">
1046 <a name="Drucken-mit-Lx-Office"></a>
1047 <a name="Drucken-mit-Lx_002dOffice"></a>
1048 <p><hr>
1049 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#OpenDocument_002dVorlagen">OpenDocument-Vorlagen</a>,
1050 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>,
1051 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
1052
1053 </div>
1054
1055 <h2 class="chapter">9 Drucken mit Lx-Office</h2>
1056
1057 <p>Das Drucksystem von Lx-Office benutzt von Haus aus LaTeX Vorlagen. Um drucken
1058 zu können, braucht der Server ein geeignetes LaTeX System. Am einfachsten ist
1059 dazu eine <code>texlive</code> Installation. Unter Debianoiden Betriebssystemen sind
1060 das die Pakete:
1061
1062    <p><code>texlive-latex-base texlive-latex-extra texlive-fonts-recommended</code>
1063
1064    <p>Diese hinteren beiden enthalten Bibliotheken und Schriftarten die von den
1065 Standardvorlagen verwendet werden.
1066
1067    <p>TODO: rpm Pakete.
1068
1069    <p>In den allermeisten Installationen sollte drucken jetzt schon funktionieren. 
1070 Sollte ein Fehler auftreten wirft TeX sehr lange Fehlerbeschreibungen, der
1071 eigentliche Fehler ist immer die erste Zeite die mit einem Ausrufezeichen
1072 anfängt. Häufig auftretende Fehler sind zum Beispiel:
1073
1074      <ul>
1075 <li>! LaTeX Error: File `eurosym.sty' not found. 
1076 Die entsprechende LaTeX-Bibliothek wurde nicht gefunden. Das tritt vor allem
1077 bei Vorlagen aus der Community auf. Installieren Sie die entsprechenden Pakete. 
1078 <li>! Package inputenc Error: Unicode char \u8:æ¡\9c not set up for use with LaTeX. 
1079 Dieser Fehler tritt auf, wenn sie versuchen mit einer Standardinstallation
1080 exotische utf8 Zeichen zu drucken. TeXLive unterstützt von Haus nur romanische
1081 Schriften und muss mit diversen Tricks dazu gebracht werden andere Zeichen zu
1082 akzeptieren. Adere TeX Systeme wie XeTeX schaffen hier Abhilfe. 
1083 </ul>
1084
1085    <p>Wird garkein Fehler angezeigt sondern nur der Name des Templates, heißt das
1086 normalerweise, dass das LaTeX Binary nicht gefunden wurde. Prüfen Sie den Namen
1087 in der Konfiguration (Standard: <code>pdflatex</code>), und stellen Sie sicher, dass
1088 pdflatex (oder das von Ihnen verwendete System) vom Webserver ausgeführt werden
1089 darf.
1090
1091 <!--  -->
1092 <div class="node">
1093 <a name="OpenDocument-Vorlagen"></a>
1094 <a name="OpenDocument_002dVorlagen"></a>
1095 <p><hr>
1096 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Lx_002dOffice-ERP-verwenden">Lx-Office ERP verwenden</a>,
1097 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Drucken-mit-Lx_002dOffice">Drucken mit Lx-Office</a>,
1098 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
1099
1100 </div>
1101
1102 <h2 class="chapter">10 OpenDocument-Vorlagen</h2>
1103
1104 <p>Lx-Office unterstützt die Verwendung von Vorlagen im
1105 OpenDocument-Format, wie es OpenOffice.org ab Version 2
1106 erzeugt. Lx-Office kann dabei sowohl neue OpenDocument-Dokumente als
1107 auch aus diesen direkt PDF-Dateien erzeugen.  Um die Unterstützung von
1108 OpenDocument-Vorlagen zu aktivieren muss in der Datei
1109 <samp><span class="file">config/lx_office.conf</span></samp> die Variable <code>opendocument</code> im
1110 Abschnitt <code>print_templates</code> auf &lsquo;<samp><span class="samp">1</span></samp>&rsquo; stehen.  Dieses ist die
1111 Standardeinstellung.
1112
1113    <p>Weiterhin muss in der Datei <samp><span class="file">config/lx_office.conf</span></samp> die Variable
1114 <code>dbcharset</code> im Abschnitt <code>system</code> auf die Zeichenkodierung
1115 gesetzt werden, die auch bei der Speicherung der Daten in der
1116 Datenbank verwendet wird. Diese ist in den meisten Fällen "UTF-8".
1117
1118    <p>Während die Erzeugung von reinen OpenDocument-Dateien keinerlei
1119 weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF
1120 OpenOffice.org benötigt. Soll dieses Feature genutzt werden, so muss
1121 neben OpenOffice.org ab Version 2 auch der &ldquo;X virtual frame buffer&rdquo;
1122 (xvfb) installiert werden.  Bei Debian ist er im Paket &ldquo;xvfb&rdquo;
1123 enthalten. Andere Distributionen enthalten ihn in anderen Paketen.
1124
1125    <p>Nach der Installation müssen in der Datei <samp><span class="file">config/lx_config.conf</span></samp>
1126 zwei weitere Variablen angepasst werden: <code>openofficeorg_writer</code>
1127 muss den vollständigen Pfad zur OpenOffice.org Writer-Anwendung
1128 enthalten. <code>xvfb</code> muss den Pfad zum &ldquo;X virtual frame buffer&rdquo;
1129 enthalten. Beide stehen im Abschnitt <code>applications</code>.
1130
1131    <p>Zusätzlich gibt es zwei verschiedene Arten, wie Lx-Office mit
1132 OpenOffice kommuniziert. Die erste Variante, die benutzt wird, wenn
1133 die Variable <code>$openofficeorg_daemon</code> gesetzt ist, startet ein
1134 OpenOffice, das auch nach der Umwandlung des Dokumentes gestartet
1135 bleibt. Bei weiteren Umwandlungen wird dann diese laufende Instanz
1136 benutzt. Der Vorteil ist, dass die Zeit zur Umwandlung deutlich
1137 reduziert wird, weil nicht für jedes Dokument ein OpenOffice gestartet
1138 werden muss. Der Nachteil ist, dass diese Methode Python und die
1139 Python-UNO-Bindings benötigt, die Bestandteil von OpenOffice 2 sind.
1140
1141    <p>Ist <code>$openofficeorg_daemon</code> nicht gesetzt, so wird für jedes
1142 Dokument OpenOffice neu gestartet und die Konvertierung mit Hilfe
1143 eines Makros durchgeführt. Dieses Makro muss in der Dokumentenvorlage
1144 enthalten sein und &ldquo;Standard.Conversion.ConvertSelfToPDF()&rdquo;
1145 heißen. Die Beispielvorlage &lsquo;<samp><span class="samp">templates/German-invoice.odt</span></samp>&rsquo;
1146 enthält ein solches Makro, das in jeder anderen Dokumentenvorlage
1147 ebenfalls enthalten sein muss.
1148
1149    <p>Als letztes muss herausgefunden werden, welchen Namen OpenOffice.org
1150 Writer dem Verzeichnis mit den Benutzereinstellungen gibt. Unter
1151 Debian ist dies momentan <code>~/.openoffice.org2</code>. Sollte der Name
1152 bei Ihrer OpenOffice.org-Installation anders sein, so muss das
1153 Verzeichnis <code>users/.openoffice.org2</code> entsprechend umbenannt
1154 werden. Ist der Name z.B. einfach nur <code>.openoffice</code>, so wäre
1155 folgender Befehl auszuführen:
1156
1157    <p><code>mv users/.openoffice.org2 users/.openoffice</code>
1158
1159    <p>Dieses Verzeichnis, wie auch das komplette <code>users</code>-Verzeichnis, muss vom
1160 Webserver beschreibbar sein. Dieses wurde bereits erledigt
1161 (see <a href="#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>), kann aber erneut überprüft
1162 werden, wenn die Konvertierung nach PDF fehlschlägt.
1163
1164 <!--  -->
1165 <div class="node">
1166 <a name="Lx-Office-ERP-verwenden"></a>
1167 <a name="Lx_002dOffice-ERP-verwenden"></a>
1168 <p><hr>
1169 voriges:&nbsp;<a rel="previous" accesskey="p" href="#OpenDocument_002dVorlagen">OpenDocument-Vorlagen</a>,
1170 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
1171
1172 </div>
1173
1174 <h2 class="chapter">11 Lx-Office ERP verwenden</h2>
1175
1176 <p>Nach erfolgreicher Installation ist der Loginbildschirm unter
1177 folgender URL erreichbar:
1178
1179    <p><a href="http://localhost/lx-office-erp/login.pl">http://localhost/lx-office-erp/login.pl</a>
1180
1181    <p>Die Administrationsseite erreichen Sie unter:
1182
1183    <p><a href="http://localhost/lx-office-erp/admin.pl">http://localhost/lx-office-erp/admin.pl</a>
1184
1185 </body></html>
1186
1187 <!--
1188 \1f
1189 Local Variables:
1190 coding: utf-8
1191 End:
1192
1193 -->