1 Wichtige Hinweise zum Upgrade von älteren Versionen
2 ===================================================
5 ** BITTE FERTIGEN SIE VOR DEM UPGRADE EIN BACKUP IHRER DATENBANK(EN) AN! **
10 * Fallback-Module entfernt
12 Einige Default-Module die als Fallback zu Verfügung standen, werden ab
13 dieser Version nicht mehr mit ausgeliefert.
14 Bitte vor dem Anmelden an der Weboberfläche 'scripts/installation_check.pl -v' ausführen
15 und die entsprechenden Module installieren.
16 S.a. weitere Details in der aktuellen kivitendo-Dokumentation.
21 * Neue Perlabhängigkeiten
23 * LWP::Authen::Digest für WebshopApi
24 * LWP::UserAgent für WebshopApi
26 * Zwingende Postgres Erweiterung pg_trgm(Trigram)
28 Die Trigramerweiterung bietet eine Ähnlichkeitsuche.
29 Diese verwendet das Shopmodul, wenn installiert, beim Bestellimport
30 um zu entscheiden ob ein Kunde neu angelegt oder als Vorschlag angezeigt wird.
31 Die Erweiterung wird bisher nur beim Ableich der Straße genutzt, da hier oft
32 unterschiedliche Schreibweisen vorhanden sind.
33 z.B Dorfstraße, Dorfstrasse, Dorfstr., Dorf Straße usw..
34 So wird vermieden, dass Kunden eventuell doppelt angelegt werden.
36 * Zunächst muss geprüft werden, ob die Erweiterung prinzipiell für postgres
37 vorhanden ist, dafür kann folgendes Select-Statement in template1 genutzt werden:
39 # select * from pg_available_extensions where name ='pg_trgm';
41 Sollte bei diesem Statement kein Ergebnis kommen, so muss die entsprechende
42 Erweiterung für die eigene Distribution nachinstalliert werden.
43 Bei debian/ubuntu befindet sich diese im Paket postgresql-contrib
46 $ apt install postgresql-contrib
50 * Diese Erweiterung wird mit dem SQL-Updatescript sql/Pg-upgrade2/trigram_extension.sql
51 und Datenbank-Super-Benutzer Rechten automatisch installiert.
52 Dazu braucht der DatenbankSuperbenutzer "postgres" ein Passwort
60 Passwort und Benutzername können jetzt beim Anlegen einer neuen Datenbank bzw.
61 bei Updatescripten, die SuperUserRechte benötigen eingegeben werden.
64 * Änderungen DATEV-Export Format CSV
66 Die Felder Belegfeld2 und Buchungsbeschreibung werden nicht mehr befüllt.
67 Im KNE-Export war im Belegfeld2 die Fälligkeit der Buchung gesetzt und in
68 Buchungsbeschreibung der Kunden- oder Lieferantenname.
69 Bei nicht valider Umsatz-Steuer-Identnummer wird der Export abgelehnt.
70 Da das Feld ein Freitext-Feld und keine Validierung bei der Eingabe hat(te)
71 unternimmt kivitendo keine eigene Normalisierung, bzw. Konvertierung
74 Eine Bereinigung der Ust-IDs muss der kivitendo-Admin eigenverantwortlich unternehmen.
75 Hier exemplarisch ein SQL-Schnipsel zum Ersetzen der Leerzeichen in diesem Feld:
76 UPDATE customer SET ustid=REPLACE(ustid, ' ', '') WHERE ustid LIKE '% %';
79 ===========================
81 * Neue Perl Abhängigkeiten:
83 * File::MimeInfo - für den Dateiupload
85 * Thread::Pool::Simple
87 * Neue externe Abhängigkeiten:
91 * In der Rechte-Tabelle auth.master_rights wurden alle Positionswerte mit 100
92 multipliziert, um Lücken für neue Rechte zu schaffen.
94 * In der Tabelle "customer" wurde die Spalte "klass" nach "pricegroup_id"
95 migriert. Bei Kunden ohne Preisgruppe ist der Datenbankwert jetzt NULL statt
96 "0". Falls Kunden per CSV-Import importiert werden muß dieses Feld in der
97 CSV-Datei ebenfalls umbenannt werden.
99 * Für das neue Feature Lieferantenbriefe ist die Standardvorlage für Briefe
100 (letter.tex) angepasst worden. Statt letter.customer muss der Adressat jetzt
101 aus letter.custoemr_vendor erzeugt werden.
103 * In der Tabelle parts wurde die Boolean-Spalte "assembly" entfernt. Zur
104 Erkennung von Waren/Dienstleistungen/Erzeugnissen gibt es nun in parts eine
105 neue Spalte part_type vom ENUM-Typ, der auf die Werte 'part', 'service',
106 'assembly' und 'assortment' beschränkt ist.
108 * In der Tabelle parts wurde die Spalten inventory_accno_id, expense_accno_id
109 und income_accno_id entfernt. Deren Funktionalität wurde schon lange durch
110 Buchungsgruppen ersetzt und für die Erkennung des Artikeltyps gibt es nun die
116 * Neue Druckvariante Gelangensbestätigung für Verkaufs-Aufträge
118 Im Standard-Vorlagensatz RB befindet sich als Vorlage die ic_supply.tex
119 als Orientierung für die Anpassung an eigene Vorlagen. Eigene Vorlagen
120 müssen entsprechend um diesen Typ für die 3.4.1 erweitert werden.
122 * Druckvorlagen für Briefe
124 Die Erzeugung der Druckausgabe für die Brieffunktion wurde auf die
125 Verwendung des Template Toolkits umgestellt. Dazu muss die verwendete
126 Druckvorlage "letter.tex" angepasst werden. Im Standard-Vorlagensatz RB ist
127 das bereits geschehen. Falls keine manuellen Änderungen an der "letter.tex"
128 aus einer vorherigen Version gemacht wurden, reicht es, diese Datei
129 ("templates/print/RB/letter.tex") in das verwendete Vorlagenverzeichnis zu
130 kopieren. Ansonsten kann diese Datei als Beispiel dienen.
136 * Neue Perl-Modul-Abhängigkeiten:
138 * Algorithm::CheckDigits
141 Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
143 $ scripts/installation_check.pl -ro
145 * Der in der Dokumentation beschriebene Mechanismus für die CGI-Anbindung
146 (2.6.1 Grundkonfiguration mittels CGI) wurde geändert. Ein einfacher Alias
147 auf das Programmverzeichnis funktioniert nicht mehr, und es muss immer ein
148 AliasMatch auf einen dispatcher eingerichtet werden. Die Dokumentation wurde
149 aktualisiert. Für Benutzer der empfohlenen FastCGI Anbindung ändert sich
152 * Der Task-Server ist nun mandantenfähig. Für jeden Mandanten, für den
153 der Task-Server laufen soll, muss in der Administrationsoberfläche
154 in der Konfiguration des Mandanten hinterlegt werden, welchen
155 kivitendo-Benutzer der Task-Server nutzen soll. Ist bei einem
156 Mandanten kein Benutzer hinterlegt, so ignoriert der Task-Server
159 Im Gegenzug wurden die beiden Konfigurations-Einstellungen »client«
160 und »login« aus dem Abschnitt [task_server] entfernt. Der
161 Task-Server prüft beim Starten allerdings, ob diese Einstellungen
162 noch existieren und verweigert den Start mit einer hilfreichen
163 Fehlermeldung, solange sie noch vorhanden sind.
165 * Die Unterstützung unsicherer Passwort-Hashing-Mechanism wurde
166 entfernt. Für BenutzerInnen, die noch alte Mechanismen verwenden,
167 müssen die Passwörter einmalig in der Administrationsoberfläche
168 zurückgesetzt werden.
170 Dies betrifft nur Accounts, deren Passwort sich das letzte Mal vor
171 kivitendo 2.7.0 geändert hat.
176 * Bei Upgrade von Versionen vor v.3.2.x wie immer erst die dortigen
177 Upgradehinweise beachten.
179 * Es gibt keine neuen Perl-Modul-Abhängigkeiten.
181 * Die alte ungepflegte Druckvorlagenvariante "Standard" wurde entfernt.
182 Bereits verwendete Druckvorlagen, die darauf aufbauen, funktionieren
185 * Für die Verwendung des MT940 Import Features der Bankerweiterung muß
186 aqbanking installiert werden. Dies wird nur für die Konvertierung vom MT940
187 ins CSV Format benötigt, das Kommandozeilentool "aqbanking-cli" befindet sich
188 z.B. unter Ubuntu im Paket aqbanking-tools.
193 * Neue Perl-Modul-Abhängigkeiten:
200 Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
202 $ scripts/installation_check.pl -ro
204 Sofern das Upgrade von einer früheren Version als 3.1.0 geschieht auch die
205 Upgradehinweise der Vorversionen beachten.
207 * Druckvorlagen auf shipto-Verwendung prüfen
209 Hier hat sich das Standardverhalten geändert und ggf. werden shipto* nicht mehr
210 ausgedruckt, hier müssten die Druckvorlagen individuell angepasst werden, s.a.
211 Changelog -> Verkaufsbeleg-Ausdruck.
217 * BEVOR ein Aufruf im Administrationsbereich erfolgt, muss zwingend der
218 webdav Ordner im Installationspfad vorhanden sein!
220 - Rechte für webserver setzen ($ chmod www-data webdav/)
221 Dieses "Feature" war in vorhergehenden Versionen optional, wird aber
222 für das Upgrade auf Mandantenfähigkeit vorausgesetzt.
224 * Neue Softwarevoraussetzungen: Perl v5.10.1 oder neuer sowie
225 PostgreSQL 8.4 oder neuer werden zwingend vorausgesetzt. Ein Betrieb
226 mit älteren Versionen ist nicht mehr möglich.
228 * Neue Perl-Modul-Abhängigkeiten:
230 * File::Copy::Recursive
231 * Rose::DB::Object muss v0.788 oder neuer sein (aufgrund eines Bugs
232 in besagtem Modul im Zusammenspiel mit PostgreSQL)
234 Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
236 $ scripts/installation_check.pl -ro
238 * Die Datenbank muss zwingend Unicode als Encoding nutzen. Daher wird
239 auch die Konfigurationsvariable "system.dbcharset" nicht mehr
242 * Einführung von Mandanten. Früher war die Konfiguration der
243 Datenbanken für jeden Benutzer getrennt vorzunehmen. Mit diesem
244 Release wurden Mandanten eingeführt: ein Mandant bekommt einen Namen
245 sowie die Datenbankkonfiguration, und Benutzer bekommen
246 Zugriffsrechte auf einen oder mehrere Mandanten.
248 Um dieses Update durchzuführen, müssen Sie sich einmal im
249 Administrationsbereich anmelden. Vorher ist kein Login im
250 Benutzerbereich möglich.
252 Die neue Struktur bedingt, dass viele Scripte, die bisher zur
253 Konfiguration nur einen Benutzer verlangt haben, jetzt auch einen
254 Mandanten verlangen. Die Konfiguration dieser Scripte ist deshalb
255 manuell anzupassen. Dazu gehören:
257 - der Task-Server (config/kivitendo.conf)
258 - CSV-Import von der Shell aus (scripts/csv-import-from-shell.sh)
260 Die folgenden Scripte sind ebenfalls betroffen, allerdings nur für
261 Entwickler interessant:
263 - scripts/dbupgrade2_tool.pl
264 - scripts/rose_auto_create_model.pl
266 * Neue Benutzerrechte
268 Diese müssen bei vorhandenen Gruppen eventuell nachgepflegt werden. Z.B. bei
269 der Gruppe Vollzugriff
271 - Stammdaten -> Kunden und Lieferanten erfassen. Alle Lieferanten bearbeiten.
272 Alle Kunden bearbeiten
273 - Konfiguration -> Verändern der kivitendo-Installationseinstellungen (die
274 meisten Menüpunkte unterhalb von 'System')
276 * Die alten ungepflegten Druckvorlagenvarianten French und Service
279 * Die HTML-Druckvorlagen der Berichte (GuV, Bilanz, SuSa, BWA, UStVA) werden
280 jetzt alle zentral in den Webvorlagen verwaltet, es werden keine
281 benutzerangepasste Versionen der Druckvorlagen im Druckvorlagenverzeichnis
287 * Neue Abhängigkeiten
291 * FCGI jetzt min Version 0.72
298 Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
300 $ scripts/installation_check.pl -ro
302 * Neue Entwicklerabhängigkeiten
307 * Diverse umstrittene Features zum nicht standardkonformen Umgang mit gebuchten
308 Rechnungen sind jetzt standardmässig deaktiviert und müssen unter "System" ->
309 "Mandantenkonfiguration" aktiviert werden.
311 * Die Übersetzungen "de_DE" und "fr" für die alternative deutsche Version und
312 französische Version respektive wurden entfernt. Es bleiben offiziell
313 unterstützte Übersetzungen in Deutsch ("de") und English ("en").
315 * Dieses ist die letzte Version, die Perl-Versionen vor 5.10.1
316 unterstützen wird. Ab dem nächsten Release werden Sprachkonstrukte
317 verwendet werden, die nicht mehr in 5.8 kompilieren, und Module, die
318 seit v5.10.1 zu den Coremodulen gehören, werden ab dann nicht mehr
319 als explizite Abhängigkeiten gelistet.
325 * In der Version 2.7.0 wird das XUL Menü entfernt. Alle Benutzer die das XUL
326 Menü noch eingestellt haben, werden beim ersten Einloggen auf ein
327 Kompatibilitätsmenü gesetzt. Das Javascriptmenü wurde entsprechend erweitert
328 um der Funktionalität nahe zu kommen.
330 * Das Lizenzenfeature wurde ersatzlos entfernt.
332 * In den LaTeX Vorlagen gilt der Befehl "pagebreak" und die dazugehörigen
333 "sumcarriedforward" und "lastpage" als deprecated und werden in einer
334 kommenden Version komplett entfernt. Die Mechanik ist anfällig gegenüber
335 subtilen Formatierungsfehlern bei bestimmten Zahlenformaten und ist
336 grundsätzlich fehlerhaft in den gemachten Annahmen über den verfügbaren Platz
337 auf einer Seite. Die Standardvorlagen sind entsprechend angepasst worden
338 und müssen in der Administration neu angelegt werden.
340 * Das Druckvorlagensystem wurde umgestellt, dadurch ist der Name "print" für
341 Druckvorlagen jetzt reserviert. Wenn eine Ihrer Vorlagensätze "print" heisst,
342 benennen Sie ihn um bevor Sie das Update starten.
344 * Die Druckvorlagen für USTVA vor 2012 wurden entfernt und das Ausdrucken von
345 USTVA als PDF ist deprecated. Da die Eingabe von Erklärungen als PDF nicht
346 mehr gestattet ist, sollten Archivkopien der USTVA direkt bei Elster bezogen
347 werden, oder auf anderem Wege erstellt werden. Der Prozess dazu wird sich in
348 einer kommenden Version ändern.
350 * Die Namen der von LaTeX generierten PDF-Dateien sind jetzt in der
351 eingestellten Dokumentensprache, nicht mehr in der Oberflächensprache des
354 * Neue Abhängigkeiten
358 * Digest::SHA (optional, empfohlen)
360 Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
362 $ scripts/installation_check.pl -ro
364 * CSV-Import wurde neu in Perl implementiert
366 Der PHP-Code wurde entfernt. Automatische Skripte, die per Aufruf von
367 lxo-import/partsB.php?cron=1 die Datei parts.csv importiert haben,
368 funktionieren nicht mehr. Stattdessen kann scripts/csv-import-from-shell.sh
369 benutzt werden. Im Unterschied zur PHP-Version werden unbekannte Warengruppen
370 nicht mehr automatisch angelegt, stattdessen bricht das Skript ab.
374 * Das Recht "Kunden und Lieferanten bearbeiten" wurde aufgespalten in zwei
375 einzelne Rechte. Ein Updatescript passt bestehende Gruppenaentsprechend an.
376 * Das Recht "Preise nd Rabatte bearbeiten" wurde neu eingeführt und ist
377 notwendig um in Belegen Preise ändern zu können. Es wird beim Upgrade
378 automatisch allen Benutzern erteilt.
379 * Das Recht "Administration" wurde neu eingeführt, und ist dazu da
380 administrative Tätigkeiten an der Mandantendatenbank aus einm Benutzerlogin
381 heraus durchzuführen. Es ist standardmäßig NICHT vergeben.
382 * Der Vorlageneditor wurde unter das Recht Administration gestellt, war
383 vorher Konfiguration.
389 1. Mit Version 2.6.3. wurden die beiden Konfigurationsdateien
390 authentication.pl und lx-erp.conf, sowie deren Varianten,
391 abgeschafft. Stattdessen gibt es nun die Datei lx_office.conf, die
392 aber erst neu angelegt werden muß. Als Vorlage dient hierfür die Datei
393 lx_office.conf.default. Die entsprechenden Werte muß man selber neu
394 konfigurieren, dies ist automatisiert zu fehleranfällig.
396 Nach dem Upgrade kann man sich so lange nicht anmelden, bis lx_office.conf
397 angelegt und authentication.pl und lx-erp.conf gelöscht oder verschoben wurden.
399 Es gibt keine local-Variante der lx_office.conf, arbeitet man mit git sollte
400 man lx_office.conf nicht einchecken.
402 Eine etwas ausführlichere Beschreibung findet sich in Kapitel 2.3
403 "Lx-Office-Konfigurationsdatei" in doc/Lx-Office-Dokumentation.pdf
405 2. Eine neu hinzugekommene Komponente ist der Task-Server. Hierbei
406 handelt es sich um einen Dämonen, der im Hintergrund läuft, in
407 regelmäßigen Abständen nach abzuarbeitenden Aufgaben sucht und diese
408 zu festgelegten Zeitpunkten abarbeitet (ähnlich wie Cron). Dieser
409 Dämon wird bisher nur für die Erzeugung der wiederkehrenden Rechnungen
410 benutzt, wird aber in Zukunft deutlich mehr Aufgaben übertragen
411 bekommen. Die Einrichtung des Dämonen wird in der
412 Installationsdokumentation im Abschnitt "Der Task-Server" beschrieben.
414 3. Mit Version 2.6.3 sind einige Abhängigkeiten von Perl-Modulen
415 hinzugekommen. Bitte führen sie vor dem ersten Aufrufen der einmal
416 den folgenden Befehl im Lx-Office Verzeichnis aus:
418 $ scripts/installation_check.pl
420 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
421 der Installationsanweisung.
423 Zumindest folgende Module sind neu benötigt:
428 4. Sollten Sie die FCGI-Version einsetzen, das Apache-Modul
429 "mod_fcgid" (nicht "mod_fastcgi") benutzen und von diesem Modul die
430 Version v2.6.3 oder später installiert haben, so ist außerdem wichtig,
431 seinen Parameter "FcgidMaxRequestLen" deutlich zu erhöhen, weil sich
432 dieser im Release mod_fcgid-Release v2.6.3 deutlich geändert
433 hat. Details dazu finden sich in Kapitel 2.5.2 "Konfiguration für
434 FastCGI/FCGI" in doc/Lx-Office-Dokumentation.pdf
443 Mit Version 2.6.2 sind einige Abhängigkeiten von Perl-Modulen hinzugekommen.
444 Bitte führen sie vor dem ersten Aufrufen der einmal den folgenden Befehl im
445 Lx-Office Verzeichnis aus:
447 $ scripts/installation_check.pl
449 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
450 der Installationsanweisung.
452 Zumindest folgende Module sind neu benötigt:
454 * Rose::Object, Rose::DB und Rose::DB::Object (die Installation von
455 Rose::DB::Object via CPAN oder den Paketmechanismus Ihrer
456 Distribution sollte für die automatische Installation der anderen
462 Es wurde ein neues Recht "Druck" eingeführt. Dieses bestimmt, ob die
463 Benutzerin das Menü "Druck" zu Gesicht bekommt oder nicht, unabhängig
464 davon, wie die Rechte für die einzelnen Unterpunkte gesetzt sind.
466 Für bereits bestehende Gruppen muss es sofern gewünscht vom
467 Administrator manuell gewährt werden.
476 Mit Version 2.6.1 wurden die Listen der benötigten Perl Module überarbeitet.
477 Einige der vorher in den Abhängigkeiten gelisteten Module waren Coremodules
478 (und damit in jeder Perldistribution vorhanden), oder ihrerseits Abhängigkeiten
479 anderer benötigter Module. Durch die Überarbeitung hat sich die Liste deutlich
482 Bitte führen sie vor dem ersten Aufrufen der einmal den folgenden Befehl im
483 Lx-Office Verzeichnis aus:
485 $ scripts/installation_check.pl
487 Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
488 der Installationsanweisung.
490 Zumindest folgende Module sind neu benötigt:
495 Neue Konfigurationsvariablen
496 ----------------------------
498 In der config/lx-erp.conf ist als neue Option $show_best_before hinzugekommen.
499 Die Variable kontrolliert die Anzeige von Mindesthaltbarkeitsdaten. Sie ist
500 standardmäßig deaktiviert.