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