UPGRADE (erste Version)
[kivitendo-erp.git] / doc / UPGRADE
1 Wichtige Hinweise zum Upgrade von älteren Versionen
2 ===================================================
3
4
5 ** BITTE FERTIGEN SIE VOR DEM UPGRADE EIN BACKUP IHRER DATENBANK(EN) AN! **
6
7 Upgrade auf v2.7.0
8 ==================
9
10 1. Templateumstellungen
11
12 Das Druckvorlagensystem wurde umgestellt, dadurch ist der Name "print" für
13 Druckvorlagen jetzt reserviert. Wenn eine Ihrer Vorlagensätze "print" heisst,
14 benennen Sie ihn um bevor Sie das Update starten.
15
16 2. Neue Abhängigkeiten
17
18 Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
19
20 $ scripts/installation_check.pl
21
22 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
23 der Installationsanweisung.
24
25 Es sind zwei neue Abhängigkeiten dazugekommen.
26
27 * JSON
28 * String::ShellQuote
29
30
31 Upgrade auf v2.6.3
32 ==================
33
34 1. Mit Version 2.6.3. wurden die beiden Konfigurationsdateien
35 authentication.pl und lx-erp.conf, sowie deren Varianten,
36 abgeschafft. Stattdessen gibt es nun die Datei lx_office.conf, die
37 aber erst neu angelegt werden muß. Als Vorlage dient hierfür die Datei
38 lx_office.conf.default. Die entsprechenden Werte muß man selber neu
39 konfigurieren, dies ist automatisiert zu fehleranfällig.
40
41 Nach dem Upgrade kann man sich so lange nicht anmelden, bis lx_office.conf
42 angelegt und authentication.pl und lx-erp.conf gelöscht oder verschoben wurden.
43
44 Es gibt keine local-Variante der lx_office.conf, arbeitet man mit git sollte
45 man lx_office.conf nicht einchecken.
46
47 Eine etwas ausführlichere Beschreibung findet sich in der Datei:
48 doc/konfigurationsdatei.txt
49
50 2. Eine neu hinzugekommene Komponente ist der Task-Server. Hierbei
51 handelt es sich um einen Dämonen, der im Hintergrund läuft, in
52 regelmäßigen Abständen nach abzuarbeitenden Aufgaben sucht und diese
53 zu festgelegten Zeitpunkten abarbeitet (ähnlich wie Cron). Dieser
54 Dämon wird bisher nur für die Erzeugung der wiederkehrenden Rechnungen
55 benutzt, wird aber in Zukunft deutlich mehr Aufgaben übertragen
56 bekommen. Die Einrichtung des Dämonen wird in der
57 Installationsdokumentation im Abschnitt "Der Task-Server" beschrieben.
58
59 3. Mit Version 2.6.3 sind einige Abhängigkeiten von Perl-Modulen
60 hinzugekommen. Bitte führen sie vor dem ersten Aufrufen der einmal
61 den folgenden Befehl im Lx-Office Verzeichnis aus:
62
63 $ scripts/installation_check.pl
64
65 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
66 der Installationsanweisung.
67
68 Zumindest folgende Module sind neu benötigt:
69
70 * Config::Std
71 * Params::Validate
72
73 4. Sollten Sie die FCGI-Version einsetzen, das Apache-Modul
74 "mod_fcgid" (nicht "mod_fastcgi") benutzen und von diesem Modul die
75 Version v2.6.3 oder später installiert haben, so ist außerdem wichtig,
76 seinen Parameter "FcgidMaxRequestLen" deutlich zu erhöhen, weil sich
77 dieser im Release mod_fcgid-Release v2.6.3 deutlich geändert
78 hat. Details dazu finden sich in der Datei doc/INSTALL.fcgi.
79
80
81 Upgrade auf v2.6.2
82 ==================
83
84  Vor dem Einloggen
85  -----------------
86
87 Mit Version 2.6.2 sind einige Abhängigkeiten von Perl-Modulen hinzugekommen.
88 Bitte führen sie vor dem ersten Aufrufen der einmal den folgenden Befehl im
89 Lx-Office Verzeichnis aus:
90
91 $ scripts/installation_check.pl
92
93 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
94 der Installationsanweisung.
95
96 Zumindest folgende Module sind neu benötigt:
97
98 * Rose::Object, Rose::DB und Rose::DB::Object (die Installation von
99   Rose::DB::Object via CPAN oder den Paketmechanismus Ihrer
100   Distribution sollte für die automatische Installation der anderen
101   zwei Pakete sorgen)
102
103  Neue Gruppenrechte
104  ------------------
105
106 Es wurde ein neues Recht "Druck" eingeführt. Dieses bestimmt, ob die
107 Benutzerin das Menü "Druck" zu Gesicht bekommt oder nicht, unabhängig
108 davon, wie die Rechte für die einzelnen Unterpunkte gesetzt sind.
109
110 Für bereits bestehende Gruppen muss es sofern gewünscht vom
111 Administrator manuell gewährt werden.
112
113
114 Upgrade auf v2.6.1
115 ==================
116
117  Vor dem Einloggen
118  -----------------
119
120 Mit Version 2.6.1 wurden die Listen der benötigten Perl Module überarbeitet.
121 Einige der vorher in den Abhängigkeiten gelisteten Module waren Coremodules
122 (und damit in jeder Perldistribution vorhanden), oder ihrerseits Abhängigkeiten
123 anderer benötigter Module. Durch die Überarbeitung hat sich die Liste deutlich
124 geändert.
125
126 Bitte führen sie vor dem ersten Aufrufen der einmal den folgenden Befehl im
127 Lx-Office Verzeichnis aus:
128
129 $ scripts/installation_check.pl
130
131 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
132 der Installationsanweisung.
133
134 Zumindest folgende Module sind neu benötigt:
135
136 * URI
137 * XML::Writer
138
139  Neue Konfigurationsvariablen
140  ----------------------------
141
142 In der config/lx-erp.conf ist als neue Option $show_best_before hinzugekommen.
143 Die Variable kontrolliert die Anzeige von Mindesthaltbarkeitsdaten. Sie ist
144 standardmäßig deaktiviert.
145
146
147 Upgrade auf v2.6.0
148 ==================
149
150 Mit Version 2.6.0 wurde der Code zur Benutzerauthentifizierung neu
151 geschrieben. Die Umstellung erfordert eine manuelle
152 Konfiguration. Bestehende Benutzeraccounts können aber von Lx-Office
153 automatisch übernommen werden.
154
155  Bevor Sie sich das erste mal einloggen
156  --------------------------------------
157
158 Kopieren Sie bitte die Datei "lx-erp.conf" und
159 ggfs. "lx-erp-local.conf" in das neue Unterverzeichnis "config/". Die
160 alte Datei im Lx-Office-Stammverzeichnis kann daraufhin gelöscht
161 werdern.
162
163 Als nächstes muss die neue datenbankgestützte Benutzerverwaltung
164 konfiguriert werden. Die dafür notwendigen Einstellungen werden in der
165 Datei "config/authentification.pl" vorgenommen, für die eine
166 kommentierte Vorlage in "config/authentication.pl.default"
167 bereitliegt.
168
169 Weitere Informationen zu dieser Datei finden Sie in der Dokumentation
170 "doc/INSTALL/index.html" und dort in den Kapiteln
171 "Benutzerauthentifizierung und Administratorpasswort" sowie "Benutzer-
172 und Gruppenverwaltung".
173
174 Nach der Einrichtung der Datei "config/authentication.pl" muss im
175 Webbrowser das Administrationsinterface aufgerufen werden. Nach
176 erfolgter Anmeldung werden Sie durch den Upgradeprozess geleitet.
177
178 Die weiteren erforderlichen Datenbankupgrades werden erst vorgenommen,
179 wenn sich ein Benutzer erfolgreich anmeldet.
180
181  Neue Perl-Module
182  ----------------
183
184 Mit Version 2.6.0 werden zusätzlich die folgenden Perl-Module benötigt,
185 die bis Version 2.4.3 inklusive noch keine Voraussetzung waren:
186
187 * PDF::API2
188
189
190 Upgrade von v2.4.0 und neuer auf v2.4.3
191 =======================================
192
193 Ein Upgrade von v2.4.0 oder neuer auf v2.4.3 aus zwei Teilen: den
194 Dateien (einfaches Entpacken und Kopieren in das
195 Installationsverzeichnis genügen) sowie dem Datenbankupgrade.
196
197  Neue Variablen in der Datei lx-erp.conf
198  ---------------------------------------
199
200 Wenn Sie eine eigene Version der Konfigurationsdatei "lx-erp.conf"
201 einsetzen und diese nicht mit der Standardkonfigurationsdatei
202 überschreiben, so beachten Sie bitte, dass die folgenden neuen
203 Variablen hinzugekommen sind und von Ihnen manuell ergänzt werden
204 sollten: $html2ps_bin, $ghostscript_bin, $pg_dump_exe und
205 $pg_restore_exe. Die Variable '$jscalendar' kann hingegen entfernt
206 werden, da sie nicht mehr benötigt wird.
207
208 Die Standardwerte für diese Variablen finden Sie in der Datei
209 "lx-erp.conf.default".
210
211  Neue Abhängigkeiten von Perl-Modulen
212  ------------------------------------
213
214 Bitte beachten Sie auch die Liste der benötigten Perl-Module am Anfang
215 der Datei "doc/INSTALL". Seit Version 2.4.0 sind die folgenden Module
216 neu hinzugekommen:
217
218 - Achive::Zip
219 - Template
220 - Text::CSV_XS
221 - Text::Iconv
222 - Time::HiRes
223 - YAML
224
225 Nach Möglichkeit sollten auch die aktuellen Versionen der
226 Datenbankpakete "DBI" und "DBD::Pg" installiert werden.
227
228  Datenbankupgrade
229  ----------------
230
231 Das Datenbankupgrade wird automatisch gestartet, wenn sich der erste
232 Benutzer nach dem Upgrade der Dateien an Lx-Office anmeldet.
233
234 ** BITTE FERTIGEN SIE VOR DEM UPGRADE EIN BACKUP IHRER DATENBANK(EN) AN! **
235
236
237 Upgrade von v2.4.0 auf 2.4.1 sowie von 2.4.1 auf 2.4.2
238 ======================================================
239
240 Ein Upgrade von v2.4.0 auf v2.4.1 oder von v2.4.1 auf v2.4.2 besteht
241 aus zwei Teilen: den Dateien (einfaches Entpacken und Kopieren in das
242 Installationsverzeichnis genügen) sowie dem Datenbankupgrade.
243
244 Bitte beachten Sie auch die Liste der benötigten Perl-Module am Anfang
245 der Datei "doc/INSTALL". Besonders nach einem Upgrade auf 2.4.2 muss
246 sichergestellt werden, dass das Modul "YAML" installiert ist.
247
248 Das Datenbankupgrade wird automatisch gestartet, wenn sich der erste
249 Benutzer nach dem Upgrade der Dateien an Lx-Office anmeldet.
250
251 ** BITTE FERTIGEN SIE VOR DEM UPGRADE EIN BACKUP IHRER DATENBANK(EN) AN! **
252
253 Anders als beim Upgrade auf 2.4.0 handelt es bei den Datenbankupgrades
254 auf 2.4.1 und 2.4.2 nur um automatisch ablaufende Scripte, die keine
255 Benutzereingaben erfordern.
256
257
258 Upgrade von v2.2.0 bis 2.2.2 auf 2.4.0
259 ======================================
260
261 Ein direktes Upgrade von den unmodifizierten Versionen 2.2.0, 2.2.1
262 und 2.2.2 auf 2.4.0 ist möglich. Ein solches Upgrade besteht aus zwei
263 Teilen: den Dateien (einfaches Entpacken und Kopieren in das
264 Installationsverzeichnis genügen) sowie dem Datenbankupgrade.
265
266 Bitte beachten Sie auch die Liste der benötigten Perl-Module am Anfang
267 der Datei "doc/INSTALL".
268
269 Das Datenbankupgrade wird automatisch gestartet, wenn sich der erste
270 Benutzer nach dem Upgrade der Dateien an Lx-Office anmeldet.
271
272 ** BITTE FERTIGEN SIE VOR DEM UPGRADE EIN BACKUP IHRER DATENBANK(EN) AN! **
273
274 Das Datenbankupgrade enthält zwei interaktive Upgradepfade für neue
275 Features in Lx-Office 2.4.0: Einheiten sowie Buchungsgruppen.
276
277
278
279 Einführung von Einheiten
280 ------------------------
281
282 In Versionen von Lx-Office vor 2.4.0 konnte der Benutzer bei den
283 Stammdaten aber auch in den Einkaufs- und Verkaufsdialogen beliebige
284 Texte als "Einheit" angeben. Lx-Office 2.4.0 ändert dies nun. Der
285 Administrator kann unter "System -> Einheiten -> Maßeinheiten" die bei
286 Waren und Erzeugnissen verwendbaren und bei "System -> Einheiten ->
287 Dienstleistungseinheiten" die bei Dienstleistungen verwendbaren
288 Einheiten festlegen. Lx-Office 2.4.0 bringt bereits für beide Typen
289 einige Standardeinheiten mit.
290
291 Einheiten können wiederum auf anderen Einheiten basieren. So ist
292 z.B. "kg" als das 1000fache der Einheit "g" definiert. Der Benutzer
293 muss beim Anlegen von Artikeln in den Stammdaten eine Einheit aus
294 einer Drop-Down-Liste auswählen. In den Einkaufs- und Verkaufsmasken
295 werden dann dem Benutzer nur noch diejenigen Einheiten zur Auswahl
296 angeboten, die sich in die in den Stammdaten hinterlegte Einheit
297 umrechnen lassen. So würden z.B. für eine Ware, deren
298 Stammdateneinheit "kg" ist, nur die Einheiten "g", "kg", "t" zur
299 Auswahl aufgelistet, nicht aber "Stück" oder "Tag", "Stunde".
300
301 Das Datenbankupgrade muss nun alle im System verwendeten Einheiten in
302 den Stammdaten sowie in den Einkaufs- und Verkaufsdaten so anpassen,
303 dass dort nur noch Einheiten auftreten, die im System verwendet werden
304 können. Da dies nur eingeschränkt automatisch möglich ist, werden dem
305 Benutzer, der das Datenbankupgrade nach dem Login durchführt, einige
306 Masken angezeigt, in denen er neue Einheiten in der Datenbank anlegen
307 kann, und in denen er "alte" Einheiten durch "neue" Einheiten ersetzen
308 lassen kann.
309
310 Zuletzt muss er noch für all die Waren, für die früher gar keine
311 Einheit eingetragen wurde, eine Standardeinheit getrennt nach Waren /
312 Erzeugnissen und Dienstleistungen festlegen, die statt dessen
313 eingesetzt wird.
314
315
316 Einführung von Steuerzonen und Buchungsgruppen
317 ----------------------------------------------
318
319 In den Versionen von Lx-Office vor 2.4.0 wurden bei Artikeln und
320 Dienstleistungen jeweils ein Konto für Erlöse und ein Konto für den
321 Aufwand hinterlegt. Über diese Konten wurde dann auch definiert
322 welcher Steuersatz zu berechnen ist. Wollte man einen Artikel mal mit
323 und mal ohne Steuer verkaufen (Inland, Ausland), waren hierfür zwei
324 Artikel notwendig.
325
326 In der Version 2.4.0 können nun bei jedem Artikel für die
327 verschiedenen Fälle
328 - Inland
329 - EU mit UStId
330 - EU ohne UStId
331 - Außerhalb EU
332 verschiedene Erlös- und Aufwandskonten definiert werden. Dadurch
333 werden dann auch jeweils die richtigen Steuersätze berechnet.
334
335 Damit jetzt nicht bei jedem Artikel mehrere Konten definiert werden
336 müssen, werden alle Konten, die zu einer bestimmten Warengruppe
337 gehören, in einer Buchungsgruppe zusammengefasst. Diese
338 Buchungsgruppen werden zunächst unter "System" definiert und können
339 dann den Artikeln und Dienstleistungen zugewiesen werden.
340
341 Beim Datenbankupdate werden aus der Datenbank alle Kombinationen von
342 Erlös- und Aufwandskonten geholt, die bereits verwendet wurden. Für
343 diese Kombinationen müssen im Upgradeprozess Buchungsgruppen angelegt
344 werden, indem man den einzelnen Kombinationen einen Namen zuweist. Die
345 Konten für nicht Inland sind mit den Standardkonten vorbelegt, können
346 aber vor dem Speichern geändert werden.
347
348 Diese neu angelegten Buchungsgruppen werden automatisch den
349 vorhandenen Artikeln und Dienstleistungen zugewiesen.  Buchungsgruppen
350 können genau wie vorher die Kontenzuordnung nachträglich nicht mehr
351 geändert werden.
352
353 Möchte man in der Buchhaltung eine neue Kombination von Erlös- und
354 Aufwandskonten für bestimmte Artikel und Waren verwenden, legt man
355 zunächst die entsprechenden konnten (z.B. 8401 und 3401) an und
356 erstellt dann eine neue Buchungsgruppe mit diesen Konten.  Die
357 Benennung der Buchungsgruppe kann frei erfolgen.
358
359 Beim Anlegen einer neuen Waren oder Dienstleistung werden dann durch
360 Auswahl dieser Buchungsgruppe automatisch alle Konten auf einen Schlag
361 korrekt zugeordnet.
362
363 Wird in einer Verkaufs- oder Einkaufsmaske eine andere Steuerzone als
364 Inland ausgewählt, werden bei den Artikeln auch automatisch die
365 anderen Erlös- und Aufwandskonten der Buchungsgruppe verwendet.
366
367 Dokumentenvorlagen, Umbennante Vorlagenvariablen
368 ------------------------------------------------
369
370 Einige Variablen, die in Dokumentenvorlagen verwendet werden, mussten
371 aufgrund von Namenskonflikten umbenannt werden. Dazu gehören:
372
373 * Adress- und Kontaktinformationen des angemeldeten Mitarbeiters. Die
374   Variablen "company", "address" und "businessnumber" haben alle einen
375   Präfix "employee_" bekommen und heißen nun "employee_company",
376   "employee_address" und "employee_businessnumber".
377
378 Zu beachten ist außerdem, dass der Befehl <%include ...%> in
379 Dokumentenvorlagen nicht mehr zur Verfügung steht.