UPGRADE aktualisiert
[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 v3.4.0
8 ==================
9
10 * Neue Perl-Modul-Abhängigkeiten:
11
12   * Algorithm::CheckDigits
13   * PBKDF2::Tiny
14
15   Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
16
17   $ scripts/installation_check.pl -ro
18
19 * Der in der Dokumentation beschriebene Mechanismus für die CGI-Anbindung
20   (2.6.1 Grundkonfiguration mittels CGI) wurde geändert. Ein einfacher Alias
21   auf das Programmverzeichnis funktioniert nicht mehr, und es muss immer ein
22   AliasMatch auf einen dispatcher eingerichtet werden. Die Dokumentation wurde
23   aktualisiert. Für Benutzer der empfohlenen FastCGI Anbindung ändert sich
24   nichts.
25
26 * Der Task-Server ist nun mandantenfähig. Für jeden Mandanten, für den
27   der Task-Server laufen soll, muss in der Administrationsoberfläche
28   in der Konfiguration des Mandanten hinterlegt werden, welchen
29   kivitendo-Benutzer der Task-Server nutzen soll. Ist bei einem
30   Mandanten kein Benutzer hinterlegt, so ignoriert der Task-Server
31   diesen Mandanten.
32
33   Im Gegenzug wurden die beiden Konfigurations-Einstellungen »client«
34   und »login« aus dem Abschnitt [task_server] entfernt. Der
35   Task-Server prüft beim Starten allerdings, ob diese Einstellungen
36   noch existieren und verweigert den Start mit einer hilfreichen
37   Fehlermeldung, solange sie noch vorhanden sind.
38
39 * Die Unterstützung unsicherer Passwort-Hashing-Mechanism wurde
40   entfernt. Für BenutzerInnen, die noch alte Mechanismen verwenden,
41   müssen die Passwörter einmalig in der Administrationsoberfläche
42   zurückgesetzt werden.
43
44   Dies betrifft nur Accounts, deren Passwort sich das letzte Mal vor
45   kivitendo 2.7.0 geändert hat.
46
47 Upgrade auf v3.3.0
48 ==================
49
50 * Bei Upgrade von Versionen vor v.3.2.x wie immer erst die dortigen
51   Upgradehinweise beachten.
52
53 * Es gibt keine neuen Perl-Modul-Abhängigkeiten.
54
55 * Die alte ungepflegte Druckvorlagenvariante "Standard" wurde entfernt.
56   Bereits verwendete Druckvorlagen, die darauf aufbauen, funktionieren
57   natürlich weiterhin.
58
59 * Für die Verwendung des MT940 Import Features der Bankerweiterung muß
60   aqbanking installiert werden. Dies wird nur für die Konvertierung vom MT940
61   ins CSV Format benötigt, das Kommandozeilentool "aqbanking-cli" befindet sich
62   z.B. unter Ubuntu im Paket aqbanking-tools.
63
64 Upgrade auf v3.2.0
65 ==================
66
67 * Neue Perl-Modul-Abhängigkeiten:
68
69   * GD
70   * HTML::Restrict
71   * Image::Info
72
73   Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
74
75   $ scripts/installation_check.pl -ro
76
77   Sofern das Upgrade von einer früheren Version als 3.1.0 geschieht auch die
78   Upgradehinweise der Vorversionen beachten.
79
80 * Druckvorlagen auf shipto-Verwendung prüfen
81
82   Hier hat sich das Standardverhalten geändert und ggf. werden shipto* nicht mehr
83   ausgedruckt, hier müssten die Druckvorlagen individuell angepasst werden, s.a.
84   Changelog -> Verkaufsbeleg-Ausdruck.
85
86 Upgrade auf v3.1.0
87 ==================
88
89
90 * BEVOR ein Aufruf im Administrationsbereich erfolgt, muss zwingend der
91   webdav Ordner im Installationspfad vorhanden sein!
92    -  mkdir webdav/
93    -  Rechte für webserver setzen ($ chmod www-data webdav/)
94   Dieses "Feature" war in vorhergehenden Versionen optional, wird aber
95   für das Upgrade auf Mandantenfähigkeit vorausgesetzt.
96
97 * Neue Softwarevoraussetzungen: Perl v5.10.1 oder neuer sowie
98   PostgreSQL 8.4 oder neuer werden zwingend vorausgesetzt. Ein Betrieb
99   mit älteren Versionen ist nicht mehr möglich.
100
101 * Neue Perl-Modul-Abhängigkeiten:
102
103   * File::Copy::Recursive
104   * Rose::DB::Object muss v0.788 oder neuer sein (aufgrund eines Bugs
105     in besagtem Modul im Zusammenspiel mit PostgreSQL)
106
107   Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
108
109   $ scripts/installation_check.pl -ro
110
111 * Die Datenbank muss zwingend Unicode als Encoding nutzen. Daher wird
112   auch die Konfigurationsvariable "system.dbcharset" nicht mehr
113   unterstützt.
114
115 * Einführung von Mandanten. Früher war die Konfiguration der
116   Datenbanken für jeden Benutzer getrennt vorzunehmen. Mit diesem
117   Release wurden Mandanten eingeführt: ein Mandant bekommt einen Namen
118   sowie die Datenbankkonfiguration, und Benutzer bekommen
119   Zugriffsrechte auf einen oder mehrere Mandanten.
120
121   Um dieses Update durchzuführen, müssen Sie sich einmal im
122   Administrationsbereich anmelden. Vorher ist kein Login im
123   Benutzerbereich möglich.
124
125   Die neue Struktur bedingt, dass viele Scripte, die bisher zur
126   Konfiguration nur einen Benutzer verlangt haben, jetzt auch einen
127   Mandanten verlangen. Die Konfiguration dieser Scripte ist deshalb
128   manuell anzupassen. Dazu gehören:
129
130   - der Task-Server (config/kivitendo.conf)
131   - CSV-Import von der Shell aus (scripts/csv-import-from-shell.sh)
132
133   Die folgenden Scripte sind ebenfalls betroffen, allerdings nur für
134   Entwickler interessant:
135
136   - scripts/dbupgrade2_tool.pl
137   - scripts/rose_auto_create_model.pl
138
139 * Neue Benutzerrechte
140
141   Diese müssen bei vorhandenen Gruppen eventuell nachgepflegt werden. Z.B. bei
142   der Gruppe Vollzugriff
143
144   - Stammdaten -> Kunden und Lieferanten erfassen. Alle Lieferanten bearbeiten.
145     Alle Kunden bearbeiten
146   - Konfiguration -> Verändern der kivitendo-Installationseinstellungen (die
147     meisten Menüpunkte unterhalb von 'System')
148
149 * Die alten ungepflegten Druckvorlagenvarianten French und Service
150   wurden entfernt.
151
152 * Die HTML-Druckvorlagen der Berichte (GuV, Bilanz, SuSa, BWA, UStVA) werden
153   jetzt alle zentral in den Webvorlagen verwaltet, es werden keine
154   benutzerangepasste Versionen der Druckvorlagen im Druckvorlagenverzeichnis
155   mehr unterstützt.
156
157 Upgrade auf v3.0.0
158 ==================
159
160 * Neue Abhängigkeiten
161
162   * Clone 1.16
163   * Email::MIME
164   * FCGI jetzt min Version 0.72
165   * Test::Harness 3.00
166   * IO::Socket::SSL
167   * Net::LDAP
168   * Net::SMTP::SSL
169   * Net::SSLGlue
170
171   Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
172
173   $ scripts/installation_check.pl -ro
174
175 * Neue Entwicklerabhängigkeiten
176
177   * Test::Deep
178   * GD 2.00
179
180 * Diverse umstrittene Features zum nicht standardkonformen Umgang mit gebuchten
181   Rechnungen sind jetzt standardmässig deaktiviert und müssen unter "System" ->
182   "Mandantenkonfiguration" aktiviert werden.
183
184 * Die Übersetzungen "de_DE" und "fr" für die alternative deutsche Version und
185   französische Version respektive wurden entfernt. Es bleiben offiziell
186   unterstützte Übersetzungen in Deutsch ("de") und English ("en").
187
188 * Dieses ist die letzte Version, die Perl-Versionen vor 5.10.1
189   unterstützen wird.  Ab dem nächsten Release werden Sprachkonstrukte
190   verwendet werden, die nicht mehr in 5.8 kompilieren, und Module, die
191   seit v5.10.1 zu den Coremodulen gehören, werden ab dann nicht mehr
192   als explizite Abhängigkeiten gelistet.
193
194
195 Upgrade auf v2.7.0
196 ==================
197
198 * In der Version 2.7.0 wird das XUL Menü entfernt. Alle Benutzer die das XUL
199   Menü noch eingestellt haben, werden beim ersten Einloggen auf ein
200   Kompatibilitätsmenü gesetzt. Das Javascriptmenü wurde entsprechend erweitert
201   um der Funktionalität nahe zu kommen.
202
203 * Das Lizenzenfeature wurde ersatzlos entfernt.
204
205 * In den LaTeX Vorlagen gilt der Befehl "pagebreak" und die dazugehörigen
206   "sumcarriedforward" und "lastpage" als deprecated und werden in einer
207   kommenden Version komplett entfernt. Die Mechanik ist anfällig gegenüber
208   subtilen Formatierungsfehlern bei bestimmten Zahlenformaten und ist
209   grundsätzlich fehlerhaft in den gemachten Annahmen über den verfügbaren Platz
210   auf einer Seite. Die Standardvorlagen sind entsprechend angepasst worden
211   und müssen in der Administration neu angelegt werden.
212
213 * Das Druckvorlagensystem wurde umgestellt, dadurch ist der Name "print" für
214   Druckvorlagen jetzt reserviert. Wenn eine Ihrer Vorlagensätze "print" heisst,
215   benennen Sie ihn um bevor Sie das Update starten.
216
217 * Die Druckvorlagen für USTVA vor 2012 wurden entfernt und das Ausdrucken von
218   USTVA als PDF ist deprecated. Da die Eingabe von Erklärungen als PDF nicht
219   mehr gestattet ist, sollten Archivkopien der USTVA direkt bei Elster bezogen
220   werden, oder auf anderem Wege erstellt werden. Der Prozess dazu wird sich in
221   einer kommenden Version ändern.
222
223 * Die Namen der von LaTeX generierten PDF-Dateien sind jetzt in der
224   eingestellten Dokumentensprache, nicht mehr in der Oberflächensprache des
225   Bearbeiters.
226
227 * Neue Abhängigkeiten
228
229   * JSON
230   * String::ShellQuote
231   * Digest::SHA (optional, empfohlen)
232
233   Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
234
235   $ scripts/installation_check.pl -ro
236
237 * CSV-Import wurde neu in Perl implementiert
238
239   Der PHP-Code wurde entfernt. Automatische Skripte, die per Aufruf von
240   lxo-import/partsB.php?cron=1 die Datei parts.csv importiert haben,
241   funktionieren nicht mehr.  Stattdessen kann scripts/csv-import-from-shell.sh
242   benutzt werden. Im Unterschied zur PHP-Version werden unbekannte Warengruppen
243   nicht mehr automatisch angelegt, stattdessen bricht das Skript ab.
244
245 * Rechteverwaltung
246
247   * Das Recht "Kunden und Lieferanten bearbeiten" wurde aufgespalten in zwei
248     einzelne Rechte. Ein Updatescript passt bestehende Gruppenaentsprechend an.
249   * Das Recht "Preise nd Rabatte bearbeiten" wurde neu eingeführt und ist
250     notwendig um in Belegen Preise ändern zu können. Es wird beim Upgrade
251     automatisch allen Benutzern erteilt.
252   * Das Recht "Administration" wurde neu eingeführt, und ist dazu da
253     administrative Tätigkeiten an der Mandantendatenbank aus einm Benutzerlogin
254     heraus durchzuführen. Es ist standardmäßig NICHT vergeben.
255   * Der Vorlageneditor wurde unter das Recht Administration gestellt, war
256     vorher Konfiguration.
257
258
259 Upgrade auf v2.6.3
260 ==================
261
262 1. Mit Version 2.6.3. wurden die beiden Konfigurationsdateien
263 authentication.pl und lx-erp.conf, sowie deren Varianten,
264 abgeschafft. Stattdessen gibt es nun die Datei lx_office.conf, die
265 aber erst neu angelegt werden muß. Als Vorlage dient hierfür die Datei
266 lx_office.conf.default. Die entsprechenden Werte muß man selber neu
267 konfigurieren, dies ist automatisiert zu fehleranfällig.
268
269 Nach dem Upgrade kann man sich so lange nicht anmelden, bis lx_office.conf
270 angelegt und authentication.pl und lx-erp.conf gelöscht oder verschoben wurden.
271
272 Es gibt keine local-Variante der lx_office.conf, arbeitet man mit git sollte
273 man lx_office.conf nicht einchecken.
274
275 Eine etwas ausführlichere Beschreibung findet sich in Kapitel 2.3
276 "Lx-Office-Konfigurationsdatei" in doc/Lx-Office-Dokumentation.pdf
277
278 2. Eine neu hinzugekommene Komponente ist der Task-Server. Hierbei
279 handelt es sich um einen Dämonen, der im Hintergrund läuft, in
280 regelmäßigen Abständen nach abzuarbeitenden Aufgaben sucht und diese
281 zu festgelegten Zeitpunkten abarbeitet (ähnlich wie Cron). Dieser
282 Dämon wird bisher nur für die Erzeugung der wiederkehrenden Rechnungen
283 benutzt, wird aber in Zukunft deutlich mehr Aufgaben übertragen
284 bekommen. Die Einrichtung des Dämonen wird in der
285 Installationsdokumentation im Abschnitt "Der Task-Server" beschrieben.
286
287 3. Mit Version 2.6.3 sind einige Abhängigkeiten von Perl-Modulen
288 hinzugekommen. Bitte führen sie vor dem ersten Aufrufen der einmal
289 den folgenden Befehl im Lx-Office Verzeichnis aus:
290
291 $ scripts/installation_check.pl
292
293 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
294 der Installationsanweisung.
295
296 Zumindest folgende Module sind neu benötigt:
297
298 * Config::Std
299 * Params::Validate
300
301 4. Sollten Sie die FCGI-Version einsetzen, das Apache-Modul
302 "mod_fcgid" (nicht "mod_fastcgi") benutzen und von diesem Modul die
303 Version v2.6.3 oder später installiert haben, so ist außerdem wichtig,
304 seinen Parameter "FcgidMaxRequestLen" deutlich zu erhöhen, weil sich
305 dieser im Release mod_fcgid-Release v2.6.3 deutlich geändert
306 hat. Details dazu finden sich in Kapitel 2.5.2 "Konfiguration für
307 FastCGI/FCGI" in doc/Lx-Office-Dokumentation.pdf
308
309
310 Upgrade auf v2.6.2
311 ==================
312
313  Vor dem Einloggen
314  -----------------
315
316 Mit Version 2.6.2 sind einige Abhängigkeiten von Perl-Modulen hinzugekommen.
317 Bitte führen sie vor dem ersten Aufrufen der einmal den folgenden Befehl im
318 Lx-Office Verzeichnis aus:
319
320 $ scripts/installation_check.pl
321
322 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
323 der Installationsanweisung.
324
325 Zumindest folgende Module sind neu benötigt:
326
327 * Rose::Object, Rose::DB und Rose::DB::Object (die Installation von
328   Rose::DB::Object via CPAN oder den Paketmechanismus Ihrer
329   Distribution sollte für die automatische Installation der anderen
330   zwei Pakete sorgen)
331
332  Neue Gruppenrechte
333  ------------------
334
335 Es wurde ein neues Recht "Druck" eingeführt. Dieses bestimmt, ob die
336 Benutzerin das Menü "Druck" zu Gesicht bekommt oder nicht, unabhängig
337 davon, wie die Rechte für die einzelnen Unterpunkte gesetzt sind.
338
339 Für bereits bestehende Gruppen muss es sofern gewünscht vom
340 Administrator manuell gewährt werden.
341
342
343 Upgrade auf v2.6.1
344 ==================
345
346  Vor dem Einloggen
347  -----------------
348
349 Mit Version 2.6.1 wurden die Listen der benötigten Perl Module überarbeitet.
350 Einige der vorher in den Abhängigkeiten gelisteten Module waren Coremodules
351 (und damit in jeder Perldistribution vorhanden), oder ihrerseits Abhängigkeiten
352 anderer benötigter Module. Durch die Überarbeitung hat sich die Liste deutlich
353 geändert.
354
355 Bitte führen sie vor dem ersten Aufrufen der einmal den folgenden Befehl im
356 Lx-Office Verzeichnis aus:
357
358 $ scripts/installation_check.pl
359
360 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
361 der Installationsanweisung.
362
363 Zumindest folgende Module sind neu benötigt:
364
365 * URI
366 * XML::Writer
367
368  Neue Konfigurationsvariablen
369  ----------------------------
370
371 In der config/lx-erp.conf ist als neue Option $show_best_before hinzugekommen.
372 Die Variable kontrolliert die Anzeige von Mindesthaltbarkeitsdaten. Sie ist
373 standardmäßig deaktiviert.