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