1 Wichtige Hinweise zum Upgrade von älteren Versionen
2 ===================================================
5 ** BITTE FERTIGEN SIE VOR DEM UPGRADE EIN BACKUP IHRER DATENBANK(EN) AN! **
7 Upgrade auf v3.4.x Unstable
8 ===========================
10 * Die Tabelle "files" ist hinzugekommen. Diese wird von der Dateiverwaltung
11 verwendet. Zum Erkennen der Dateiinhalte wird das Paket File::MimeInfo::Magic
14 * Die PDF-Generierung ist erweitert. Beim Massendruck können auch Leerseiten
15 eingebaut werden, z.B. falls zweiseitg ausgedruckt wird. Statt die Anzahl
16 Seiten per Ghostscript zu ermitteln wird dazu "pdfinfo" genutzt.
17 Das muß installiert sein. Der Script "installation_check.pl" prüft dies.
19 * In der Rechte-Tabelle auth.master_rights wurden alle Positionswerte mit 100
20 multipliziert, um Lücken für neue Rechte zu schaffen.
22 * In der Tabelle "customer" wurde die Spalte "klass" nach "pricegroup_id"
23 migriert. Bei Kunden ohne Preisgruppe ist der Datenbankwert jetzt NULL statt
24 "0". Falls Kunden per CSV-Import importiert werden muß dieses Feld in der
25 CSV-Datei ebenfalls umbenannt werden.
27 * Es wird jetzt Postgres 9.1 vorausgesetzt um GIN Indizes zu verwenden.
28 Da hier verschiedene Bedingungen auf dem Zielsystem erfüllt werden
29 müssen, ist dies mit dem may_fail Flag gekennzeichnet.
30 Wer sicher sein will, dass die Optimierung bei ihm aktiviert ist,
31 sollte das Skript direkt in der Datenbank ausführen.
32 $ cd /var/www/kivitendo-erp/
33 $ psql -U postgres -h 127.0.0.1 meinekividb
34 # \i sql/Pg-upgrade2/trigram_indices.sql
37 Die Erweiterung befindet sich in dem contrib Bereich von postgres,
38 bei den meisten Distributionen muss dieses Paket extra installiert werden
39 (s.a. https://www.postgresql.org/docs/9.1/static/contrib.html).
41 Bei debian/ubuntu befindet sich dies bspw. in postgresql-contrib
42 i.d.R. verlangt die Erweiterung superuser Rechte, daher
43 muss für die Erstellung der Erweiterung bspw. mit dem Benutzer postgres
44 ausgeführt werden, Details s.a. https://www.postgresql.org/docs/9.1/static/pgtrgm.html
46 * Für das neue Feature Lieferantenbriefe ist die Standardvorlage für Briefe
47 (letter.tex) angepasst worden. Statt letter.customer muss der Adressat jetzt
48 aus letter.custoemr_vendor erzeugt werden.
50 * In der Tabelle parts wurde die Boolean-Spalte "assembly" entfernt. Zur
51 Erkennung von Waren/Dienstleistungen/Erzeugnissen gibt es nun in parts eine
52 neue Spalte part_type vom ENUM-Typ, der auf die Werte 'part', 'service',
53 'assembly' und 'assortment' beschränkt ist.
55 * In der Tabelle parts wurde die Spalten inventory_accno_id, expense_accno_id
56 und income_accno_id entfernt. Deren Funktionalität wurde schon lange durch
57 Buchungsgruppen ersetzt und für die Erkennung des Artikeltyps gibt es nun die
63 * Neue Druckvariante Gelangensbestätigung für Verkaufs-Aufträge
65 Im Standard-Vorlagensatz RB befindet sich als Vorlage die ic_supply.tex
66 als Orientierung für die Anpassung an eigene Vorlagen. Eigene Vorlagen
67 müssen entsprechend um diesen Typ für die 3.4.1 erweitert werden.
69 * Druckvorlagen für Briefe
71 Die Erzeugung der Druckausgabe für die Brieffunktion wurde auf die
72 Verwendung des Template Toolkits umgestellt. Dazu muss die verwendete
73 Druckvorlage "letter.tex" angepasst werden. Im Standard-Vorlagensatz RB ist
74 das bereits geschehen. Falls keine manuellen Änderungen an der "letter.tex"
75 aus einer vorherigen Version gemacht wurden, reicht es, diese Datei
76 ("templates/print/RB/letter.tex") in das verwendete Vorlagenverzeichnis zu
77 kopieren. Ansonsten kann diese Datei als Beispiel dienen.
83 * Neue Perl-Modul-Abhängigkeiten:
85 * Algorithm::CheckDigits
88 Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
90 $ scripts/installation_check.pl -ro
92 * Der in der Dokumentation beschriebene Mechanismus für die CGI-Anbindung
93 (2.6.1 Grundkonfiguration mittels CGI) wurde geändert. Ein einfacher Alias
94 auf das Programmverzeichnis funktioniert nicht mehr, und es muss immer ein
95 AliasMatch auf einen dispatcher eingerichtet werden. Die Dokumentation wurde
96 aktualisiert. Für Benutzer der empfohlenen FastCGI Anbindung ändert sich
99 * Der Task-Server ist nun mandantenfähig. Für jeden Mandanten, für den
100 der Task-Server laufen soll, muss in der Administrationsoberfläche
101 in der Konfiguration des Mandanten hinterlegt werden, welchen
102 kivitendo-Benutzer der Task-Server nutzen soll. Ist bei einem
103 Mandanten kein Benutzer hinterlegt, so ignoriert der Task-Server
106 Im Gegenzug wurden die beiden Konfigurations-Einstellungen »client«
107 und »login« aus dem Abschnitt [task_server] entfernt. Der
108 Task-Server prüft beim Starten allerdings, ob diese Einstellungen
109 noch existieren und verweigert den Start mit einer hilfreichen
110 Fehlermeldung, solange sie noch vorhanden sind.
112 * Die Unterstützung unsicherer Passwort-Hashing-Mechanism wurde
113 entfernt. Für BenutzerInnen, die noch alte Mechanismen verwenden,
114 müssen die Passwörter einmalig in der Administrationsoberfläche
115 zurückgesetzt werden.
117 Dies betrifft nur Accounts, deren Passwort sich das letzte Mal vor
118 kivitendo 2.7.0 geändert hat.
123 * Bei Upgrade von Versionen vor v.3.2.x wie immer erst die dortigen
124 Upgradehinweise beachten.
126 * Es gibt keine neuen Perl-Modul-Abhängigkeiten.
128 * Die alte ungepflegte Druckvorlagenvariante "Standard" wurde entfernt.
129 Bereits verwendete Druckvorlagen, die darauf aufbauen, funktionieren
132 * Für die Verwendung des MT940 Import Features der Bankerweiterung muß
133 aqbanking installiert werden. Dies wird nur für die Konvertierung vom MT940
134 ins CSV Format benötigt, das Kommandozeilentool "aqbanking-cli" befindet sich
135 z.B. unter Ubuntu im Paket aqbanking-tools.
140 * Neue Perl-Modul-Abhängigkeiten:
147 Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
149 $ scripts/installation_check.pl -ro
151 Sofern das Upgrade von einer früheren Version als 3.1.0 geschieht auch die
152 Upgradehinweise der Vorversionen beachten.
154 * Druckvorlagen auf shipto-Verwendung prüfen
156 Hier hat sich das Standardverhalten geändert und ggf. werden shipto* nicht mehr
157 ausgedruckt, hier müssten die Druckvorlagen individuell angepasst werden, s.a.
158 Changelog -> Verkaufsbeleg-Ausdruck.
164 * BEVOR ein Aufruf im Administrationsbereich erfolgt, muss zwingend der
165 webdav Ordner im Installationspfad vorhanden sein!
167 - Rechte für webserver setzen ($ chmod www-data webdav/)
168 Dieses "Feature" war in vorhergehenden Versionen optional, wird aber
169 für das Upgrade auf Mandantenfähigkeit vorausgesetzt.
171 * Neue Softwarevoraussetzungen: Perl v5.10.1 oder neuer sowie
172 PostgreSQL 8.4 oder neuer werden zwingend vorausgesetzt. Ein Betrieb
173 mit älteren Versionen ist nicht mehr möglich.
175 * Neue Perl-Modul-Abhängigkeiten:
177 * File::Copy::Recursive
178 * Rose::DB::Object muss v0.788 oder neuer sein (aufgrund eines Bugs
179 in besagtem Modul im Zusammenspiel mit PostgreSQL)
181 Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
183 $ scripts/installation_check.pl -ro
185 * Die Datenbank muss zwingend Unicode als Encoding nutzen. Daher wird
186 auch die Konfigurationsvariable "system.dbcharset" nicht mehr
189 * Einführung von Mandanten. Früher war die Konfiguration der
190 Datenbanken für jeden Benutzer getrennt vorzunehmen. Mit diesem
191 Release wurden Mandanten eingeführt: ein Mandant bekommt einen Namen
192 sowie die Datenbankkonfiguration, und Benutzer bekommen
193 Zugriffsrechte auf einen oder mehrere Mandanten.
195 Um dieses Update durchzuführen, müssen Sie sich einmal im
196 Administrationsbereich anmelden. Vorher ist kein Login im
197 Benutzerbereich möglich.
199 Die neue Struktur bedingt, dass viele Scripte, die bisher zur
200 Konfiguration nur einen Benutzer verlangt haben, jetzt auch einen
201 Mandanten verlangen. Die Konfiguration dieser Scripte ist deshalb
202 manuell anzupassen. Dazu gehören:
204 - der Task-Server (config/kivitendo.conf)
205 - CSV-Import von der Shell aus (scripts/csv-import-from-shell.sh)
207 Die folgenden Scripte sind ebenfalls betroffen, allerdings nur für
208 Entwickler interessant:
210 - scripts/dbupgrade2_tool.pl
211 - scripts/rose_auto_create_model.pl
213 * Neue Benutzerrechte
215 Diese müssen bei vorhandenen Gruppen eventuell nachgepflegt werden. Z.B. bei
216 der Gruppe Vollzugriff
218 - Stammdaten -> Kunden und Lieferanten erfassen. Alle Lieferanten bearbeiten.
219 Alle Kunden bearbeiten
220 - Konfiguration -> Verändern der kivitendo-Installationseinstellungen (die
221 meisten Menüpunkte unterhalb von 'System')
223 * Die alten ungepflegten Druckvorlagenvarianten French und Service
226 * Die HTML-Druckvorlagen der Berichte (GuV, Bilanz, SuSa, BWA, UStVA) werden
227 jetzt alle zentral in den Webvorlagen verwaltet, es werden keine
228 benutzerangepasste Versionen der Druckvorlagen im Druckvorlagenverzeichnis
234 * Neue Abhängigkeiten
238 * FCGI jetzt min Version 0.72
245 Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
247 $ scripts/installation_check.pl -ro
249 * Neue Entwicklerabhängigkeiten
254 * Diverse umstrittene Features zum nicht standardkonformen Umgang mit gebuchten
255 Rechnungen sind jetzt standardmässig deaktiviert und müssen unter "System" ->
256 "Mandantenkonfiguration" aktiviert werden.
258 * Die Übersetzungen "de_DE" und "fr" für die alternative deutsche Version und
259 französische Version respektive wurden entfernt. Es bleiben offiziell
260 unterstützte Übersetzungen in Deutsch ("de") und English ("en").
262 * Dieses ist die letzte Version, die Perl-Versionen vor 5.10.1
263 unterstützen wird. Ab dem nächsten Release werden Sprachkonstrukte
264 verwendet werden, die nicht mehr in 5.8 kompilieren, und Module, die
265 seit v5.10.1 zu den Coremodulen gehören, werden ab dann nicht mehr
266 als explizite Abhängigkeiten gelistet.
272 * In der Version 2.7.0 wird das XUL Menü entfernt. Alle Benutzer die das XUL
273 Menü noch eingestellt haben, werden beim ersten Einloggen auf ein
274 Kompatibilitätsmenü gesetzt. Das Javascriptmenü wurde entsprechend erweitert
275 um der Funktionalität nahe zu kommen.
277 * Das Lizenzenfeature wurde ersatzlos entfernt.
279 * In den LaTeX Vorlagen gilt der Befehl "pagebreak" und die dazugehörigen
280 "sumcarriedforward" und "lastpage" als deprecated und werden in einer
281 kommenden Version komplett entfernt. Die Mechanik ist anfällig gegenüber
282 subtilen Formatierungsfehlern bei bestimmten Zahlenformaten und ist
283 grundsätzlich fehlerhaft in den gemachten Annahmen über den verfügbaren Platz
284 auf einer Seite. Die Standardvorlagen sind entsprechend angepasst worden
285 und müssen in der Administration neu angelegt werden.
287 * Das Druckvorlagensystem wurde umgestellt, dadurch ist der Name "print" für
288 Druckvorlagen jetzt reserviert. Wenn eine Ihrer Vorlagensätze "print" heisst,
289 benennen Sie ihn um bevor Sie das Update starten.
291 * Die Druckvorlagen für USTVA vor 2012 wurden entfernt und das Ausdrucken von
292 USTVA als PDF ist deprecated. Da die Eingabe von Erklärungen als PDF nicht
293 mehr gestattet ist, sollten Archivkopien der USTVA direkt bei Elster bezogen
294 werden, oder auf anderem Wege erstellt werden. Der Prozess dazu wird sich in
295 einer kommenden Version ändern.
297 * Die Namen der von LaTeX generierten PDF-Dateien sind jetzt in der
298 eingestellten Dokumentensprache, nicht mehr in der Oberflächensprache des
301 * Neue Abhängigkeiten
305 * Digest::SHA (optional, empfohlen)
307 Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
309 $ scripts/installation_check.pl -ro
311 * CSV-Import wurde neu in Perl implementiert
313 Der PHP-Code wurde entfernt. Automatische Skripte, die per Aufruf von
314 lxo-import/partsB.php?cron=1 die Datei parts.csv importiert haben,
315 funktionieren nicht mehr. Stattdessen kann scripts/csv-import-from-shell.sh
316 benutzt werden. Im Unterschied zur PHP-Version werden unbekannte Warengruppen
317 nicht mehr automatisch angelegt, stattdessen bricht das Skript ab.
321 * Das Recht "Kunden und Lieferanten bearbeiten" wurde aufgespalten in zwei
322 einzelne Rechte. Ein Updatescript passt bestehende Gruppenaentsprechend an.
323 * Das Recht "Preise nd Rabatte bearbeiten" wurde neu eingeführt und ist
324 notwendig um in Belegen Preise ändern zu können. Es wird beim Upgrade
325 automatisch allen Benutzern erteilt.
326 * Das Recht "Administration" wurde neu eingeführt, und ist dazu da
327 administrative Tätigkeiten an der Mandantendatenbank aus einm Benutzerlogin
328 heraus durchzuführen. Es ist standardmäßig NICHT vergeben.
329 * Der Vorlageneditor wurde unter das Recht Administration gestellt, war
330 vorher Konfiguration.
336 1. Mit Version 2.6.3. wurden die beiden Konfigurationsdateien
337 authentication.pl und lx-erp.conf, sowie deren Varianten,
338 abgeschafft. Stattdessen gibt es nun die Datei lx_office.conf, die
339 aber erst neu angelegt werden muß. Als Vorlage dient hierfür die Datei
340 lx_office.conf.default. Die entsprechenden Werte muß man selber neu
341 konfigurieren, dies ist automatisiert zu fehleranfällig.
343 Nach dem Upgrade kann man sich so lange nicht anmelden, bis lx_office.conf
344 angelegt und authentication.pl und lx-erp.conf gelöscht oder verschoben wurden.
346 Es gibt keine local-Variante der lx_office.conf, arbeitet man mit git sollte
347 man lx_office.conf nicht einchecken.
349 Eine etwas ausführlichere Beschreibung findet sich in Kapitel 2.3
350 "Lx-Office-Konfigurationsdatei" in doc/Lx-Office-Dokumentation.pdf
352 2. Eine neu hinzugekommene Komponente ist der Task-Server. Hierbei
353 handelt es sich um einen Dämonen, der im Hintergrund läuft, in
354 regelmäßigen Abständen nach abzuarbeitenden Aufgaben sucht und diese
355 zu festgelegten Zeitpunkten abarbeitet (ähnlich wie Cron). Dieser
356 Dämon wird bisher nur für die Erzeugung der wiederkehrenden Rechnungen
357 benutzt, wird aber in Zukunft deutlich mehr Aufgaben übertragen
358 bekommen. Die Einrichtung des Dämonen wird in der
359 Installationsdokumentation im Abschnitt "Der Task-Server" beschrieben.
361 3. Mit Version 2.6.3 sind einige Abhängigkeiten von Perl-Modulen
362 hinzugekommen. Bitte führen sie vor dem ersten Aufrufen der einmal
363 den folgenden Befehl im Lx-Office Verzeichnis aus:
365 $ scripts/installation_check.pl
367 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
368 der Installationsanweisung.
370 Zumindest folgende Module sind neu benötigt:
375 4. Sollten Sie die FCGI-Version einsetzen, das Apache-Modul
376 "mod_fcgid" (nicht "mod_fastcgi") benutzen und von diesem Modul die
377 Version v2.6.3 oder später installiert haben, so ist außerdem wichtig,
378 seinen Parameter "FcgidMaxRequestLen" deutlich zu erhöhen, weil sich
379 dieser im Release mod_fcgid-Release v2.6.3 deutlich geändert
380 hat. Details dazu finden sich in Kapitel 2.5.2 "Konfiguration für
381 FastCGI/FCGI" in doc/Lx-Office-Dokumentation.pdf
390 Mit Version 2.6.2 sind einige Abhängigkeiten von Perl-Modulen hinzugekommen.
391 Bitte führen sie vor dem ersten Aufrufen der einmal den folgenden Befehl im
392 Lx-Office Verzeichnis aus:
394 $ scripts/installation_check.pl
396 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
397 der Installationsanweisung.
399 Zumindest folgende Module sind neu benötigt:
401 * Rose::Object, Rose::DB und Rose::DB::Object (die Installation von
402 Rose::DB::Object via CPAN oder den Paketmechanismus Ihrer
403 Distribution sollte für die automatische Installation der anderen
409 Es wurde ein neues Recht "Druck" eingeführt. Dieses bestimmt, ob die
410 Benutzerin das Menü "Druck" zu Gesicht bekommt oder nicht, unabhängig
411 davon, wie die Rechte für die einzelnen Unterpunkte gesetzt sind.
413 Für bereits bestehende Gruppen muss es sofern gewünscht vom
414 Administrator manuell gewährt werden.
423 Mit Version 2.6.1 wurden die Listen der benötigten Perl Module überarbeitet.
424 Einige der vorher in den Abhängigkeiten gelisteten Module waren Coremodules
425 (und damit in jeder Perldistribution vorhanden), oder ihrerseits Abhängigkeiten
426 anderer benötigter Module. Durch die Überarbeitung hat sich die Liste deutlich
429 Bitte führen sie vor dem ersten Aufrufen der einmal den folgenden Befehl im
430 Lx-Office Verzeichnis aus:
432 $ scripts/installation_check.pl
434 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
435 der Installationsanweisung.
437 Zumindest folgende Module sind neu benötigt:
442 Neue Konfigurationsvariablen
443 ----------------------------
445 In der config/lx-erp.conf ist als neue Option $show_best_before hinzugekommen.
446 Die Variable kontrolliert die Anzeige von Mindesthaltbarkeitsdaten. Sie ist
447 standardmäßig deaktiviert.