WebshopApi: trigram indices und Hinweiss darauf in der UPGRADE Datei.
[kivitendo-erp.git] / doc / UPGRADE
index 6b31a61..806016b 100644 (file)
@@ -4,14 +4,347 @@ Wichtige Hinweise zum Upgrade von älteren Versionen
 
 ** BITTE FERTIGEN SIE VOR DEM UPGRADE EIN BACKUP IHRER DATENBANK(EN) AN! **
 
+Upgrade auf v3.5.1
+
+* Neue Perlabhängigkeiten
+
+  * LWP::Authen::Digest für WebshopApi
+  * LWP::UserAgent für WebshopApi
+
+* Verwendung der WebshopApi
+
+  * Bestehende Datenbanken, die die WebshopApi verwenden sollen benötigen die
+    Postgres Erweiterung pg_trgm
+    Diese kann wie folgt installiert werden:
+
+    su - postgres
+    psql <DATENBANK>
+    CREATE EXTENSION IF NOT EXISTS pg_trgm;
+    \q
+
+    Wenn die Extension installiert ist können in den beiden Dateien
+    - sql/Pg-upgrade2/trigram_indices_webshop.sql
+    - sql/Pg-upgrade2/trigram_indices.sql
+    das ignore auf 0 gesetzt werden und beide Dateien werden dann beim Anmelden eingespielt.
+    Die Trigramindices sind ein Performancegewinn bei größeren Datenbanken
+
+Upgrade auf v3.5.0
+===========================
+
+* Neue Perl Abhängigkeiten:
+
+  * File::MimeInfo - für den Dateiupload
+  * Sys::CPU
+  * Thread::Pool::Simple
+
+* Neue externe Abhängigkeiten:
+
+  * pdfinfo
+
+* In der Rechte-Tabelle auth.master_rights wurden alle Positionswerte mit 100
+  multipliziert, um Lücken für neue Rechte zu schaffen.
+
+* In der Tabelle "customer" wurde die Spalte "klass" nach "pricegroup_id"
+  migriert. Bei Kunden ohne Preisgruppe ist der Datenbankwert jetzt NULL statt
+  "0". Falls Kunden per CSV-Import importiert werden muß dieses Feld in der
+  CSV-Datei ebenfalls umbenannt werden.
+
+* Für das neue Feature Lieferantenbriefe ist die Standardvorlage für Briefe
+  (letter.tex) angepasst worden. Statt letter.customer muss der Adressat jetzt
+  aus letter.custoemr_vendor erzeugt werden.
+
+* In der Tabelle parts wurde die Boolean-Spalte "assembly" entfernt. Zur
+  Erkennung von Waren/Dienstleistungen/Erzeugnissen gibt es nun in parts eine
+  neue Spalte part_type vom ENUM-Typ, der auf die Werte 'part', 'service',
+  'assembly' und 'assortment' beschränkt ist.
+
+* In der Tabelle parts wurde die Spalten inventory_accno_id, expense_accno_id
+  und income_accno_id entfernt. Deren Funktionalität wurde schon lange durch
+  Buchungsgruppen ersetzt und für die Erkennung des Artikeltyps gibt es nun die
+  Spalte part_type
+
+Upgrade auf v3.4.1
+==================
+
+* Neue Druckvariante Gelangensbestätigung für Verkaufs-Aufträge
+
+    Im Standard-Vorlagensatz RB befindet sich als Vorlage die ic_supply.tex
+    als Orientierung für die Anpassung an eigene Vorlagen. Eigene Vorlagen
+    müssen entsprechend um diesen Typ für die 3.4.1 erweitert werden.
+
+* Druckvorlagen für Briefe
+
+    Die Erzeugung der Druckausgabe für die Brieffunktion wurde auf die
+    Verwendung des Template Toolkits umgestellt. Dazu muss die verwendete
+    Druckvorlage "letter.tex" angepasst werden. Im Standard-Vorlagensatz RB ist
+    das bereits geschehen. Falls keine manuellen Änderungen an der "letter.tex"
+    aus einer vorherigen Version gemacht wurden, reicht es, diese Datei
+    ("templates/print/RB/letter.tex") in das verwendete Vorlagenverzeichnis zu
+    kopieren. Ansonsten kann diese Datei als Beispiel dienen.
+
+
+Upgrade auf v3.4.0
+==================
+
+* Neue Perl-Modul-Abhängigkeiten:
+
+  * Algorithm::CheckDigits
+  * PBKDF2::Tiny
+
+  Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
+
+  $ scripts/installation_check.pl -ro
+
+* Der in der Dokumentation beschriebene Mechanismus für die CGI-Anbindung
+  (2.6.1 Grundkonfiguration mittels CGI) wurde geändert. Ein einfacher Alias
+  auf das Programmverzeichnis funktioniert nicht mehr, und es muss immer ein
+  AliasMatch auf einen dispatcher eingerichtet werden. Die Dokumentation wurde
+  aktualisiert. Für Benutzer der empfohlenen FastCGI Anbindung ändert sich
+  nichts.
+
+* Der Task-Server ist nun mandantenfähig. Für jeden Mandanten, für den
+  der Task-Server laufen soll, muss in der Administrationsoberfläche
+  in der Konfiguration des Mandanten hinterlegt werden, welchen
+  kivitendo-Benutzer der Task-Server nutzen soll. Ist bei einem
+  Mandanten kein Benutzer hinterlegt, so ignoriert der Task-Server
+  diesen Mandanten.
+
+  Im Gegenzug wurden die beiden Konfigurations-Einstellungen »client«
+  und »login« aus dem Abschnitt [task_server] entfernt. Der
+  Task-Server prüft beim Starten allerdings, ob diese Einstellungen
+  noch existieren und verweigert den Start mit einer hilfreichen
+  Fehlermeldung, solange sie noch vorhanden sind.
+
+* Die Unterstützung unsicherer Passwort-Hashing-Mechanism wurde
+  entfernt. Für BenutzerInnen, die noch alte Mechanismen verwenden,
+  müssen die Passwörter einmalig in der Administrationsoberfläche
+  zurückgesetzt werden.
+
+  Dies betrifft nur Accounts, deren Passwort sich das letzte Mal vor
+  kivitendo 2.7.0 geändert hat.
+
+Upgrade auf v3.3.0
+==================
+
+* Bei Upgrade von Versionen vor v.3.2.x wie immer erst die dortigen
+  Upgradehinweise beachten.
+
+* Es gibt keine neuen Perl-Modul-Abhängigkeiten.
+
+* Die alte ungepflegte Druckvorlagenvariante "Standard" wurde entfernt.
+  Bereits verwendete Druckvorlagen, die darauf aufbauen, funktionieren
+  natürlich weiterhin.
+
+* Für die Verwendung des MT940 Import Features der Bankerweiterung muß
+  aqbanking installiert werden. Dies wird nur für die Konvertierung vom MT940
+  ins CSV Format benötigt, das Kommandozeilentool "aqbanking-cli" befindet sich
+  z.B. unter Ubuntu im Paket aqbanking-tools.
+
+Upgrade auf v3.2.0
+==================
+
+* Neue Perl-Modul-Abhängigkeiten:
+
+  * GD
+  * HTML::Restrict
+  * Image::Info
+  * List::UtilsBy
+
+  Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
+
+  $ scripts/installation_check.pl -ro
+
+  Sofern das Upgrade von einer früheren Version als 3.1.0 geschieht auch die
+  Upgradehinweise der Vorversionen beachten.
+
+* Druckvorlagen auf shipto-Verwendung prüfen
+
+  Hier hat sich das Standardverhalten geändert und ggf. werden shipto* nicht mehr
+  ausgedruckt, hier müssten die Druckvorlagen individuell angepasst werden, s.a.
+  Changelog -> Verkaufsbeleg-Ausdruck.
+
+Upgrade auf v3.1.0
+==================
+
+
+* BEVOR ein Aufruf im Administrationsbereich erfolgt, muss zwingend der
+  webdav Ordner im Installationspfad vorhanden sein!
+   -  mkdir webdav/
+   -  Rechte für webserver setzen ($ chmod www-data webdav/)
+  Dieses "Feature" war in vorhergehenden Versionen optional, wird aber
+  für das Upgrade auf Mandantenfähigkeit vorausgesetzt.
+
+* Neue Softwarevoraussetzungen: Perl v5.10.1 oder neuer sowie
+  PostgreSQL 8.4 oder neuer werden zwingend vorausgesetzt. Ein Betrieb
+  mit älteren Versionen ist nicht mehr möglich.
+
+* Neue Perl-Modul-Abhängigkeiten:
+
+  * File::Copy::Recursive
+  * Rose::DB::Object muss v0.788 oder neuer sein (aufgrund eines Bugs
+    in besagtem Modul im Zusammenspiel mit PostgreSQL)
+
+  Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
+
+  $ scripts/installation_check.pl -ro
+
+* Die Datenbank muss zwingend Unicode als Encoding nutzen. Daher wird
+  auch die Konfigurationsvariable "system.dbcharset" nicht mehr
+  unterstützt.
+
+* Einführung von Mandanten. Früher war die Konfiguration der
+  Datenbanken für jeden Benutzer getrennt vorzunehmen. Mit diesem
+  Release wurden Mandanten eingeführt: ein Mandant bekommt einen Namen
+  sowie die Datenbankkonfiguration, und Benutzer bekommen
+  Zugriffsrechte auf einen oder mehrere Mandanten.
+
+  Um dieses Update durchzuführen, müssen Sie sich einmal im
+  Administrationsbereich anmelden. Vorher ist kein Login im
+  Benutzerbereich möglich.
+
+  Die neue Struktur bedingt, dass viele Scripte, die bisher zur
+  Konfiguration nur einen Benutzer verlangt haben, jetzt auch einen
+  Mandanten verlangen. Die Konfiguration dieser Scripte ist deshalb
+  manuell anzupassen. Dazu gehören:
+
+  - der Task-Server (config/kivitendo.conf)
+  - CSV-Import von der Shell aus (scripts/csv-import-from-shell.sh)
+
+  Die folgenden Scripte sind ebenfalls betroffen, allerdings nur für
+  Entwickler interessant:
+
+  - scripts/dbupgrade2_tool.pl
+  - scripts/rose_auto_create_model.pl
+
+* Neue Benutzerrechte
+
+  Diese müssen bei vorhandenen Gruppen eventuell nachgepflegt werden. Z.B. bei
+  der Gruppe Vollzugriff
+
+  - Stammdaten -> Kunden und Lieferanten erfassen. Alle Lieferanten bearbeiten.
+    Alle Kunden bearbeiten
+  - Konfiguration -> Verändern der kivitendo-Installationseinstellungen (die
+    meisten Menüpunkte unterhalb von 'System')
+
+* Die alten ungepflegten Druckvorlagenvarianten French und Service
+  wurden entfernt.
+
+* Die HTML-Druckvorlagen der Berichte (GuV, Bilanz, SuSa, BWA, UStVA) werden
+  jetzt alle zentral in den Webvorlagen verwaltet, es werden keine
+  benutzerangepasste Versionen der Druckvorlagen im Druckvorlagenverzeichnis
+  mehr unterstützt.
+
+Upgrade auf v3.0.0
+==================
+
+* Neue Abhängigkeiten
+
+  * Clone 1.16
+  * Email::MIME
+  * FCGI jetzt min Version 0.72
+  * Test::Harness 3.00
+  * IO::Socket::SSL
+  * Net::LDAP
+  * Net::SMTP::SSL
+  * Net::SSLGlue
+
+  Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
+
+  $ scripts/installation_check.pl -ro
+
+* Neue Entwicklerabhängigkeiten
+
+  * Test::Deep
+  * GD 2.00
+
+* Diverse umstrittene Features zum nicht standardkonformen Umgang mit gebuchten
+  Rechnungen sind jetzt standardmässig deaktiviert und müssen unter "System" ->
+  "Mandantenkonfiguration" aktiviert werden.
+
+* Die Übersetzungen "de_DE" und "fr" für die alternative deutsche Version und
+  französische Version respektive wurden entfernt. Es bleiben offiziell
+  unterstützte Übersetzungen in Deutsch ("de") und English ("en").
+
+* Dieses ist die letzte Version, die Perl-Versionen vor 5.10.1
+  unterstützen wird.  Ab dem nächsten Release werden Sprachkonstrukte
+  verwendet werden, die nicht mehr in 5.8 kompilieren, und Module, die
+  seit v5.10.1 zu den Coremodulen gehören, werden ab dann nicht mehr
+  als explizite Abhängigkeiten gelistet.
+
+
+Upgrade auf v2.7.0
+==================
+
+* In der Version 2.7.0 wird das XUL Menü entfernt. Alle Benutzer die das XUL
+  Menü noch eingestellt haben, werden beim ersten Einloggen auf ein
+  Kompatibilitätsmenü gesetzt. Das Javascriptmenü wurde entsprechend erweitert
+  um der Funktionalität nahe zu kommen.
+
+* Das Lizenzenfeature wurde ersatzlos entfernt.
+
+* In den LaTeX Vorlagen gilt der Befehl "pagebreak" und die dazugehörigen
+  "sumcarriedforward" und "lastpage" als deprecated und werden in einer
+  kommenden Version komplett entfernt. Die Mechanik ist anfällig gegenüber
+  subtilen Formatierungsfehlern bei bestimmten Zahlenformaten und ist
+  grundsätzlich fehlerhaft in den gemachten Annahmen über den verfügbaren Platz
+  auf einer Seite. Die Standardvorlagen sind entsprechend angepasst worden
+  und müssen in der Administration neu angelegt werden.
+
+* Das Druckvorlagensystem wurde umgestellt, dadurch ist der Name "print" für
+  Druckvorlagen jetzt reserviert. Wenn eine Ihrer Vorlagensätze "print" heisst,
+  benennen Sie ihn um bevor Sie das Update starten.
+
+* Die Druckvorlagen für USTVA vor 2012 wurden entfernt und das Ausdrucken von
+  USTVA als PDF ist deprecated. Da die Eingabe von Erklärungen als PDF nicht
+  mehr gestattet ist, sollten Archivkopien der USTVA direkt bei Elster bezogen
+  werden, oder auf anderem Wege erstellt werden. Der Prozess dazu wird sich in
+  einer kommenden Version ändern.
+
+* Die Namen der von LaTeX generierten PDF-Dateien sind jetzt in der
+  eingestellten Dokumentensprache, nicht mehr in der Oberflächensprache des
+  Bearbeiters.
+
+* Neue Abhängigkeiten
+
+  * JSON
+  * String::ShellQuote
+  * Digest::SHA (optional, empfohlen)
+
+  Wie immer bitte vor dem ersten Aufrufen einmal die Pakete überprüfen:
+
+  $ scripts/installation_check.pl -ro
+
+* CSV-Import wurde neu in Perl implementiert
+
+  Der PHP-Code wurde entfernt. Automatische Skripte, die per Aufruf von
+  lxo-import/partsB.php?cron=1 die Datei parts.csv importiert haben,
+  funktionieren nicht mehr.  Stattdessen kann scripts/csv-import-from-shell.sh
+  benutzt werden. Im Unterschied zur PHP-Version werden unbekannte Warengruppen
+  nicht mehr automatisch angelegt, stattdessen bricht das Skript ab.
+
+* Rechteverwaltung
+
+  * Das Recht "Kunden und Lieferanten bearbeiten" wurde aufgespalten in zwei
+    einzelne Rechte. Ein Updatescript passt bestehende Gruppenaentsprechend an.
+  * Das Recht "Preise nd Rabatte bearbeiten" wurde neu eingeführt und ist
+    notwendig um in Belegen Preise ändern zu können. Es wird beim Upgrade
+    automatisch allen Benutzern erteilt.
+  * Das Recht "Administration" wurde neu eingeführt, und ist dazu da
+    administrative Tätigkeiten an der Mandantendatenbank aus einm Benutzerlogin
+    heraus durchzuführen. Es ist standardmäßig NICHT vergeben.
+  * Der Vorlageneditor wurde unter das Recht Administration gestellt, war
+    vorher Konfiguration.
+
+
 Upgrade auf v2.6.3
 ==================
 
-Mit Version 2.6.3. wurden die beiden Konfigurationsdateien authentication.pl
-und lx-erp.conf, sowie deren Varianten, abgeschafft. Stattdessen gibt es nun
-die Datei lx_office.conf, die aber erst neu angelegt werden muß. Als Vorlage
-dient hierfür die Datei lx_office.conf.default. Die entsprechenden Werte muß
-man selber neu konfigurieren, dies ist automatisiert zu fehleranfällig.
+1. Mit Version 2.6.3. wurden die beiden Konfigurationsdateien
+authentication.pl und lx-erp.conf, sowie deren Varianten,
+abgeschafft. Stattdessen gibt es nun die Datei lx_office.conf, die
+aber erst neu angelegt werden muß. Als Vorlage dient hierfür die Datei
+lx_office.conf.default. Die entsprechenden Werte muß man selber neu
+konfigurieren, dies ist automatisiert zu fehleranfällig.
 
 Nach dem Upgrade kann man sich so lange nicht anmelden, bis lx_office.conf
 angelegt und authentication.pl und lx-erp.conf gelöscht oder verschoben wurden.
@@ -19,10 +352,10 @@ angelegt und authentication.pl und lx-erp.conf gelöscht oder verschoben wurden.
 Es gibt keine local-Variante der lx_office.conf, arbeitet man mit git sollte
 man lx_office.conf nicht einchecken.
 
-Eine etwas ausführlichere Beschreibung findet sich in der Datei:
-doc/konfigurationsdatei.txt
+Eine etwas ausführlichere Beschreibung findet sich in Kapitel 2.3
+"Lx-Office-Konfigurationsdatei" in doc/Lx-Office-Dokumentation.pdf
 
-Eine neu hinzugekommene Komponente ist der Task-Server. Hierbei
+2. Eine neu hinzugekommene Komponente ist der Task-Server. Hierbei
 handelt es sich um einen Dämonen, der im Hintergrund läuft, in
 regelmäßigen Abständen nach abzuarbeitenden Aufgaben sucht und diese
 zu festgelegten Zeitpunkten abarbeitet (ähnlich wie Cron). Dieser
@@ -31,6 +364,28 @@ benutzt, wird aber in Zukunft deutlich mehr Aufgaben übertragen
 bekommen. Die Einrichtung des Dämonen wird in der
 Installationsdokumentation im Abschnitt "Der Task-Server" beschrieben.
 
+3. Mit Version 2.6.3 sind einige Abhängigkeiten von Perl-Modulen
+hinzugekommen. Bitte führen sie vor dem ersten Aufrufen der einmal
+den folgenden Befehl im Lx-Office Verzeichnis aus:
+
+$ scripts/installation_check.pl
+
+Sollten Module als fehlend markiert sein, folgen Sie bitte den Anweisungen in
+der Installationsanweisung.
+
+Zumindest folgende Module sind neu benötigt:
+
+* Config::Std
+* Params::Validate
+
+4. Sollten Sie die FCGI-Version einsetzen, das Apache-Modul
+"mod_fcgid" (nicht "mod_fastcgi") benutzen und von diesem Modul die
+Version v2.6.3 oder später installiert haben, so ist außerdem wichtig,
+seinen Parameter "FcgidMaxRequestLen" deutlich zu erhöhen, weil sich
+dieser im Release mod_fcgid-Release v2.6.3 deutlich geändert
+hat. Details dazu finden sich in Kapitel 2.5.2 "Konfiguration für
+FastCGI/FCGI" in doc/Lx-Office-Dokumentation.pdf
+
 
 Upgrade auf v2.6.2
 ==================
@@ -49,7 +404,6 @@ der Installationsanweisung.
 
 Zumindest folgende Module sind neu benötigt:
 
-* Readonly (optional mit Begleitermodul Readonly::XS)
 * Rose::Object, Rose::DB und Rose::DB::Object (die Installation von
   Rose::DB::Object via CPAN oder den Paketmechanismus Ihrer
   Distribution sollte für die automatische Installation der anderen
@@ -97,238 +451,3 @@ Zumindest folgende Module sind neu benötigt:
 In der config/lx-erp.conf ist als neue Option $show_best_before hinzugekommen.
 Die Variable kontrolliert die Anzeige von Mindesthaltbarkeitsdaten. Sie ist
 standardmäßig deaktiviert.
-
-
-Upgrade auf v2.6.0
-==================
-
-Mit Version 2.6.0 wurde der Code zur Benutzerauthentifizierung neu
-geschrieben. Die Umstellung erfordert eine manuelle
-Konfiguration. Bestehende Benutzeraccounts können aber von Lx-Office
-automatisch übernommen werden.
-
- Bevor Sie sich das erste mal einloggen
- --------------------------------------
-
-Kopieren Sie bitte die Datei "lx-erp.conf" und
-ggfs. "lx-erp-local.conf" in das neue Unterverzeichnis "config/". Die
-alte Datei im Lx-Office-Stammverzeichnis kann daraufhin gelöscht
-werdern.
-
-Als nächstes muss die neue datenbankgestützte Benutzerverwaltung
-konfiguriert werden. Die dafür notwendigen Einstellungen werden in der
-Datei "config/authentification.pl" vorgenommen, für die eine
-kommentierte Vorlage in "config/authentication.pl.default"
-bereitliegt.
-
-Weitere Informationen zu dieser Datei finden Sie in der Dokumentation
-"doc/INSTALL/index.html" und dort in den Kapiteln
-"Benutzerauthentifizierung und Administratorpasswort" sowie "Benutzer-
-und Gruppenverwaltung".
-
-Nach der Einrichtung der Datei "config/authentication.pl" muss im
-Webbrowser das Administrationsinterface aufgerufen werden. Nach
-erfolgter Anmeldung werden Sie durch den Upgradeprozess geleitet.
-
-Die weiteren erforderlichen Datenbankupgrades werden erst vorgenommen,
-wenn sich ein Benutzer erfolgreich anmeldet.
-
- Neue Perl-Module
- ----------------
-
-Mit Version 2.6.0 werden zusätzlich die folgenden Perl-Module benötigt,
-die bis Version 2.4.3 inklusive noch keine Voraussetzung waren:
-
-* PDF::API2
-
-
-Upgrade von v2.4.0 und neuer auf v2.4.3
-=======================================
-
-Ein Upgrade von v2.4.0 oder neuer auf v2.4.3 aus zwei Teilen: den
-Dateien (einfaches Entpacken und Kopieren in das
-Installationsverzeichnis genügen) sowie dem Datenbankupgrade.
-
- Neue Variablen in der Datei lx-erp.conf
- ---------------------------------------
-
-Wenn Sie eine eigene Version der Konfigurationsdatei "lx-erp.conf"
-einsetzen und diese nicht mit der Standardkonfigurationsdatei
-überschreiben, so beachten Sie bitte, dass die folgenden neuen
-Variablen hinzugekommen sind und von Ihnen manuell ergänzt werden
-sollten: $html2ps_bin, $ghostscript_bin, $pg_dump_exe und
-$pg_restore_exe. Die Variable '$jscalendar' kann hingegen entfernt
-werden, da sie nicht mehr benötigt wird.
-
-Die Standardwerte für diese Variablen finden Sie in der Datei
-"lx-erp.conf.default".
-
- Neue Abhängigkeiten von Perl-Modulen
- ------------------------------------
-
-Bitte beachten Sie auch die Liste der benötigten Perl-Module am Anfang
-der Datei "doc/INSTALL". Seit Version 2.4.0 sind die folgenden Module
-neu hinzugekommen:
-
-- Achive::Zip
-- Template
-- Text::CSV_XS
-- Text::Iconv
-- Time::HiRes
-- YAML
-
-Nach Möglichkeit sollten auch die aktuellen Versionen der
-Datenbankpakete "DBI" und "DBD::Pg" installiert werden.
-
- Datenbankupgrade
- ----------------
-
-Das Datenbankupgrade wird automatisch gestartet, wenn sich der erste
-Benutzer nach dem Upgrade der Dateien an Lx-Office anmeldet.
-
-** BITTE FERTIGEN SIE VOR DEM UPGRADE EIN BACKUP IHRER DATENBANK(EN) AN! **
-
-
-Upgrade von v2.4.0 auf 2.4.1 sowie von 2.4.1 auf 2.4.2
-======================================================
-
-Ein Upgrade von v2.4.0 auf v2.4.1 oder von v2.4.1 auf v2.4.2 besteht
-aus zwei Teilen: den Dateien (einfaches Entpacken und Kopieren in das
-Installationsverzeichnis genügen) sowie dem Datenbankupgrade.
-
-Bitte beachten Sie auch die Liste der benötigten Perl-Module am Anfang
-der Datei "doc/INSTALL". Besonders nach einem Upgrade auf 2.4.2 muss
-sichergestellt werden, dass das Modul "YAML" installiert ist.
-
-Das Datenbankupgrade wird automatisch gestartet, wenn sich der erste
-Benutzer nach dem Upgrade der Dateien an Lx-Office anmeldet.
-
-** BITTE FERTIGEN SIE VOR DEM UPGRADE EIN BACKUP IHRER DATENBANK(EN) AN! **
-
-Anders als beim Upgrade auf 2.4.0 handelt es bei den Datenbankupgrades
-auf 2.4.1 und 2.4.2 nur um automatisch ablaufende Scripte, die keine
-Benutzereingaben erfordern.
-
-
-Upgrade von v2.2.0 bis 2.2.2 auf 2.4.0
-======================================
-
-Ein direktes Upgrade von den unmodifizierten Versionen 2.2.0, 2.2.1
-und 2.2.2 auf 2.4.0 ist möglich. Ein solches Upgrade besteht aus zwei
-Teilen: den Dateien (einfaches Entpacken und Kopieren in das
-Installationsverzeichnis genügen) sowie dem Datenbankupgrade.
-
-Bitte beachten Sie auch die Liste der benötigten Perl-Module am Anfang
-der Datei "doc/INSTALL".
-
-Das Datenbankupgrade wird automatisch gestartet, wenn sich der erste
-Benutzer nach dem Upgrade der Dateien an Lx-Office anmeldet.
-
-** BITTE FERTIGEN SIE VOR DEM UPGRADE EIN BACKUP IHRER DATENBANK(EN) AN! **
-
-Das Datenbankupgrade enthält zwei interaktive Upgradepfade für neue
-Features in Lx-Office 2.4.0: Einheiten sowie Buchungsgruppen.
-
-
-
-Einführung von Einheiten
-------------------------
-
-In Versionen von Lx-Office vor 2.4.0 konnte der Benutzer bei den
-Stammdaten aber auch in den Einkaufs- und Verkaufsdialogen beliebige
-Texte als "Einheit" angeben. Lx-Office 2.4.0 ändert dies nun. Der
-Administrator kann unter "System -> Einheiten -> Maßeinheiten" die bei
-Waren und Erzeugnissen verwendbaren und bei "System -> Einheiten ->
-Dienstleistungseinheiten" die bei Dienstleistungen verwendbaren
-Einheiten festlegen. Lx-Office 2.4.0 bringt bereits für beide Typen
-einige Standardeinheiten mit.
-
-Einheiten können wiederum auf anderen Einheiten basieren. So ist
-z.B. "kg" als das 1000fache der Einheit "g" definiert. Der Benutzer
-muss beim Anlegen von Artikeln in den Stammdaten eine Einheit aus
-einer Drop-Down-Liste auswählen. In den Einkaufs- und Verkaufsmasken
-werden dann dem Benutzer nur noch diejenigen Einheiten zur Auswahl
-angeboten, die sich in die in den Stammdaten hinterlegte Einheit
-umrechnen lassen. So würden z.B. für eine Ware, deren
-Stammdateneinheit "kg" ist, nur die Einheiten "g", "kg", "t" zur
-Auswahl aufgelistet, nicht aber "Stück" oder "Tag", "Stunde".
-
-Das Datenbankupgrade muss nun alle im System verwendeten Einheiten in
-den Stammdaten sowie in den Einkaufs- und Verkaufsdaten so anpassen,
-dass dort nur noch Einheiten auftreten, die im System verwendet werden
-können. Da dies nur eingeschränkt automatisch möglich ist, werden dem
-Benutzer, der das Datenbankupgrade nach dem Login durchführt, einige
-Masken angezeigt, in denen er neue Einheiten in der Datenbank anlegen
-kann, und in denen er "alte" Einheiten durch "neue" Einheiten ersetzen
-lassen kann.
-
-Zuletzt muss er noch für all die Waren, für die früher gar keine
-Einheit eingetragen wurde, eine Standardeinheit getrennt nach Waren /
-Erzeugnissen und Dienstleistungen festlegen, die statt dessen
-eingesetzt wird.
-
-
-Einführung von Steuerzonen und Buchungsgruppen
-----------------------------------------------
-
-In den Versionen von Lx-Office vor 2.4.0 wurden bei Artikeln und
-Dienstleistungen jeweils ein Konto für Erlöse und ein Konto für den
-Aufwand hinterlegt. Über diese Konten wurde dann auch definiert
-welcher Steuersatz zu berechnen ist. Wollte man einen Artikel mal mit
-und mal ohne Steuer verkaufen (Inland, Ausland), waren hierfür zwei
-Artikel notwendig.
-
-In der Version 2.4.0 können nun bei jedem Artikel für die
-verschiedenen Fälle
-- Inland
-- EU mit UStId
-- EU ohne UStId
-- Außerhalb EU
-verschiedene Erlös- und Aufwandskonten definiert werden. Dadurch
-werden dann auch jeweils die richtigen Steuersätze berechnet.
-
-Damit jetzt nicht bei jedem Artikel mehrere Konten definiert werden
-müssen, werden alle Konten, die zu einer bestimmten Warengruppe
-gehören, in einer Buchungsgruppe zusammengefasst. Diese
-Buchungsgruppen werden zunächst unter "System" definiert und können
-dann den Artikeln und Dienstleistungen zugewiesen werden.
-
-Beim Datenbankupdate werden aus der Datenbank alle Kombinationen von
-Erlös- und Aufwandskonten geholt, die bereits verwendet wurden. Für
-diese Kombinationen müssen im Upgradeprozess Buchungsgruppen angelegt
-werden, indem man den einzelnen Kombinationen einen Namen zuweist. Die
-Konten für nicht Inland sind mit den Standardkonten vorbelegt, können
-aber vor dem Speichern geändert werden.
-
-Diese neu angelegten Buchungsgruppen werden automatisch den
-vorhandenen Artikeln und Dienstleistungen zugewiesen.  Buchungsgruppen
-können genau wie vorher die Kontenzuordnung nachträglich nicht mehr
-geändert werden.
-
-Möchte man in der Buchhaltung eine neue Kombination von Erlös- und
-Aufwandskonten für bestimmte Artikel und Waren verwenden, legt man
-zunächst die entsprechenden konnten (z.B. 8401 und 3401) an und
-erstellt dann eine neue Buchungsgruppe mit diesen Konten.  Die
-Benennung der Buchungsgruppe kann frei erfolgen.
-
-Beim Anlegen einer neuen Waren oder Dienstleistung werden dann durch
-Auswahl dieser Buchungsgruppe automatisch alle Konten auf einen Schlag
-korrekt zugeordnet.
-
-Wird in einer Verkaufs- oder Einkaufsmaske eine andere Steuerzone als
-Inland ausgewählt, werden bei den Artikeln auch automatisch die
-anderen Erlös- und Aufwandskonten der Buchungsgruppe verwendet.
-
-Dokumentenvorlagen, Umbennante Vorlagenvariablen
-------------------------------------------------
-
-Einige Variablen, die in Dokumentenvorlagen verwendet werden, mussten
-aufgrund von Namenskonflikten umbenannt werden. Dazu gehören:
-
-* Adress- und Kontaktinformationen des angemeldeten Mitarbeiters. Die
-  Variablen "company", "address" und "businessnumber" haben alle einen
-  Präfix "employee_" bekommen und heißen nun "employee_company",
-  "employee_address" und "employee_businessnumber".
-
-Zu beachten ist außerdem, dass der Befehl <%include ...%> in
-Dokumentenvorlagen nicht mehr zur Verfügung steht.