From 524bf98c7cdd801aa813d8ca2202b4cda62e96c2 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20B=C3=BCren?= Date: Fri, 11 Mar 2016 11:41:51 +0100 Subject: [PATCH] =?utf8?q?Dokumentation=20f=C3=BCr=203.4=20angepasst?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- doc/dokumentation.xml | 76 +++++++++++++++++--------------- doc/html/ch01.html | 4 +- doc/html/ch02.html | 2 +- doc/html/ch02s02.html | 26 +++++++---- doc/html/ch02s03.html | 20 +++++++-- doc/html/ch02s04.html | 2 +- doc/html/ch02s05.html | 2 +- doc/html/ch02s06.html | 14 +++--- doc/html/ch02s07.html | 13 +++--- doc/html/ch02s08.html | 2 +- doc/html/ch02s09.html | 2 +- doc/html/ch02s10.html | 2 +- doc/html/ch02s11.html | 2 +- doc/html/ch02s12.html | 6 +-- doc/html/ch02s13.html | 2 +- doc/html/ch02s14.html | 2 +- doc/html/ch02s15.html | 2 +- doc/html/ch02s16.html | 2 +- doc/html/ch02s17.html | 2 +- doc/html/ch02s18.html | 2 +- doc/html/ch03.html | 2 +- doc/html/ch03s02.html | 2 +- doc/html/ch03s03.html | 4 +- doc/html/ch03s04.html | 2 +- doc/html/ch03s05.html | 8 ++-- doc/html/ch04.html | 32 +++++++------- doc/html/ch04s02.html | 2 +- doc/html/ch04s03.html | 2 +- doc/html/ch04s04.html | 2 +- doc/html/ch04s05.html | 2 +- doc/html/ch04s06.html | 2 +- doc/html/ch04s07.html | 2 +- doc/html/index.html | 4 +- doc/kivitendo-Dokumentation.pdf | Bin 687478 -> 687504 bytes 34 files changed, 136 insertions(+), 115 deletions(-) diff --git a/doc/dokumentation.xml b/doc/dokumentation.xml index c46857560..22b3822b9 100644 --- a/doc/dokumentation.xml +++ b/doc/dokumentation.xml @@ -2,7 +2,7 @@ - kivitendo 3.3.0: Installation, Konfiguration, Entwicklung + kivitendo 3.4.0: Installation, Konfiguration, Entwicklung Aktuelle Hinweise @@ -82,7 +82,7 @@ ohne große Probleme auf den derzeit aktuellen verbreiteten Distributionen läuft. - Anfang 2014 sind das folgende Systeme, von denen bekannt ist, + Anfang 2016 sind das folgende Systeme, von denen bekannt ist, dass kivitendo auf ihnen läuft: @@ -100,7 +100,7 @@ - Ubuntu 12.04 LTS "Precise Pangolin", 12.10 "Quantal Quetzal", 13.04 "Precise Pangolin" und 14.04 "Trusty Tahr" LTS Alpha + Ubuntu 12.04 LTS "Precise Pangolin", 12.10 "Quantal Quetzal", 13.04 "Precise Pangolin", 14.04 "Trusty Tahr" LTS, 15.10 "Wily Werewolf" und 16.04 "Xenial Xerus" LTS Alpha @@ -137,6 +137,8 @@ Archive::Zip + Algorithm::CheckDigits + Config::Std DateTime @@ -165,6 +167,8 @@ Params::Validate + PBKDF2::Tiny + PDF::API2 Rose::Object @@ -186,6 +190,7 @@ YAML + Seit Version v3.4.0 sind die folgenden Pakete hinzugekommen: Algorithm::CheckDigitsPBKDF2::Tiny Seit Version v3.2.0 sind die folgenden Pakete hinzugekommen: GD, HTML::Restrict, Image::Info Seit v3.0.0 sind die folgenden Pakete hinzugekommen: File::Copy::Recursive. @@ -226,8 +231,10 @@ librose-db-perl librose-object-perl libsort-naturally-perl \ libstring-shellquote-perl libtemplate-perl libtext-csv-xs-perl \ libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl \ - libimage-info-perl libgd-gd2-perl \ - libfile-copy-recursive-perl postgresql + libimage-info-perl libgd-gd2-perl libapache2-mod-fcgid \ + libfile-copy-recursive-perl postgresql libalgorithm-checkdigits-perl \ + libcrypt-pbkdf2-perl git + Für das Paket HTML::Restrict gibt es kein Debian-Paket, dies muß per CPAN installiert werden. Unter Ubuntu funktioniert das mit: apt-get install build-essential @@ -281,11 +288,11 @@ cpan Rose::Db::Object Manuelle Installation des Programmpaketes Der aktuelle Stable-Release, bzw. beta Release wird bei github gehostet und kann hier heruntergeladen werden. - Die kivitendo ERP Installationsdatei (kivitendo-erp-3.3.0.tgz) wird im Dokumentenverzeichnis des Webservers + Die kivitendo ERP Installationsdatei (kivitendo-erp-3.4.0.tgz) wird im Dokumentenverzeichnis des Webservers (z.B. /var/www/html/, /srv/www/htdocs oder /var/www/) entpackt: cd /var/www -tar xvzf kivitendo-erp-3.3.0.tgz +tar xvzf kivitendo-erp-3.4.0.tgz Wechseln Sie in das entpackte Verzeichnis: @@ -313,6 +320,21 @@ tar xvzf kivitendo-erp-3.3.0.tgz Unterverzeichnisse für jeden neuen Benutzer anlegen dürfen, der in kivitendo angelegt wird: chown www-data templates users + + Wir empfehlen eine Installation mittels des Versionsmanagager git. Hierfür muss ein git-Client installiert sein. + Damit ist man sehr viel flexibler für zukünftige Upgrades. + Installations-Anleitung (bitte die Pfade anpassen) bspw. wie folgt: + cd /usr/local/src/ +git clone https://github.com/kivitendo/kivitendo-erp.git +cd kivitendo-erp/ +git checkout `git tag -l | egrep -ve "(beta|rc)" | tail -1` + Sehr sinnvoll ist es, direkt im Anschluss einen eigenen Branch zu erzeugen, um bspw. seine eigenen Druckvorlagen-Anpassungen + damit zu verwalten. Hierfür reicht ein simples + git checkout -b meine_eigenen_änderungen + nach dem letzten Kommando (weiterführende Informationen +getting started with git). + + @@ -703,22 +725,20 @@ Alias /url/for/kivitendo-erp/ /path/to/kivitendo-erp/ <Directory /path/to/kivitendo-erp> AllowOverride All Options ExecCGI Includes FollowSymlinks - Order Allow,Deny - Allow from All + Require all granted </Directory> <DirectoryMatch /path/to/kivitendo-erp/users> - Order Deny,Allow - Deny from All +Require all granted </DirectoryMatch> - Im Vergleich zu Apache 2.2 hat sich in Apache 2.4 die Syntax der Directorydirektiven verändert. Statt + Wer einen älteren Apache als Version 2.4 im Einsatz hat, muss entsprechend die Syntax der Directorydirektiven verändert. Statt + Require all granted + muß man Folgendes einstellen: Order Allow,Deny Allow from All - muß man jetzt Folgendes einstellen: - Require all granted Seit mod_fcgid-Version 2.3.6 gelten sehr kleine Grenzen für @@ -884,7 +904,7 @@ insserv kivitendo-task-server - Upstart-basierende Systeme (z.B. Ubuntu) + Upstart-basierende Systeme (z.B. Ubuntu bis 14.04) Kopieren Sie die Datei scripts/boot/upstart/kivitendo-task-server.conf @@ -899,7 +919,7 @@ insserv kivitendo-task-server - systemd-basierende Systeme (z.B. neure OpenSUSE, neuere Fedora Core) + systemd-basierende Systeme (z.B. neure OpenSUSE, neuere Fedora Core, neuere Ubuntu) Verlinken Sie die Datei scripts/boot/systemd/kivitendo-task-server.service nach /etc/systemd/system/. Passen Sie in der kopierten Datei den Pfad zum Task-Server an (Zeile @@ -957,20 +977,6 @@ ln -s $(pwd)/kivitendo-task-server.service /etc/systemd/system/ Dieselben Optionen können auch für die SystemV-basierenden Runlevel-Scripte benutzt werden (siehe oben). - - Task-Server mit mehreren Mandanten - - Beim Task-Server werden der zu verwendende Mandant und Login-Name des Benutzers, unter dem der Task-Server laufen soll, in die - Konfigurationsdatei geschrieben. Hat man mehrere Mandanten, muss man auch mehrere Konfigurationsdateien anlegen. - - Die Konfigurationsdatei ist eine Kopie der Datei kivitendo.conf, wo in der Kategorie [task_server] die - gewünschten Werte für client und login eingetragen werden. - - Der alternative Task-Server wird dann mit folgendem Befehl - gestartet: - - ./scripts/task_server.pl -c config/DATEINAME.conf - @@ -1447,8 +1453,8 @@ ln -s $(pwd)/kivitendo-task-server.service /etc/systemd/system/ LaTeX System. Am einfachsten ist dazu eine texlive Installation. Unter debianoiden Betriebssystemen installiert man die Pakete mit: - aptitude install texlive-base-bin texlive-latex-recommended texlive-fonts-recommended \ - texlive-latex-extra texlive-lang-german texlive-generic-extra + apt-get install texlive-base-bin texlive-latex-recommended texlive-fonts-recommended \ + exlive-latex-extra texlive-lang-german texlive-generic-extra TODO: RPM-Pakete. @@ -5216,18 +5222,18 @@ Beschreibung: <%description%> - Das obige Auslagern schlägt fehl, wenn die entsprechende Menge für + Das obige Auslagern schlägt fehl, wenn die entsprechende Menge für die Lagerbewegung nicht vorhanden ist, möchte man dies auch ignorieren und ggf. dann nachpflegen, so kann man eine Negativ-Warenmenge mit dieser Option erlauben. Hierfür muss ein entsprechender Lagerplatz (Fehlbestand, o.ä.) konfiguriert sein. Zusätzliche Funktionshinweise: - Ist dieser konfiguriert, wird dies auch als Standard-Voreinstellung bei der Neuerfassung von + Ist dieser konfiguriert, wird dies auch als Standard-Voreinstellung bei der Neuerfassung von Stammdaten-> Waren / Dienstleistung / Erzeugnis verwendet. - Wird beim 'Auslagern über Standardlagerplatz' + Wird beim 'Auslagern über Standardlagerplatz' keine Standardlagerplatz zu der Ware gefunden, so wird mit dieser Option einfach der Standardlagerplatz verwendet. diff --git a/doc/html/ch01.html b/doc/html/ch01.html index 270dd8a69..8038c4944 100644 --- a/doc/html/ch01.html +++ b/doc/html/ch01.html @@ -1,6 +1,6 @@ - Kapitel 1. Aktuelle Hinweise

Kapitel 1. Aktuelle Hinweise

Aktuelle Installations- und Konfigurationshinweise gibt es:

\ No newline at end of file diff --git a/doc/html/ch02.html b/doc/html/ch02.html index af919f321..58bed7b7c 100644 --- a/doc/html/ch02.html +++ b/doc/html/ch02.html @@ -1,6 +1,6 @@ - Kapitel 2. Installation und Grundkonfiguration

Kapitel 2. Installation und Grundkonfiguration

2.1. Übersicht

+ Kapitel 2. Installation und Grundkonfiguration

Kapitel 2. Installation und Grundkonfiguration

2.1. Übersicht

Die Installation von kivitendo umfasst mehrere Schritte. Die folgende Liste kann sowohl für Neulinge als auch für alte Hasen als Übersicht und Stichpunktliste zum Abhaken dienen, um eine Version mit minimalen Features möglichst schnell zum Laufen zu kriegen.

  1. diff --git a/doc/html/ch02s02.html b/doc/html/ch02s02.html index e10f2c849..4c4e0dc4a 100644 --- a/doc/html/ch02s02.html +++ b/doc/html/ch02s02.html @@ -1,18 +1,20 @@ - 2.2. Benötigte Software und Pakete

    2.2. Benötigte Software und Pakete

    2.2.1. Betriebssystem

    kivitendo ist für Linux konzipiert, und sollte auf jedem + 2.2. Benötigte Software und Pakete

    2.2. Benötigte Software und Pakete

    2.2.1. Betriebssystem

    kivitendo ist für Linux konzipiert, und sollte auf jedem unixoiden Betriebssystem zum Laufen zu kriegen sein. Getestet ist diese Version im speziellen auf Debian und Ubuntu, grundsätzlich wurde bei der Auswahl der Pakete aber darauf Rücksicht genommen, dass es ohne große Probleme auf den derzeit aktuellen verbreiteten - Distributionen läuft.

    Anfang 2014 sind das folgende Systeme, von denen bekannt ist, - dass kivitendo auf ihnen läuft:

    • Debian

      • 6.0 "Squeeze" (hier muss allerdings das Modul FCGI in der Version >= 0.72 compiled werden, und Rose::DB::Object ist zu alt)

      • 7.0 "Wheezy"

    • Ubuntu 12.04 LTS "Precise Pangolin", 12.10 "Quantal Quetzal", 13.04 "Precise Pangolin" und 14.04 "Trusty Tahr" LTS Alpha

    • openSUSE 12.2, 12.3 und 13.1

    • SuSE Linux Enterprice Server 11

    • Fedora 16 bis 19

    2.2.2. Benötigte Perl-Pakete installieren

    Zum Betrieb von kivitendo werden zwingend ein Webserver (meist + Distributionen läuft.

    Anfang 2016 sind das folgende Systeme, von denen bekannt ist, + dass kivitendo auf ihnen läuft:

    • Debian

      • 6.0 "Squeeze" (hier muss allerdings das Modul FCGI in der Version >= 0.72 compiled werden, und Rose::DB::Object ist zu alt)

      • 7.0 "Wheezy"

    • Ubuntu 12.04 LTS "Precise Pangolin", 12.10 "Quantal Quetzal", 13.04 "Precise Pangolin", 14.04 "Trusty Tahr" LTS, 15.10 "Wily Werewolf" und 16.04 "Xenial Xerus" LTS Alpha

    • openSUSE 12.2, 12.3 und 13.1

    • SuSE Linux Enterprice Server 11

    • Fedora 16 bis 19

    2.2.2. Benötigte Perl-Pakete installieren

    Zum Betrieb von kivitendo werden zwingend ein Webserver (meist Apache) und ein Datenbankserver (PostgreSQL, mindestens v8.4) benötigt.

    Zusätzlich benötigt kivitendo einige Perl-Pakete, die nicht Bestandteil einer Standard-Perl-Installation sind. Um zu überprüfen, ob die erforderlichen Pakete installiert und aktuell genug sind, wird ein Script mitgeliefert, das wie folgt aufgerufen wird:

    ./scripts/installation_check.pl

    Die vollständige Liste der benötigten Perl-Module lautet:

    • parent (nur bei Perl vor 5.10.1)

    • Archive::Zip +

    • + Algorithm::CheckDigits

    • Config::Std

    • @@ -36,6 +38,8 @@ Net::SMTP::SSL (optional, bei E-Mail-Versand über SSL; siehe Abschnitt "E-Mail-Versand über einen SMTP-Server")

    • Net::SSLGlue (optional, bei E-Mail-Versand über TLS; siehe Abschnitt "E-Mail-Versand über einen SMTP-Server")

    • Params::Validate +

    • + PBKDF2::Tiny

    • PDF::API2

    • @@ -55,7 +59,9 @@ XML::Writer

    • YAML -

    Seit Version v3.2.0 sind die folgenden Pakete hinzugekommen: GD, HTML::Restrict, Image::Info +

Seit Version v3.4.0 sind die folgenden Pakete hinzugekommen: Algorithm::CheckDigits + PBKDF2::Tiny +

Seit Version v3.2.0 sind die folgenden Pakete hinzugekommen: GD, HTML::Restrict, Image::Info

Seit v3.0.0 sind die folgenden Pakete hinzugekommen: File::Copy::Recursive.

Seit v2.7.0 sind die folgenden Pakete hinzugekommen: Email::MIME, Net::SMTP::SSL, Net::SSLGlue.

Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen, URI und @@ -71,7 +77,7 @@ sind auch in 2.6.1 weiterhin mit ausgeliefert, wurden in einer zukünftigen Version aber aus dem Paket entfernt werden. Es wird empfohlen diese Module zusammen mit den anderen als Bibliotheken zu - installieren.

2.2.2.1. Debian und Ubuntu

Für Debian und Ubuntu stehen die meisten der benötigten Perl-Pakete als Debian-Pakete zur Verfügung. Sie können mit folgendem Befehl installiert werden:

apt-get install apache2 libarchive-zip-perl libclone-perl \
+        installieren.

2.2.2.1. Debian und Ubuntu

Für Debian und Ubuntu stehen die meisten der benötigten Perl-Pakete als Debian-Pakete zur Verfügung. Sie können mit folgendem Befehl installiert werden:

apt-get install apache2 libarchive-zip-perl libclone-perl \
   libconfig-std-perl libdatetime-perl libdbd-pg-perl libdbi-perl \
   libemail-address-perl  libemail-mime-perl libfcgi-perl libjson-perl \
   liblist-moreutils-perl libnet-smtp-ssl-perl libnet-sslglue-perl \
@@ -79,16 +85,18 @@
   librose-db-perl librose-object-perl libsort-naturally-perl \
   libstring-shellquote-perl libtemplate-perl libtext-csv-xs-perl \
   libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl \
-  libimage-info-perl libgd-gd2-perl \
-  libfile-copy-recursive-perl postgresql

Für das Paket HTML::Restrict gibt es kein Debian-Paket, dies muß per CPAN installiert werden. Unter Ubuntu funktioniert das mit:

apt-get install build-essential
-cpan HTML::Restrict

2.2.2.2. Fedora Core

Für Fedora Core stehen die meisten der benötigten Perl-Pakete als RPM-Pakete zur Verfügung. Sie können mit folgendem Befehl installiert werden:

yum install httpd perl-Archive-Zip perl-Clone perl-DBD-Pg \
+  libimage-info-perl libgd-gd2-perl libapache2-mod-fcgid \
+  libfile-copy-recursive-perl postgresql libalgorithm-checkdigits-perl \
+  libcrypt-pbkdf2-perl git
+

Für das Paket HTML::Restrict gibt es kein Debian-Paket, dies muß per CPAN installiert werden. Unter Ubuntu funktioniert das mit:

apt-get install build-essential
+cpan HTML::Restrict

2.2.2.2. Fedora Core

Für Fedora Core stehen die meisten der benötigten Perl-Pakete als RPM-Pakete zur Verfügung. Sie können mit folgendem Befehl installiert werden:

yum install httpd perl-Archive-Zip perl-Clone perl-DBD-Pg \
   perl-DBI perl-DateTime perl-Email-Address perl-Email-MIME perl-FCGI \
   perl-File-Copy-Recursive perl-JSON perl-List-MoreUtils perl-Net-SMTP-SSL perl-Net-SSLGlue \
   perl-PDF-API2 perl-Params-Validate perl-Rose-DB perl-Rose-DB-Object \
   perl-Rose-Object perl-Sort-Naturally perl-String-ShellQuote \
   perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI \
   perl-XML-Writer perl-YAML perl-parent postgresql-server

Zusätzlich müssen einige Pakete aus dem CPAN installiert werden. Dazu können Sie die folgenden Befehle nutzen:

yum install perl-CPAN
-cpan Config::Std

2.2.2.3. openSUSE

Für openSUSE stehen die meisten der benötigten Perl-Pakete als RPM-Pakete zur Verfügung. Sie können mit folgendem Befehl +cpan Config::Std

2.2.2.3. openSUSE

Für openSUSE stehen die meisten der benötigten Perl-Pakete als RPM-Pakete zur Verfügung. Sie können mit folgendem Befehl installiert werden:

zypper install apache2 perl-Archive-Zip perl-Clone \
   perl-Config-Std perl-DBD-Pg perl-DBI perl-DateTime perl-Email-Address \
   perl-Email-MIME perl-FastCGI perl-File-Copy-Recursive perl-JSON perl-List-MoreUtils \
diff --git a/doc/html/ch02s03.html b/doc/html/ch02s03.html
index 256429bc7..daef869ad 100644
--- a/doc/html/ch02s03.html
+++ b/doc/html/ch02s03.html
@@ -1,13 +1,25 @@
 
       
-   2.3. Manuelle Installation des Programmpaketes

2.3. Manuelle Installation des Programmpaketes

Der aktuelle Stable-Release, bzw. beta Release wird bei github gehostet und kann - hier heruntergeladen werden.

Die kivitendo ERP Installationsdatei (kivitendo-erp-3.3.0.tgz) wird im Dokumentenverzeichnis des Webservers + 2.3. Manuelle Installation des Programmpaketes

2.3. Manuelle Installation des Programmpaketes

Der aktuelle Stable-Release, bzw. beta Release wird bei github gehostet und kann + hier heruntergeladen werden.

Die kivitendo ERP Installationsdatei (kivitendo-erp-3.4.0.tgz) wird im Dokumentenverzeichnis des Webservers (z.B. /var/www/html/, /srv/www/htdocs oder /var/www/) entpackt:

cd /var/www
-tar xvzf kivitendo-erp-3.3.0.tgz

Wechseln Sie in das entpackte Verzeichnis:

cd kivitendo-erp

Alternativ können Sie auch einen Alias in der +tar xvzf kivitendo-erp-3.4.0.tgz

Wechseln Sie in das entpackte Verzeichnis:

cd kivitendo-erp

Alternativ können Sie auch einen Alias in der Webserverkonfiguration benutzen, um auf das tatsächliche Installationsverzeichnis zu verweisen.

Bei einer Neuinstallation von Version 3.1.0 oder später muß das WebDAV Verzeichnis derzeit manuell angelegt werden:

mkdir webdav

Die Verzeichnisse users, spool und webdav müssen für den Benutzer beschreibbar sein, unter dem der Webserver läuft. Die restlichen Dateien müssen für diesen Benutzer lesbar sein. Die Benutzer- und Gruppennamen sind bei verschiedenen Distributionen unterschiedlich (z.B. bei Debian/Ubuntu www-data, bei Fedora core apache oder bei OpenSUSE wwwrun).

Der folgende Befehl ändert den Besitzer für die oben genannten Verzeichnisse auf einem Debian/Ubuntu-System:

chown -R www-data users spool webdav

Weiterhin muss der Webserver-Benutzer in den Verzeichnissen templates und users - Unterverzeichnisse für jeden neuen Benutzer anlegen dürfen, der in kivitendo angelegt wird:

chown www-data templates users
\ No newline at end of file + Unterverzeichnisse für jeden neuen Benutzer anlegen dürfen, der in kivitendo angelegt wird:

chown www-data templates users
[Anmerkung]Anmerkung

Wir empfehlen eine Installation mittels des Versionsmanagager git. Hierfür muss ein git-Client installiert sein. + Damit ist man sehr viel flexibler für zukünftige Upgrades. + Installations-Anleitung (bitte die Pfade anpassen) bspw. wie folgt: +

cd /usr/local/src/
+git clone https://github.com/kivitendo/kivitendo-erp.git
+cd kivitendo-erp/
+git checkout `git tag -l | egrep -ve "(beta|rc)" | tail -1`

+ Sehr sinnvoll ist es, direkt im Anschluss einen eigenen Branch zu erzeugen, um bspw. seine eigenen Druckvorlagen-Anpassungen + damit zu verwalten. Hierfür reicht ein simples +

  git checkout -b meine_eigenen_änderungen

+ nach dem letzten Kommando (weiterführende Informationen +getting started with git). +

\ No newline at end of file diff --git a/doc/html/ch02s04.html b/doc/html/ch02s04.html index 6487b02bd..6c61bd655 100644 --- a/doc/html/ch02s04.html +++ b/doc/html/ch02s04.html @@ -1,6 +1,6 @@ - 2.4. kivitendo-Konfigurationsdatei

2.4. kivitendo-Konfigurationsdatei

2.4.1. Einführung

In kivitendo gibt es nur noch eine Konfigurationsdatei, + 2.4. kivitendo-Konfigurationsdatei

2.4. kivitendo-Konfigurationsdatei

2.4.1. Einführung

In kivitendo gibt es nur noch eine Konfigurationsdatei, die benötigt wird: config/kivitendo.conf (kurz: "die Hauptkonfigurationsdatei"). Diese muss bei der Erstinstallation von kivitendo bzw. der Migration von älteren Versionen angelegt diff --git a/doc/html/ch02s05.html b/doc/html/ch02s05.html index fca4ae306..85fa4ff71 100644 --- a/doc/html/ch02s05.html +++ b/doc/html/ch02s05.html @@ -1,6 +1,6 @@ - 2.5. Anpassung der PostgreSQL-Konfiguration

2.5. Anpassung der PostgreSQL-Konfiguration

PostgreSQL muss auf verschiedene Weisen angepasst werden.

2.5.1. Zeichensätze/die Verwendung von Unicode/UTF-8

kivitendo setzt zwingend voraus, dass die Datenbank Unicode/UTF-8 als Encoding einsetzt. Bei aktuellen Serverinstallationen + 2.5. Anpassung der PostgreSQL-Konfiguration

2.5. Anpassung der PostgreSQL-Konfiguration

PostgreSQL muss auf verschiedene Weisen angepasst werden.

2.5.1. Zeichensätze/die Verwendung von Unicode/UTF-8

kivitendo setzt zwingend voraus, dass die Datenbank Unicode/UTF-8 als Encoding einsetzt. Bei aktuellen Serverinstallationen braucht man hier meist nicht einzugreifen.

Das Encoding des Datenbankservers kann überprüft werden. Ist das Encoding der Datenbank "template1" "Unicode" bzw. "UTF-8", so braucht man nichts weiteres diesbezüglich unternehmen. Zum Testen:

su postgres
 echo '\l' | psql
diff --git a/doc/html/ch02s06.html b/doc/html/ch02s06.html
index 47f29d80b..217f50e0e 100644
--- a/doc/html/ch02s06.html
+++ b/doc/html/ch02s06.html
@@ -1,6 +1,6 @@
 
       
-   2.6. Webserver-Konfiguration

2.6. Webserver-Konfiguration

2.6.1. Grundkonfiguration mittels CGI

[Anmerkung]Anmerkung

Für einen deutlichen Performanceschub sorgt die Ausführung + 2.6. Webserver-Konfiguration

2.6. Webserver-Konfiguration

2.6.1. Grundkonfiguration mittels CGI

[Anmerkung]Anmerkung

Für einen deutlichen Performanceschub sorgt die Ausführung mittels FastCGI/FCGI. Die Einrichtung wird ausführlich im Abschnitt Konfiguration für FastCGI/FCGI beschrieben.

Der Zugriff auf das Programmverzeichnis muss in der Apache Webserverkonfigurationsdatei httpd.conf eingestellt @@ -66,16 +66,14 @@ Alias /url/for/kivitendo-erp/ /path/to/kivitendo-erp/ <Directory /path/to/kivitendo-erp> AllowOverride All Options ExecCGI Includes FollowSymlinks - Order Allow,Deny - Allow from All + Require all granted </Directory> <DirectoryMatch /path/to/kivitendo-erp/users> - Order Deny,Allow - Deny from All -</DirectoryMatch>

[Warnung]Warnung

Im Vergleich zu Apache 2.2 hat sich in Apache 2.4 die Syntax der Directorydirektiven verändert. Statt

+Require all granted
+</DirectoryMatch>
[Warnung]Warnung

Wer einen älteren Apache als Version 2.4 im Einsatz hat, muss entsprechend die Syntax der Directorydirektiven verändert. Statt

Require all granted

muß man Folgendes einstellen:

   Order Allow,Deny
-  Allow from All 

muß man jetzt Folgendes einstellen:

Require all granted

Seit mod_fcgid-Version 2.3.6 gelten sehr kleine Grenzen für + Allow from All

Seit mod_fcgid-Version 2.3.6 gelten sehr kleine Grenzen für die maximale Größe eines Requests. Diese sollte wie folgt hochgesetzt werden:

FcgidMaxRequestLen 10485760

Das Ganze sollte dann so aussehen:

AddHandler fcgid-script .fpl
 AliasMatch ^/url/for/kivitendo-erp/[^/]+\.pl /path/to/kivitendo-erp/dispatcher.fpl
@@ -105,7 +103,7 @@ AliasMatch ^/url/for/kivitendo-erp-fcgid/[^/]+\.pl /path/to/kivitendo-erp/dispat
 Alias       /url/for/kivitendo-erp-fcgid/          /path/to/kivitendo-erp/

Dann ist unter /url/for/kivitendo-erp/ die normale Version erreichbar, und unter /url/for/kivitendo-erp-fcgid/ die - FastCGI-Version.

2.6.3. Weitergehende Konfiguration

Für einen deutlichen Sicherheitsmehrwert sorgt die Ausführung von kivitendo + FastCGI-Version.

2.6.3. Weitergehende Konfiguration

Für einen deutlichen Sicherheitsmehrwert sorgt die Ausführung von kivitendo nur über https-verschlüsselten Verbindungen, sowie weiteren Zusatzmassnahmen, wie beispielsweise Basic Authenticate. Die Konfigurationsmöglichkeiten sprengen allerdings den Rahmen dieser Anleitung, hier ein diff --git a/doc/html/ch02s07.html b/doc/html/ch02s07.html index d3c8e1266..92d31db16 100644 --- a/doc/html/ch02s07.html +++ b/doc/html/ch02s07.html @@ -1,6 +1,6 @@ - 2.7. Der Task-Server

2.7. Der Task-Server

Der Task-Server ist ein Prozess, der im Hintergrund läuft, in regelmäßigen Abständen nach abzuarbeitenden Aufgaben sucht und + 2.7. Der Task-Server

2.7. Der Task-Server

Der Task-Server ist ein Prozess, der im Hintergrund läuft, in regelmäßigen Abständen nach abzuarbeitenden Aufgaben sucht und diese zu festgelegten Zeitpunkten abarbeitet (ähnlich wie Cron). Dieser Prozess wird u.a. für die Erzeugung der wiederkehrenden Rechnungen und weitere essenzielle Aufgaben benutzt.

Der Task-Server muss einmalig global in der Konfigurationsdatei konfiguriert werden. Danach wird er für jeden Mandanten, für den er laufen soll, in der Adminsitrationsmaske eingeschaltet.

Beachten Sie, dass der Task-Server in den Boot-Vorgang Ihres Servers integriert werden muss, damit er automatisch gestartet @@ -26,7 +26,7 @@ Links aus einem der Runlevel-Verzeichnisse heraus in den Boot-Prozess einzubinden. Da das bei neueren Linux-Distributionen aber nicht zwangsläufig funktioniert, werden auch Start-Scripte mitgeliefert, die - anstelle eines symbolischen Links verwendet werden können.

2.7.3.1. SystemV-basierende Systeme (z.B. Debian, ältere OpenSUSE, ältere Fedora Core)

Kopieren Sie die Datei + anstelle eines symbolischen Links verwendet werden können.

2.7.3.1. SystemV-basierende Systeme (z.B. Debian, ältere OpenSUSE, ältere Fedora Core)

Kopieren Sie die Datei scripts/boot/system-v/kivitendo-task-server nach /etc/init.d/kivitendo-task-server. Passen Sie in der kopierten Datei den Pfad zum Task-Server an (Zeile @@ -34,12 +34,12 @@ Boot-Prozess ein. Dies ist distributionsabhängig:

  • Debian-basierende Systeme:

    update-rc.d kivitendo-task-server defaults
     # Nur bei Debian Squeeze und neuer:
     insserv kivitendo-task-server
  • Ältere OpenSUSE und ältere Fedora Core:

    chkconfig --add kivitendo-task-server

Danach kann der Task-Server mit dem folgenden Befehl gestartet - werden:

/etc/init.d/kivitendo-task-server start

2.7.3.2. Upstart-basierende Systeme (z.B. Ubuntu)

Kopieren Sie die Datei + werden:

/etc/init.d/kivitendo-task-server start

2.7.3.2. Upstart-basierende Systeme (z.B. Ubuntu bis 14.04)

Kopieren Sie die Datei scripts/boot/upstart/kivitendo-task-server.conf nach /etc/init/kivitendo-task-server.conf. Passen Sie in der kopierten Datei den Pfad zum Task-Server an (Zeile exec ....).

Danach kann der Task-Server mit dem folgenden Befehl gestartet - werden:

service kivitendo-task-server start

2.7.3.3. systemd-basierende Systeme (z.B. neure OpenSUSE, neuere Fedora Core)

Verlinken Sie die Datei scripts/boot/systemd/kivitendo-task-server.service nach + werden:

service kivitendo-task-server start

2.7.3.3. systemd-basierende Systeme (z.B. neure OpenSUSE, neuere Fedora Core, neuere Ubuntu)

Verlinken Sie die Datei scripts/boot/systemd/kivitendo-task-server.service nach /etc/systemd/system/. Passen Sie in der kopierten Datei den Pfad zum Task-Server an (Zeile ExecStart=.... und ExecStop=...). Binden Sie das Script in den Boot-Prozess ein.

Alle hierzu benötigten Befehle sehen so aus:

cd /var/www/kivitendo-erp/scripts/boot/systemd
@@ -57,7 +57,4 @@ ln -s $(pwd)/kivitendo-task-server.service /etc/systemd/system/

Danach k status berichtet, ob der Task-Server läuft.

Der Task-Server wechselt beim Starten automatisch in das kivitendo-Installationsverzeichnis.

Dieselben Optionen können auch für die SystemV-basierenden - Runlevel-Scripte benutzt werden (siehe oben).

2.7.5. Task-Server mit mehreren Mandanten

Beim Task-Server werden der zu verwendende Mandant und Login-Name des Benutzers, unter dem der Task-Server laufen soll, in die - Konfigurationsdatei geschrieben. Hat man mehrere Mandanten, muss man auch mehrere Konfigurationsdateien anlegen.

Die Konfigurationsdatei ist eine Kopie der Datei kivitendo.conf, wo in der Kategorie [task_server] die - gewünschten Werte für client und login eingetragen werden.

Der alternative Task-Server wird dann mit folgendem Befehl - gestartet:

./scripts/task_server.pl -c config/DATEINAME.conf
\ No newline at end of file + Runlevel-Scripte benutzt werden (siehe oben).

\ No newline at end of file diff --git a/doc/html/ch02s08.html b/doc/html/ch02s08.html index a797c78b6..e5c836671 100644 --- a/doc/html/ch02s08.html +++ b/doc/html/ch02s08.html @@ -1,6 +1,6 @@ - 2.8. Benutzerauthentifizierung und Administratorpasswort

2.8. Benutzerauthentifizierung und Administratorpasswort

Informationen über die Einrichtung der Benutzerauthentifizierung, + 2.8. Benutzerauthentifizierung und Administratorpasswort

2.8. Benutzerauthentifizierung und Administratorpasswort

Informationen über die Einrichtung der Benutzerauthentifizierung, über die Verwaltung von Gruppen und weitere Einstellungen

2.8.1. Grundlagen zur Benutzerauthentifizierung

kivitendo verwaltet die Benutzerinformationen in einer Datenbank, die im folgenden “Authentifizierungsdatenbank” genannt wird. Für jeden Benutzer kann dort eine eigene Datenbank für die diff --git a/doc/html/ch02s09.html b/doc/html/ch02s09.html index aa476ee76..e3d7cf67e 100644 --- a/doc/html/ch02s09.html +++ b/doc/html/ch02s09.html @@ -1,6 +1,6 @@ - 2.9. Mandanten-, Benutzer- und Gruppenverwaltung

2.9. Mandanten-, Benutzer- und Gruppenverwaltung

Nach der Installation müssen Mandanten, Benutzer, Gruppen und Datenbanken angelegt werden. Dieses geschieht im + 2.9. Mandanten-, Benutzer- und Gruppenverwaltung

2.9. Mandanten-, Benutzer- und Gruppenverwaltung

Nach der Installation müssen Mandanten, Benutzer, Gruppen und Datenbanken angelegt werden. Dieses geschieht im Administrationsmenü, das Sie unter folgender URL finden:

http://localhost/kivitendo-erp/controller.pl?action=Admin/login

Verwenden Sie zur Anmeldung das Passwort, das Sie in der Datei diff --git a/doc/html/ch02s10.html b/doc/html/ch02s10.html index 02b859edc..686808f54 100644 --- a/doc/html/ch02s10.html +++ b/doc/html/ch02s10.html @@ -1,6 +1,6 @@ - 2.10. Drucker- und Systemverwaltung

2.10. Drucker- und Systemverwaltung

Im Administrationsmenü gibt es ferner noch die beiden Menüpunkte Druckeradministration und System.

2.10.1. Druckeradministration

Unter dem Menüpunkt Druckeradministration lassen sich beliebig viele "Druckbefehle" im System verwalten. Diese Befehle werden mandantenweise + 2.10. Drucker- und Systemverwaltung

2.10. Drucker- und Systemverwaltung

Im Administrationsmenü gibt es ferner noch die beiden Menüpunkte Druckeradministration und System.

2.10.1. Druckeradministration

Unter dem Menüpunkt Druckeradministration lassen sich beliebig viele "Druckbefehle" im System verwalten. Diese Befehle werden mandantenweise zugeordnet. Unter Druckerbeschreibung wird der Namen des Druckbefehls festgelegt, der dann in der Druckerauswahl des Belegs angezeigt wird.

Unter Druckbefehl definiert man den eigentlichen Druckbefehl, der direkt auf dem Webserver ausgeführt wird, bspw. 'lpr -P meinDrucker' oder ein kompletter Pfad zu einem Skript (/usr/local/src/kivitendo/scripts/pdf_druck_in_verzeichnis.sh). Wird ferner noch ein optionales Vorlagenkürzel verwendet, wird dieses Kürzel bei der Auswahl der Druckvorlagendatei mit einem Unterstrich ergänzt, ist diff --git a/doc/html/ch02s11.html b/doc/html/ch02s11.html index 8dc96e72d..fa619ec0e 100644 --- a/doc/html/ch02s11.html +++ b/doc/html/ch02s11.html @@ -1,6 +1,6 @@ - 2.11. E-Mail-Versand aus kivitendo heraus

2.11. E-Mail-Versand aus kivitendo heraus

kivitendo kann direkt aus dem Programm heraus E-Mails versenden, z.B. um ein Angebot direkt an einen Kunden zu + 2.11. E-Mail-Versand aus kivitendo heraus

2.11. E-Mail-Versand aus kivitendo heraus

kivitendo kann direkt aus dem Programm heraus E-Mails versenden, z.B. um ein Angebot direkt an einen Kunden zu verschicken. Damit dies funktioniert, muss eingestellt werden, über welchen Server die E-Mails verschickt werden sollen. kivitendo unterstützt dabei zwei Mechanismen: Versand über einen lokalen E-Mail-Server (z.B. mit Postfix™ oder Exim™, was auch die standardmäßig aktive Methode ist) sowie Versand über einen SMTP-Server (z.B. der des diff --git a/doc/html/ch02s12.html b/doc/html/ch02s12.html index 21e599883..0023f1556 100644 --- a/doc/html/ch02s12.html +++ b/doc/html/ch02s12.html @@ -1,10 +1,10 @@ - 2.12. Drucken mit kivitendo

2.12. Drucken mit kivitendo

Das Drucksystem von kivitendo benutzt von Haus aus LaTeX-Vorlagen. Um drucken zu können, braucht der Server ein geeignetes + 2.12. Drucken mit kivitendo

2.12. Drucken mit kivitendo

Das Drucksystem von kivitendo benutzt von Haus aus LaTeX-Vorlagen. Um drucken zu können, braucht der Server ein geeignetes LaTeX System. Am einfachsten ist dazu eine texlive Installation. Unter debianoiden Betriebssystemen installiert man die Pakete mit:

-

aptitude install texlive-base-bin texlive-latex-recommended texlive-fonts-recommended \
-  texlive-latex-extra texlive-lang-german texlive-generic-extra

+

apt-get install texlive-base-bin texlive-latex-recommended texlive-fonts-recommended \
+  exlive-latex-extra texlive-lang-german texlive-generic-extra

TODO: RPM-Pakete.

kivitendo bringt drei alternative Vorlagensätze mit:

  • RB

  • f-tex

  • rev-odt

Der ehemalige Druckvorlagensatz "Standard" wurde mit der Version 3.3 entfernt, da er nicht mehr gepflegt wurde.

2.12.1. Vorlagenverzeichnis anlegen

Es lässt sich ein initialer Vorlagensatz erstellen. Die LaTeX-System-Abhängigkeiten hierfür kann man prüfen mit:

./scripts/installation_check.pl -lv

Der Angemeldete Benutzer muss in einer Gruppe sein, die über das Recht "Konfiguration -> Mandantenverwaltung" verfügt. Siehe auch Abschnitt 2.9.4, „Gruppen anlegen“.

Im Userbereich lässt sich unter: diff --git a/doc/html/ch02s13.html b/doc/html/ch02s13.html index 0c91c7012..236dbaa9e 100644 --- a/doc/html/ch02s13.html +++ b/doc/html/ch02s13.html @@ -1,6 +1,6 @@ - 2.13. OpenDocument-Vorlagen

2.13. OpenDocument-Vorlagen

kivitendo unterstützt die Verwendung von Vorlagen im + 2.13. OpenDocument-Vorlagen

2.13. OpenDocument-Vorlagen

kivitendo unterstützt die Verwendung von Vorlagen im OpenDocument-Format, wie es OpenOffice.org ab Version 2 erzeugt. kivitendo kann dabei sowohl neue OpenDocument-Dokumente als auch aus diesen direkt PDF-Dateien erzeugen. Um die Unterstützung von diff --git a/doc/html/ch02s14.html b/doc/html/ch02s14.html index 48eb5f756..375942ab5 100644 --- a/doc/html/ch02s14.html +++ b/doc/html/ch02s14.html @@ -1,6 +1,6 @@ - 2.14. Konfiguration zur Einnahmenüberschussrechnung/Bilanzierung: EUR

4.1.3.7. $::instance_conf

  • Objekt der Klasse "SL::InstanceConfiguration"

  • wird pro Request neu erstellt

Funktioniert wie $::lx_office_conf, speichert aber Daten die von der Instanz abhängig sind. Eine Instanz ist hier eine Mandantendatenbank. Beispielsweise überprüft

$::instance_conf->get_inventory_system eq 'perpetual'

- ob die berüchtigte Bestandsmethode zur Anwendung kommt.

4.1.3.8. $::dispatcher

  • Objekt der Klasse + ob die berüchtigte Bestandsmethode zur Anwendung kommt.

4.1.3.8. $::dispatcher

  • Objekt der Klasse "SL::Dispatcher"

  • wird pro Serverprozess erstellt.

  • enthält Informationen über die technische Verbindung zum Server

Der dritte Punkt ist auch der einzige Grund warum das Objekt global gespeichert wird. Wird vermutlich irgendwann in einem anderen - Objekt untergebracht.

4.1.3.9. $::request

  • Hashref (evtl später Objekt)

  • Wird pro Request neu initialisiert.

  • Keine Unterstruktur garantiert.

+ Objekt untergebracht.

4.1.3.9. $::request

  • Hashref (evtl später Objekt)

  • Wird pro Request neu initialisiert.

  • Keine Unterstruktur garantiert.

$::request ist ein generischer Platz um Daten "für den aktuellen Request" abzulegen. Sollte nicht für action at a distance benutzt werden, sondern um lokales memoizing zu @@ -174,20 +174,20 @@ file_name = /tmp/kivitendo-debug.log

ist der Key f $::request

  • Muss ich von anderen Teilen des Programms lesend drauf zugreifen? Dann $::request, aber Zugriff über - Wrappermethode

  • 4.1.4. Ehemalige globale Variablen

    Die folgenden Variablen waren einmal im Programm, und wurden - entfernt.

    4.1.4.1. $::cgi

    • war nötig, weil cookie Methoden nicht als + Wrappermethode

    4.1.4. Ehemalige globale Variablen

    Die folgenden Variablen waren einmal im Programm, und wurden + entfernt.

    4.1.4.1. $::cgi

    • war nötig, weil cookie Methoden nicht als Klassenfunktionen funktionieren

    • Aufruf als Klasse erzeugt Dummyobjekt was im Klassennamespace gehalten wird und über Requestgrenzen leaked

    • liegt jetzt unter $::request->{cgi} -

    4.1.4.2. $::all_units

    • war nötig, weil einige Funktionen in Schleifen zum Teil +

    4.1.4.2. $::all_units

    • war nötig, weil einige Funktionen in Schleifen zum Teil ein paar hundert mal pro Request eine Liste der Einheiten brauchen, und de als Parameter durch einen Riesenstack von Funktionen geschleift werden müssten.

    • Liegt jetzt unter $::request->{cache}{all_units}

    • Wird nur in AM->retrieve_all_units() gesetzt oder - gelesen.

    4.1.4.3. %::called_subs

    • wurde benutzt um callsub deep recursions + gelesen.

    4.1.4.3. %::called_subs

    • wurde benutzt um callsub deep recursions abzufangen.

    • Wurde entfernt, weil callsub nur einen Bruchteil der möglichen Rekursioenen darstellt, und da nie welche auftreten.

    • komplette recursion protection wurde entfernt.

    \ No newline at end of file diff --git a/doc/html/ch04s02.html b/doc/html/ch04s02.html index 2dab81c12..98703f7a2 100644 --- a/doc/html/ch04s02.html +++ b/doc/html/ch04s02.html @@ -1,6 +1,6 @@ - 4.2. Entwicklung unter FastCGI

    4.2. Entwicklung unter FastCGI

    4.2.1. Allgemeines

    Wenn Änderungen in der Konfiguration von kivitendo gemacht + 4.2. Entwicklung unter FastCGI

    4.2. Entwicklung unter FastCGI

    4.2.1. Allgemeines

    Wenn Änderungen in der Konfiguration von kivitendo gemacht werden, muss der Webserver neu gestartet werden.

    Bei der Entwicklung für FastCGI ist auf ein paar Fallstricke zu achten. Dadurch, dass das Programm in einer Endlosschleife läuft, müssen folgende Aspekte beachtet werden.

    4.2.2. Programmende und Ausnahmen

    Betrifft die Funktionen warn, diff --git a/doc/html/ch04s03.html b/doc/html/ch04s03.html index 7efff6e9f..2d6a35d88 100644 --- a/doc/html/ch04s03.html +++ b/doc/html/ch04s03.html @@ -1,6 +1,6 @@ - 4.3. SQL-Upgradedateien

    4.3. SQL-Upgradedateien

    4.3.1. Einführung

    Datenbankupgrades werden über einzelne Upgrade-Scripte gesteuert, die sich im Verzeichnis sql/Pg-upgrade2 + 4.3. SQL-Upgradedateien

    4.3. SQL-Upgradedateien

    4.3.1. Einführung

    Datenbankupgrades werden über einzelne Upgrade-Scripte gesteuert, die sich im Verzeichnis sql/Pg-upgrade2 befinden. In diesem Verzeichnis muss pro Datenbankupgrade eine Datei existieren, die neben den eigentlich auszuführenden SQL- oder Perl-Befehlen einige Kontrollinformationen enthält.

    Kontrollinformationen definieren Abhängigkeiten und Prioritäten, sodass Datenbankscripte zwar in einer sicheren Reihenfolge ausgeführt werden (z.B. darf ein ALTER TABLE erst ausgeführt werden, wenn die Tabelle mit CREATE diff --git a/doc/html/ch04s04.html b/doc/html/ch04s04.html index 15aaa08b3..5ab9f74a4 100644 --- a/doc/html/ch04s04.html +++ b/doc/html/ch04s04.html @@ -1,6 +1,6 @@ - 4.4. Translations and languages

    4.4. Translations and languages

    4.4.1. Introduction

    [Anmerkung]Anmerkung

    Dieser Abschnitt ist in Englisch geschrieben, um + 4.4. Translations and languages

    4.4. Translations and languages

    4.4.1. Introduction

    [Anmerkung]Anmerkung

    Dieser Abschnitt ist in Englisch geschrieben, um internationalen Übersetzern die Arbeit zu erleichtern.

    This section describes how localization packages in kivitendo are built. Currently the only language fully supported is German, and since most of the internal messages are held in English the English diff --git a/doc/html/ch04s05.html b/doc/html/ch04s05.html index 320e1899c..316136ded 100644 --- a/doc/html/ch04s05.html +++ b/doc/html/ch04s05.html @@ -1,6 +1,6 @@ - 4.5. Die kivitendo-Test-Suite

    4.5. Die kivitendo-Test-Suite

    4.5.1. Einführung

    kivitendo enthält eine Suite für automatisierte Tests. Sie basiert auf dem Standard-Perl-Modul Test::More.

    Die grundlegenden Fakten sind: