<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<book id="kivitendo-documentation" lang="de">
- <title>kivitendo 3.4.0: Installation, Konfiguration, Entwicklung</title>
+ <title>kivitendo 3.4.1: Installation, Konfiguration, Entwicklung</title>
<chapter id="Aktuelle-Hinweise">
<title>Aktuelle Hinweise</title>
<para><literal>File::Copy::Recursive</literal></para>
</listitem>
+ <listitem>
+ <para><literal>File::MimeInfo::Magic</literal></para>
+ </listitem>
+
<listitem>
<para><literal>GD</literal></para>
</listitem>
<para><literal>List::MoreUtils</literal></para>
</listitem>
- <listitem>->
+ <listitem>
<para><literal>List::UtilsBy</literal></para>
</listitem>
<listitem>
<para><literal>Rose::Object</literal></para>
</listitem>
-->
+
<listitem>
<para><literal>Rose::DB</literal></para>
</listitem>
</listitem>
<listitem>
- <para><literal>URI</literal></para>->
+ <para><literal>URI</literal></para>
</listitem>
<listitem>
Perl-Pakete als Debian-Pakete zur Verfügung. Sie können mit
folgendem Befehl installiert werden:</para>
- <programlisting>apt-get install apache2 libarchive-zip-perl libclone-perl \
+ <programlisting>apt 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 \
libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl \
libimage-info-perl libgd-gd2-perl libapache2-mod-fcgid \
libfile-copy-recursive-perl postgresql libalgorithm-checkdigits-perl \
- libcrypt-pbkdf2-perl git
+ libcrypt-pbkdf2-perl git libcgi-pm-perl
</programlisting>
<para>Für das Paket HTML::Restrict gibt es kein Debian-Paket, dies
<programlisting>cpan Rose::Db::Object</programlisting>
</sect3>
</sect2>
+ <sect2>
+ <title>Andere Pakete installieren</title>
+
+ <para>Seit Version v3.4.0 wird für den Bankimport optional das Paket
+ 'aqbanking-tools' benötigt.</para>
+
+ <para>Ubuntu: <programlisting>apt install aqbanking-tools</programlisting></para>
+
+ <para>OpenSuSE: <programlisting>zypper install aqbanking-tools</programlisting></para>
+
+ <para>Seit Version v3.4.1 wird generell zum Feststellen der
+ Seitenanzahl von PDF_Dokumenten 'pdfinfo' benötigt was im Paket
+ 'poppler-utils' enthalten ist.</para>
+
+ <para>Ubuntu: <programlisting>apt install poppler-utils</programlisting></para>
+
+ <para>OpenSuSE: <programlisting>zypper install poppler-tools</programlisting></para>
+ </sect2>
+
</sect1>
<sect1 id="Manuelle-Installation-des-Programmpaketes"
heruntergeladen werden.</para>
<para>Die kivitendo ERP Installationsdatei
- (<filename>kivitendo-erp-3.4.0.tgz</filename>) wird im
+ (<filename>kivitendo-erp-3.4.1.tgz</filename>) wird im
Dokumentenverzeichnis des Webservers (z.B.
<filename>/var/www/html/</filename>,
<filename>/srv/www/htdocs</filename> oder
<filename>/var/www/</filename>) entpackt:</para>
<programlisting>cd /var/www
-tar xvzf kivitendo-erp-3.4.0.tgz</programlisting>
+tar xvzf kivitendo-erp-3.4.1.tgz</programlisting>
<para>Wechseln Sie in das entpackte Verzeichnis:</para>
<para>Die Einstellung <varname>default_manager = swiss</varname> bewirkt:</para>
<itemizedlist>
<listitem>
- <para>Beim Erstellen einer neuen Datenbank in der kivitendo Administration
- werden automatisch die Standard-Werte für die Schweiz voreingestellt:
- Währung CHF, 5er-Rundung, Schweizer KMU-Kontenplan, Sollversteuerung,
+ <para>Beim Erstellen einer neuen Datenbank in der kivitendo Administration
+ werden automatisch die Standard-Werte für die Schweiz voreingestellt:
+ Währung CHF, 5er-Rundung, Schweizer KMU-Kontenplan, Sollversteuerung,
Aufwandsmethode, Bilanzierung (die Werte können aber manuell angepasst werden).</para>
</listitem>
<listitem>
</listitem>
<listitem>
<para>das verwendete Zahlenformat wird auf <varname>1'000.00</varname> eingestellt
- (unter Programm → Benutzereinstellungen veränderbar)</para>
+ (unter Programm → Benutzereinstellungen veränderbar)</para>
</listitem>
<listitem>
- <para>DATEV-Automatik und UStVA werden nicht angezeigt, Erfolgsrechnung
+ <para>DATEV-Automatik und UStVA werden nicht angezeigt, Erfolgsrechnung
ersetzt GUV ( unter Mandantenkonfiguration → Features veränderbar)</para>
</listitem>
</itemizedlist>
-
+
<para>Nutzt man wiederkehrende Rechnungen, kann man unter
<varname>[periodic_invoices]</varname> den Login eines Benutzers
angeben, der nach Erstellung der Rechnungen eine entsprechende E-Mail
</Directory>
<DirectoryMatch /path/to/kivitendo-erp/users>
-Require all granted
+Require all denied
</DirectoryMatch></programlisting>
<warning>
<programlisting>
Order Allow,Deny
Allow from All </programlisting>
+
+ <para>und statt</para>
+
+ <programlisting>Require all denied</programlisting>
+
+ <para>muss stehen:</para>
+
+ <programlisting>
+ Order Deny,Allow
+ Deny from All </programlisting>
+
</warning>
<para>Seit mod_fcgid-Version 2.3.6 gelten sehr kleine Grenzen für
</sect3>
<sect3>
- <title>systemd-basierende Systeme (z.B. neure OpenSUSE, neuere
- Fedora, neuere Ubuntu)</title>
+ <title>systemd-basierende Systeme (z.B. neure openSUSE, neuere
+ Fedora, neuere Ubuntu und Debians)</title>
- <para>Verlinken Sie die Datei
- <filename>scripts/boot/systemd/kivitendo-task-server.service</filename>
- nach <filename>/etc/systemd/system/</filename>. Passen Sie in der
- kopierten Datei den Pfad zum Task-Server an (Zeile
- <literal>ExecStart=....</literal> und
- <literal>ExecStop=...</literal>). Binden Sie das Script in den
- Boot-Prozess ein.</para>
+ <para>Kopieren Sie die Datei <filename>scripts/boot/systemd/kivitendo-task-server.service</filename> nach
+ <filename>/etc/systemd/system/</filename>. Passen Sie in der kopierten Datei den Pfad zum Task-Server an (Zeilen
+ <literal>ExecStart=....</literal> und <literal>ExecStop=...</literal>).</para>
- <para>Alle hierzu benötigten Befehle sehen so aus:</para>
+ <para>Machen Sie anschließend das Script systemd bekannt, und binden Sie es in den Boot-Prozess ein. Dazu führen Sie die folgenden
+ Befehl aus:</para>
- <programlisting>cd /var/www/kivitendo-erp/scripts/boot/systemd
-ln -s $(pwd)/kivitendo-task-server.service /etc/systemd/system/</programlisting>
+ <programlisting>systemctl daemon-reload
+systemctl enable kivitendo-task-server.service</programlisting>
- <para>Danach kann der Task-Server mit dem folgenden Befehl gestartet
- werden:</para>
+ <para>Wenn Sie den Task-Server jetzt sofort starten möchten, anstatt den Server neu zu starten, so können Sie das mit dem
+ folgenden Befehl tun:</para>
<programlisting>systemctl start kivitendo-task-server.service</programlisting>
</sect3>
debianoiden Betriebssystemen installiert man die Pakete mit:</para>
<para><programlisting>apt-get install texlive-base-bin texlive-latex-recommended texlive-fonts-recommended \
- exlive-latex-extra texlive-lang-german texlive-generic-extra</programlisting></para>
+ texlive-latex-extra texlive-lang-german texlive-generic-extra</programlisting></para>
<para>Für Fedora benötigen Sie die folgenden Pakete:</para>
die vom Parser nicht korrekt gelesen werden kann.</para>
<para>Zur Zeit gibt es in kivitendo noch keine Möglichkeit,
- odt-Vorlagen bei Mahnungen, Briefen und Pflichtenheften einzusetzen.
+ odt-Vorlagen bei Mahnungen, Briefen und Pflichtenheften einzusetzen.
Entsprechende Vorlagen sind deshalb nicht vorhanden.</para>
<para>Fehlermeldungen, Anregungen und Wünsche bitte senden an:
enthalten.</para>
<para>Zusätzlich gibt es zwei verschiedene Arten, wie kivitendo mit
- LibreOffice bzw. OpenOffice kommuniziert. Die erste Variante, die benutzt
- wird, wenn die Variable <literal>$openofficeorg_daemon</literal> gesetzt
- ist, startet ein LibreOffice oder OpenOffice, das auch nach der Umwandlung
- des Dokumentes gestartet bleibt. Bei weiteren Umwandlungen wird dann diese
- laufende Instanz benutzt. Der Vorteil ist, dass die Zeit zur Umwandlung
- deutlich reduziert wird, weil nicht für jedes Dokument ein LibreOffice bzw.
- OpenOffice gestartet werden muss. Der Nachteil ist, dass diese Methode
- Python und die Python-UNO-Bindings benötigt, die Bestandteil von LibreOffice
+ LibreOffice bzw. OpenOffice kommuniziert. Die erste Variante, die benutzt
+ wird, wenn die Variable <literal>$openofficeorg_daemon</literal> gesetzt
+ ist, startet ein LibreOffice oder OpenOffice, das auch nach der Umwandlung
+ des Dokumentes gestartet bleibt. Bei weiteren Umwandlungen wird dann diese
+ laufende Instanz benutzt. Der Vorteil ist, dass die Zeit zur Umwandlung
+ deutlich reduziert wird, weil nicht für jedes Dokument ein LibreOffice bzw.
+ OpenOffice gestartet werden muss. Der Nachteil ist, dass diese Methode
+ Python und die Python-UNO-Bindings benötigt, die Bestandteil von LibreOffice
bzw. OpenOffice sind.</para>
<note>
- <para>Für die Verbindung zu LibreOffice bzw. OpenOffice wird
+ <para>Für die Verbindung zu LibreOffice bzw. OpenOffice wird
normalerweise der Python-Interpreter
<filename>/usr/bin/python</filename> benutzt.
Sollte dies nicht der richtige sein, so kann man mit zwei
<para>Zusätzlich ist es möglich, Pfade anzugeben, in denen Python
neben seinen normalen Suchpfaden ebenfalls nach Modulen gesucht wird,
- z.B. falls sich diese in einem gesonderten LibreOffice- bzw.
+ z.B. falls sich diese in einem gesonderten LibreOffice- bzw.
OpenOffice-Verzeichnis befinden. Diese zweite Variable heißt
<literal>python_uno_path</literal> und befindet sich im Abschnitt
<literal>environment</literal>. Sie ist standardmäßig leer. Werden
</note>
<para>Ist <literal>$openofficeorg_daemon</literal> nicht gesetzt, so
- wird für jedes Dokument LibreOffice bzw. OpenOffice neu gestartet
- und die Konvertierung mit Hilfe eines Makros durchgeführt. Dieses
+ wird für jedes Dokument LibreOffice bzw. OpenOffice neu gestartet
+ und die Konvertierung mit Hilfe eines Makros durchgeführt. Dieses
Makro muss in der Dokumentenvorlage enthalten sein und
“Standard.Conversion.ConvertSelfToPDF()” heißen. Die Beispielvorlage
‘<literal>templates/print/rev-odt/invoice.odt</literal>’
<para>Als letztes muss herausgefunden werden, welchen Namen
OpenOffice bzw. LibreOffice dem Verzeichnis mit den Benutzereinstellungen
- gibt. Unter Debian ist dies momentan
- <literal>~/.config/libreoffice</literal>. kivitendo verwendet das
+ gibt. Unter Debian ist dies momentan
+ <literal>~/.config/libreoffice</literal>. kivitendo verwendet das
Verzeichnis <literal>users/.openoffice.org2</literal>.
Eventuell muss dieses Verzeichnis umbenannt werden.</para>
<para>Dieses Verzeichnis, wie auch das komplette
<literal>users</literal>-Verzeichnis, muss vom Webserver beschreibbar
sein. Dieses wurde bereits erledigt (siehe <xref
- linkend="Manuelle-Installation-des-Programmpaketes"/>), kann aber
- erneut überprüft werden, wenn die Konvertierung nach PDF
+ linkend="Manuelle-Installation-des-Programmpaketes"/>), kann aber
+ erneut überprüft werden, wenn die Konvertierung nach PDF
fehlschlägt.</para>
<sect2>
<para>DDDBETRAG: <%total%> Einzahlungsbetrag oder 0,
falls Einzahlungsschein ohne Betrag</para>
</listitem>
-
+
<listitem>
<para>DDDEND: muss am Ende der Zeile vorhanden sein</para>
</listitem>
<para>Beim Anlegen eines neuen Mandanten bzw. einer neuen Datenbank in
der Admininstration können diese Optionen nun unabhängig voneinander
eingestellt werden.</para>
-
+
<para>Für die Schweiz sind folgende Einstellungen üblich:
<itemizedlist>
<listitem>
<para>Bilanzierung</para>
</listitem>
</itemizedlist>
- Diese Einstellungen werden automatisch beim Erstellen einer neuen
- Datenbank vorausgewählt, wenn in <filename>config/kivitendo.conf</filename> unter
- <varname>[system]</varname> <literal>default_manager = swiss</literal> eingestellt ist.
+ Diese Einstellungen werden automatisch beim Erstellen einer neuen
+ Datenbank vorausgewählt, wenn in <filename>config/kivitendo.conf</filename> unter
+ <varname>[system]</varname> <literal>default_manager = swiss</literal> eingestellt ist.
</para>
<para>Beim Upgrade bestehender Mandanten wird eur ausgelesen und die
den Optionen mit EB-Buchungen wird vorausgesetzt, daß diese immer am 1.
Tag des Wirtschaftsjahres gebucht werden. Zur Sicherheit wird das
Startdatum im Bilanzbericht jetzt zusätzlich zum Stichtag mit angezeigt.
- Das hilft auch bei der Kontrolle für den Abgleich mit der GuV bzw.
+ Das hilft auch bei der Kontrolle für den Abgleich mit der GuV bzw.
Erfolgsrechnung.</para>
</sect1>
-
+
<sect1 id="config.erfolgsrechnung">
<title>Erfolgsrechnung</title>
-
+
<para>Seit der Version 3.4.1 existiert in kivitendo der Bericht <emphasis role="bold">
Erfolgsrechnung</emphasis>.</para>
-
- <para>Die Erfolgsrechnung kann in der Mandantenkonfiguration unter Features
+
+ <para>Die Erfolgsrechnung kann in der Mandantenkonfiguration unter Features
an- oder abgeschaltet werden. Mit der Einstellung <varname>default_manager = swiss
- </varname> in der <filename>config/kivitendo.conf</filename> wird beim neu Erstellen
+ </varname> in der <filename>config/kivitendo.conf</filename> wird beim neu Erstellen
einer Datenbank automatisch die Anzeige der Erfolgsrechnung im Menü <guimenu>Berichte
</guimenu> ausgewählt und ersetzt dort die GUV.</para>
-
- <para>Im Gegensatz zur GUV werden bei der Erfolgsrechnung sämtliche Aufwands- und
+
+ <para>Im Gegensatz zur GUV werden bei der Erfolgsrechnung sämtliche Aufwands- und
Erlöskonten einzeln aufgelistet (analog zur Bilanz), sortiert nach ERTRAG und AUFWAND.</para>
-
- <para>Bei den Konteneinstellungen muss bei jedem Konto, das in der Erfolgsrechnung
- erscheinen soll, unter <varname>Sonstige Einstellungen/Erfolgsrechnung</varname>
- entweder <literal>01.Ertrag</literal> oder <literal>06.Aufwand</literal> ausgewählt
+
+ <para>Bei den Konteneinstellungen muss bei jedem Konto, das in der Erfolgsrechnung
+ erscheinen soll, unter <varname>Sonstige Einstellungen/Erfolgsrechnung</varname>
+ entweder <literal>01.Ertrag</literal> oder <literal>06.Aufwand</literal> ausgewählt
werden.</para>
-
- <para>Wird bei einem Erlöskonto <literal>06.Aufwand</literal> ausgewählt,
+
+ <para>Wird bei einem Erlöskonto <literal>06.Aufwand</literal> ausgewählt,
so wird dieses Konto als Aufwandsminderung unter AUFWAND aufgelistet.</para>
-
- <para>Wird bei einem Aufwandskonto <literal>01.Ertrag</literal> ausgewählt,
+
+ <para>Wird bei einem Aufwandskonto <literal>01.Ertrag</literal> ausgewählt,
so wird dieses Konto als Ertragsminderung unter ERTRAG aufgelistet.</para>
-
- <para>Soll bei einer bereits bestehenden Buchhaltung in Zukunft zusätzlich
- die Erfolgsrechnung als Bericht verwendet werden, so müssen die Einstellungen
- zu allen Erlös- und Aufwandskonten unter <varname>Sonstige
+
+ <para>Soll bei einer bereits bestehenden Buchhaltung in Zukunft zusätzlich
+ die Erfolgsrechnung als Bericht verwendet werden, so müssen die Einstellungen
+ zu allen Erlös- und Aufwandskonten unter <varname>Sonstige
Einstellungen/Erfolgsrechnung</varname> überprüft und allenfalls neu gesetzt werden.</para>
</sect1>
-
+
<sect1 id="config.rounding">
<title>Rundung in Verkaufsbelegen</title>
-
+
<para>In der Schweiz hat die kleinste aktuell benutzte Münze den Wert von 5 Rappen (0.05 CHF).</para>
-
- <para>Auch wenn im elektronischen Zahlungsverkehr Beträge mit einer Genauigkeit
- von 0.01 CHF verwendet werden können, ist es trotzdem nach wie vor üblich,
+
+ <para>Auch wenn im elektronischen Zahlungsverkehr Beträge mit einer Genauigkeit
+ von 0.01 CHF verwendet werden können, ist es trotzdem nach wie vor üblich,
Rechnungen mit auf 0.05 CHF gerundeten Beträgen auszustellen.</para>
-
- <para>In kivitendo kann seit der Version 3.4.1 die Einstellung für eine solche
+
+ <para>In kivitendo kann seit der Version 3.4.1 die Einstellung für eine solche
Rundung pro Mandant / Datenbank festgelegt werden.</para>
-
- <para>Die Einstellung wird beim Erstellen der Datenbank bei <literal>Genauigkeit</literal>
- festgelegt. Sie kann anschliessend über das Webinterface von kivitendo nicht mehr
+
+ <para>Die Einstellung wird beim Erstellen der Datenbank bei <literal>Genauigkeit</literal>
+ festgelegt. Sie kann anschliessend über das Webinterface von kivitendo nicht mehr
verändert werden.</para>
-
- <para>Abhängig vom Wert für <varname>default_manager</varname> in
- <filename>config/kivitendo.conf</filename> werden dabei folgende
+
+ <para>Abhängig vom Wert für <varname>default_manager</varname> in
+ <filename>config/kivitendo.conf</filename> werden dabei folgende
Werte voreingestellt:</para>
<itemizedlist>
<listitem>
<para>0.01 (default_manager = german)</para>
</listitem>
</itemizedlist>
- <para>Der Wert wird in der Datenbank in der Tabelle <varname>defaults
+ <para>Der Wert wird in der Datenbank in der Tabelle <varname>defaults
</varname>in der Spalte <varname>precision</varname> gespeichert.</para>
-
- <para>In allen Verkaufsangeboten, Verkaufsaufträgen, Verkaufsrechnungen
- und Verkaufsgutschriften wird der Endbetrag inkl. MWST gerundet,
+
+ <para>In allen Verkaufsangeboten, Verkaufsaufträgen, Verkaufsrechnungen
+ und Verkaufsgutschriften wird der Endbetrag inkl. MWST gerundet,
wenn dieser nicht der eingestellten Genauigkeit entspricht.</para>
-
- <para>Beim Buchen einer Verkaufsrechnung wird der Rundungsbetrag
- automatisch auf die in der Mandantenkonfiguration festgelegten
+
+ <para>Beim Buchen einer Verkaufsrechnung wird der Rundungsbetrag
+ automatisch auf die in der Mandantenkonfiguration festgelegten
Standardkonten für Rundungserträge bzw. Rundungsaufwendungen gebucht.</para>
-
+
<para>(Die berechnete MWST wird durch den Rundungsbetrag nicht mehr verändert.)</para>
-
- <para>Die in den Druckvorlagen zur Verfügung stehenden Variablen
- <varname>quototal</varname>, <varname>ordtotal</varname> bzw.
+
+ <para>Die in den Druckvorlagen zur Verfügung stehenden Variablen
+ <varname>quototal</varname>, <varname>ordtotal</varname> bzw.
<varname>invtotal</varname> enthalten den gerundeten Betrag.</para>
-
- <para><emphasis role="bold">Achtung:</emphasis> Werden Verkaufsbelege
- in anderen Währungen als der Standardwährung erstellt, so muss in
+
+ <para><emphasis role="bold">Achtung:</emphasis> Werden Verkaufsbelege
+ in anderen Währungen als der Standardwährung erstellt, so muss in
kivitendo 3.4.1 die Genauigkeit 0.01 verwendet werden.</para>
- <para>Das heisst, Firmen in der Schweiz, die teilweise Verkaufsrechnungen
- in Euro oder anderen Währungen erstellen wollen, müssen beim Erstellen
- der Datenbank als Genauigkeit 0.01 wählen und können zur Zeit die
- 5er Rundung noch nicht nutzen.</para>
+ <para>Das heisst, Firmen in der Schweiz, die teilweise Verkaufsrechnungen
+ in Euro oder anderen Währungen erstellen wollen, müssen beim Erstellen
+ der Datenbank als Genauigkeit 0.01 wählen und können zur Zeit die
+ 5er Rundung noch nicht nutzen.</para>
</sect1>
<sect1 id="config.client">
(siehe <xref
linkend="dokumentenvorlagen-und-variablen.tag-style"/>).</para>
- <para>kivitendo unterstützt LaTeX-, HTML- und OpenDocument-Vorlagen.
- Sofern es nicht ausdrücklich eingeschränkt wird, gilt das im
+ <para>kivitendo unterstützt LaTeX-, HTML- und OpenDocument-Vorlagen.
+ Sofern es nicht ausdrücklich eingeschränkt wird, gilt das im
Folgenden gesagte für alle Vorlagenarten.</para>
<para>Insgesamt sind technisch gesehen eine ganze Menge mehr Variablen
<term><varname>rounding</varname></term>
<listitem>
- <para>Betrag, um den <varname>invtotal</varname> gerundet wurde
+ <para>Betrag, um den <varname>invtotal</varname> gerundet wurde
(kann positiv oder negativ sein)</para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><varname>shippingpoint</varname></term>
<sect3 id="dokumentenvorlagen-und-variablen.dunning-allgemein">
<title>Allgemeine Variablen in Mahnungen</title>
- <para>Die Variablen des Verkäufers stehen wie gewohnt als
- <varname>employee_...</varname> zur Verfügung. Die Adressdaten des
- Kunden stehen als Variablen <varname>name</varname>,
+ <para>Die Variablen des Bearbeiters, bzw. Verkäufers stehen wie gewohnt als
+ <varname>employee_...</varname> bzw. <varname>salesman_...</varname> zur Verfügung.
+ Werden mehrere Rechnungen in einer Mahnung zusammengefasst, so werden
+ die Metadaten (Bearbeiter, Abteilung, etc) der ersten angemahnten Rechnung
+ im Ausdruck genommen.</para>
+ <para>Die Adressdaten des Kunden stehen als Variablen <varname>name</varname>,
<varname>street</varname>, <varname>zipcode</varname>,
<varname>city</varname>, <varname>country</varname>,
<varname>department_1</varname>, <varname>department_2</varname>,
- und <varname>email</varname> zur Verfügung.</para>
+ und <varname>email</varname> zur Verfügung. Der Ansprechpartner <varname>cp_...</varname>
+ steht auch zu Verfügung, wird allerdings auch nur von der ersten angemahnten Rechnung (s.o.)
+ genommen.</para>
<para>Weitere Variablen beinhalten:</para>
<title>Mandantenkonfiguration Lager</title>
- Die Lagerverwaltung in kivitendo funktioniert standardmässig wie folgt:
- Wird ein Lager mit einem Lagerplatz angelegt, so gibt es die Möglichkeit
- hier über den Menüpunkt Lager entsprechende Warenbewegungen durchzuführen.
- Ferner kann jede Position eines Lieferscheins ein-, bzw. ausgelagert werden
- (Einkauf-, bzw. Verkauf). Es können beliebig viele Lager mit beliebig vielen
- Lagerplätzen abgebildet werden. Die Lagerbewegungen über einen Lieferschein
- erfolgt durch Anklicken jeder Einzelposition und das Auswählen dieser Position
- zu einem Lager mit Lagerplatz. Dieses Verfahren lässt sich schrittweise
- vereinfachen, je nachdem wie die Einstellungen in der Mandatenkonfiguration
- gesetzt werden.
+ <para>
+ Die Lagerverwaltung in kivitendo funktioniert standardmässig wie folgt: Wird ein Lager mit einem Lagerplatz angelegt, so gibt es die
+ Möglichkeit hier über den Menüpunkt Lager entsprechende Warenbewegungen durchzuführen. Ferner kann jede Position eines Lieferscheins
+ ein-, bzw. ausgelagert werden (Einkauf-, bzw. Verkauf). Es können beliebig viele Lager mit beliebig vielen Lagerplätzen abgebildet
+ werden. Die Lagerbewegungen über einen Lieferschein erfolgt durch Anklicken jeder Einzelposition und das Auswählen dieser Position zu
+ einem Lager mit Lagerplatz. Dieses Verfahren lässt sich schrittweise vereinfachen, je nachdem wie die Einstellungen in der
+ Mandatenkonfiguration gesetzt werden.
+ </para>
<itemizedlist>
<listitem>
</listitem>
</itemizedlist>
+ <para>
Zusätzliche Funktionshinweise:
+ </para>
<itemizedlist>
<listitem>
</sect1>
-
+
<sect1 id="features.swiss-charts-of-accounts">
<title>Schweizer Kontenpläne</title>
-
- <para>Seit der Version 3.4.1 stehen in kivitendo 2 Kontenpläne für
- den Einsatz in der Schweiz zur Verfügung, einer für Firmen und
- Organisationen, die nicht mehrwertsteuerpflichtig sind, und einer
+
+ <para>Seit der Version 3.4.1 stehen in kivitendo 2 Kontenpläne für
+ den Einsatz in der Schweiz zur Verfügung, einer für Firmen und
+ Organisationen, die nicht mehrwertsteuerpflichtig sind, und einer
für Firmen, die mehrwertsteuerpflichtig sind.</para>
-
- <para>Die Kontenpläne orientieren sich am in der Schweiz üblicherweise
- verwendeten KMU-Kontenrahmen und sind mit der Revision des Schweizerischen
- Obligationenrechts (OR) vom 1.1.2013 kompatibel, insbesondere
+
+ <para>Die Kontenpläne orientieren sich am in der Schweiz üblicherweise
+ verwendeten KMU-Kontenrahmen und sind mit der Revision des Schweizerischen
+ Obligationenrechts (OR) vom 1.1.2013 kompatibel, insbesondere
<literal>Art.957a Abs.2</literal>.</para>
-
- <para>Die Möglichkeit, Saldosteuersätze zu verwenden ist in der aktuellen
+
+ <para>Die Möglichkeit, Saldosteuersätze zu verwenden ist in der aktuellen
Version von kivitendo noch nicht integriert.</para>
-
- <para>Trotzdem können auch Firmen, die per Saldosteuersatz mit der
- Eidgenössischen Steuerverwaltung abrechnen, kivitendo bereits nutzen.
- Dazu wird der Kontenplan mit MWST ausgewählt. Anschliessend müssen
- alle Aufwandskonten editiert werden und dort der Steuersatz auf 0%
+
+ <para>Trotzdem können auch Firmen, die per Saldosteuersatz mit der
+ Eidgenössischen Steuerverwaltung abrechnen, kivitendo bereits nutzen.
+ Dazu wird der Kontenplan mit MWST ausgewählt. Anschliessend müssen
+ alle Aufwandskonten editiert werden und dort der Steuersatz auf 0%
gesetzt werden.</para>
-
+
<para>So werden bei Kreditorenbuchungen keine Vorsteuern verbucht.</para>
-
- <para>Wünsche für Anpassungen an den Schweizer Kontenplänen sowie
- Vorschläge für weitere (z.B. branchenspezifische) Kontenpläne
- bitte an <literal>empfang@revamp-it.ch</literal> senden.</para>
+
+ <para>Wünsche für Anpassungen an den Schweizer Kontenplänen sowie
+ Vorschläge für weitere (z.B. branchenspezifische) Kontenpläne
+ bitte an <literal>empfang@revamp-it.ch</literal> senden.</para>
+ </sect1>
+
+ <sect1 id="features.part_classification">
+ <title>Artikelklassifizierung</title>
+
+ <sect2>
+ <title>Übersicht</title>
+
+ <para>Die Klassifizierung von Artikeln dient einer weiteren Gliederung
+ um zum Beispiel den Einkauf vom Verkauf zu trennen, gekennzeichnet
+ durch eine Beschreibung (z.B. "Einkauf") und ein Kürzel (z.B. "E").
+ Für jede Klassifizierung besteht eine Beschreibung und eine Abkürzung
+ die normalerweise aus einem Zeichen besteht, kann aber auf mehrere
+ Zeichen erweitert werden, falls zur Unterscheidung notwendig, sinnvoll
+ sind jedoch nur maximal 2 Zeichen.</para>
+ </sect2>
+
+ <sect2>
+ <title>Basisklassifizierung</title>
+
+ <para>Als Basisklassifizierungen gibt es</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Einkauf</para>
+ </listitem>
+
+ <listitem>
+ <para>Verkauf</para>
+ </listitem>
+
+ <listitem>
+ <para>Handelsware</para>
+ </listitem>
+
+ <listitem>
+ <para>Produktion</para>
+ </listitem>
+
+ <listitem>
+ <para>- keine - (diese wird bei einer Aktualisierung für alle
+ existierenden Artikel genommen, gültig für Verkauf und
+ Einkauf)</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Es können weitere Klassifizierungen angelegt werden. So kann es
+ z.B. für separat auszuweisende Artikel folgened Klassen geben:</para>
+
+ <orderedlist>
+ <listitem>
+ <para>Lieferung (Logistik, Transport) mit Kürzel L</para>
+ </listitem>
+
+ <listitem>
+ <para>Material (Verpackungsmaterial) mit Kürzel M</para>
+ </listitem>
+ </orderedlist>
+ </sect2>
+
+ <sect2>
+ <title>Attribute</title>
+
+ <para>Bisher haben die Klassifizierungen folgende Attribute, die auch
+ alle gleichzeitg gültig sein können</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>gültig für Verkauf - dieser Artikel kann im Verkauf genutzt
+ werden</para>
+ </listitem>
+
+ <listitem>
+ <para>gültig für Einkauf - dieser Artikel kann im Einkauf genutzt
+ werden</para>
+ </listitem>
+
+ <listitem>
+ <para>separat ausweisen - hierzu gibt es zur Dokumentengenerierung
+ (LaTeX) zusätzliche Variable</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Beim separat ausweisen stehen im LaTeX die Variable <emphasis
+ role="bold"><%non_separate_subtotal%> </emphasis>zur Verfügung,
+ die alle nicht separat auszuweisenden Artikelkosten saldiert, sowie
+ pro separat auszuweisenden Klassifizierungen die Variable<emphasis
+ role="bold"> <%separate_X_subtotal%></emphasis> wobei X das
+ Kürzel der Klassifizierung ist.</para>
+
+ <para>Im obigen Beispiel wäre das für Lieferkosten <emphasis
+ role="bold"><%separate_L_subtotal%></emphasis> und für
+ Verpackungsmaterial <emphasis
+ role="bold"><%separate_M_subtotal%> </emphasis>.</para>
+ </sect2>
+
+ <sect2>
+ <title>Zwei-Zeichen Abkürzung</title>
+
+ <para>Der Typ des Artikel und die Klassifizierung werden durch zwei
+ Buchstaben dargestellt. Der erste Buchstabe ist eine Lokalisierung des
+ Typs des Artikel ('P','A','S') , deutch 'W', 'E', und 'D' für Ware
+ Erzeugnis oder Dienstleistung, ggf. weitere Typen.</para>
+
+ <para>Der zweite (und ggf. auch ein dritter Buchstabe, falls nötig)
+ entspricht der lokalisierten Abkürzung der Klassifizierung.</para>
+
+ <para>Diese Abkürzung wird überall beim Auflisten von Artikeln zur
+ Erleichterung mit dargestellt.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 id="features.file_managment">
+ <title>Dateiverwaltung (Mini-DMS)</title>
+
+ <sect2>
+ <title>Übersicht</title>
+ <para>Parallel zum alten WebDAV gibt es eine Datei-Management-Sytem, daß Dateien
+ verschiedenen Typs verwaltet. Dies können</para>
+ <orderedlist>
+ <listitem>
+ <para>aus ERP-Daten per LaTeX Template erzeugte PDF-Dokumente,</para>
+ </listitem>
+ <listitem>
+ <para>zu bestimmten ERP-Daten gehörende Anhangdateien unterschiedlichen Formats,</para>
+ </listitem>
+ <listitem>
+ <para>per Scanner eingelesene PDF-Dateien,</para>
+ </listitem>
+ <listitem>
+ <para>per Email empfangene Dateianhänge unterschiedlichen Formats,</para>
+ </listitem>
+ <listitem>
+ <para>sowie speziel an Artikel hochgeladene Bilder sein.</para>
+ </listitem>
+ </orderedlist>
+ <screenshot>
+ <screeninfo>Übersicht</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata contentwidth="600" fileref="images/DMS-Overview.png"/>
+ </imageobject>
+ </mediaobject>
+ </screenshot>
+ </sect2>
+
+ <sect2>
+ <title>Struktur</title>
+
+ <para>Über eine vom Speichermedium unabhängige Zwischenschicht werden die Dateien und ihre Versionen in der Datenbank verwaltet. Darunter können verschiedene Implementierungen (Backends) gleichzeitig existieren:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>Dateisystem,</para>
+ </listitem>
+ <listitem>
+ <para>WebDAV,</para>
+ </listitem>
+ <listitem>
+ <para>Schnittstelle zu externem Dokumenten-Management-System,</para>
+ </listitem>
+ <listitem>
+ <para>andere Datenbank,</para>
+ </listitem>
+ <listitem>
+ <para>etc ...</para>
+ </listitem>
+ </itemizedlist>
+ <para>Es gibt unterschiedliche Typen von Dateien, jedem Typ läßt sich in der
+ Mandantenkonfigurierung ein bestimmtes Backend zuordnen.
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>"document", das sind entweder generierte,eingescannte oder hochgeladene PDF-Dateien,
+ die zu bestimmten ERP-Daten (ERP-Objekte, wi z.B. Rechnung, Lieferschein) gehören.</para>
+ </listitem>
+ <listitem>
+ <para>"attachment", zusätzlich hochgeladene Dokumente, die an bestimmte ERP-Objekte angehängt werden,
+ z.B. technische Zeichnungen,Aufmaße. Diese können auch an Artikeln,
+ Lieferanten und Kunden hinterlegt sein</para>
+ </listitem>
+ <listitem>
+ <para>"image", Bilder an Artikeln. Diese können auch verkleinert in einer Vorschau (Thumbnail)
+ angezeigt werden.</para>
+ </listitem>
+ </itemizedlist>
+ <para>Zusätzlich werden in der Datenbank zu den Dateien neben der Zuordnung zu ERP-Objekten, des Dateityps
+ des Dateinamens und des Backends in dem die Datei gespeichert ist auch die Quelle der Datei notiert:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para> "created" , vom System erzeugte Dokumente"</para>
+ </listitem>
+ <listitem>
+ <para> "uploaded", hochgeladene Dokumente</para>
+ </listitem>
+ <listitem>
+ <para> "email", vom Mailsystem empfangene Dateien</para>
+ </listitem>
+ <listitem>
+ <para> "scanner[1]", von einem oder mehreren Scannern erzeugte Dateien. Existieren mehrere Scanner,
+ so sind diese durch unterschiedliche Quellennamen zu definieren</para>
+ </listitem>
+ </itemizedlist>
+ <para>Je nach Dateityp sind nur bestimmte Quellen zulässig. So gibt es für "attachment" und "image" nur
+ die Quelle "uploaded". Für "document" gibt es auf jeden Fall die Quelle "created".
+ Die Quellen "scanner" und "email" müssen derzeit in der Datenbank konfiguriert werden (siehe <xref linkend="file_management.dbconfig"/>.</para>
+ </sect2>
+
+ <sect2>
+ <title>Anwendung</title>
+ <para>Die Daten werden bei den ERP-Objekten als extra Reiter dargestellt.
+ Eine Verkaufsrechnung z.B. hat die
+ Reiter "Dokumente" und "Dateianhänge.</para>
+ <screenshot>
+ <screeninfo>Reiter "Dateianhänge"</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata scale="50" fileref="images/DMS-Anhaenge.png"/>
+ </imageobject>
+ </mediaobject>
+ </screenshot>
+ <para>Bei den Dateianhängen wird immer nur die aktuelle Version einer Datei angezeigt.
+ Wird eine Datei mit gleichem Namen hochgeladen, so wird eine neue Version der Datei erstellt.
+ Vorher wird der Anwender durch einen Dialog ob er eine neue Version anlegen will oder
+ ob er die Datei umbenennen will, falls es eine neue Datei sein soll.</para>
+ <screenshot>
+ <screeninfo>Reiter "Dateianhänge"</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata width="100" contentwidth="40" fileref="images/DMS-Anhaenge-hochladen.png"/>
+ </imageobject>
+ </mediaobject>
+ </screenshot>
+ <para>Es können mehrere Dateien gleichzeitig hochgeladen werden,
+ solange in Summe die maximale Größe nicht überschritten wird.
+ (siehe <xref linkend="file_management.clientconfig"/></para>
+ <screenshot>
+ <screeninfo>Reiter "Dokumente"</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata width="500" fileref="images/DMS-Dokumente.png"/>
+ </imageobject>
+ </mediaobject>
+ </screenshot>
+ <para>Sind keine weiteren Quellen für Dokumente konfiguriert, so gibt es nur "erzeugte Dokumente".
+ Es werden alle Versionen der generierten Datei angezeigt. Für Verkaufsrechnungen kommen keine
+ anderen Quellen zur Geltung. Werden entsprechend
+ <xref linkend="file_management.dbconfig"/> zusätzliche Quellen konfiguriert, so sind diese z.B. bei
+ Einkaufsrechnungen sichtbar:</para>
+ <screenshot>
+ <screeninfo>Reiter "Dokumente"</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata contentwidth="600" fileref="images/DMS-Dokumente-Scanner.png"/>
+ </imageobject>
+ </mediaobject>
+ </screenshot>
+ <para>Statt des Löschens wird hier die Datei zurück zur Quelle verschoben. Somit kann die Datei anschließend
+ an ein anderes ERP-Objekt angehängt werden.</para>
+ <para>Derzeit sind "Titel" und "Beschreibung" noch nicht genutzt. Sie sind bisher nur bei Bildern relevant.</para>
+ </sect2>
+
+ <sect2>
+ <title>Konfigurierung</title>
+ <sect3 id="file_management.clientconfig" xreflabel="Mandantenkonfigurierung">
+ <title>Mandantenkonfigurierung</title>
+ <sect4>
+ <title>Reiter "Features"</title>
+ <para>Unter dem Reiter <emphasis role="bold">Features</emphasis> im Abschnit Dateimanagement ist
+ neben dem "alten" WebDAV das Dateimangement general zu- und abschaltbar, sowie die Zuordnung der
+ Dateitypen zu Backends. Die Löschbarkeit von Dateien sowie die maximale Uploadgröße sind Backend-unabhängig</para>
+ <screenshot>
+ <screeninfo>Mandantenkonfig Reiter "Features"</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata width="500" fileref="images/DMS-ClientConfig.png"/>
+ </imageobject>
+ </mediaobject>
+ </screenshot>
+ <para>Die einzelnen Backends sind einzeln einschaltbar. Spezifische Backend-Konfigurierungen sind hier
+ noch ergänzbar. Für das Backend Dateisystem ist das Wurzelverzeichnis für den Mandanten einzugeben.</para>
+ </sect4>
+ <sect4>
+ <title>Reiter "Allgemeine Dokumentenanhänge"</title>
+ <para>Unter dem Reiter <emphasis role="bold">Allgemeine Dokumentenanhänge</emphasis>
+ kann für alle ERP-Dokumente ( Angebote, Aufträge, Lieferscheine, Rechnungen im Verkauf und Einkauf )
+ allgemeingültige Anhänge hochgeladen werden.</para>
+ <screenshot>
+ <screeninfo>Mandantenkonfig Reiter "Allgemeine Dokumentenanhänge"</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata width="500" fileref="images/DMS-Allgemeine-Dokumentenanhaenge.png"/>
+ </imageobject>
+ </mediaobject>
+ </screenshot>
+ <para>Diese Anhänge werden beim Generieren von PDF-Dateien an die ERP-Dokumente angehängt,
+ z.B. AGBs oder aktuelle Angebote. Es werden in dem Fall die Daten kopiert, sodaß an den ERP-Dokumenten immer
+ die Anhänge zum Generierungszeitpunkt eingebettet sind.
+ </para>
+ </sect4>
+ </sect3>
+ <sect3 id="file_management.dbconfig" xreflabel="Datenbank-Konfigurierung">
+ <title>Datenbank-Konfigurierung</title>
+ <para>Die zusätzlichen Quellen für email oder ein oder mehrere Scanner sind derzeit vom Administrator
+ direkt in der Datenbanktablle "user_preferences" einzurichten. Die "value" ist im JSON-Format
+ mit den jeweiligen Werten des Verzeichnisses und der Beschreibung der Quelle.</para>
+ <programlisting>
+ id | login | namespace | version | key | value
+----+-----------+--------------+---------+----------+---------------------------
+ 1 | #default# | file_sources | 0.00000 | scanner1 |
+ {"dir":"/var/tmp/scanner1","desc":"Scanner Einkauf"}
+ 2 | #default# | file_sources | 0.00000 | scanner2 |
+ {"dir":"/var/tmp/scanner2","desc":"Scanner Verkauf"}
+ 3 | #default# | file_sources | 0.00000 | emails |
+ {"dir":"/var/tmp/emails","desc":"Empfangene Mails" }
+ </programlisting>
+ <para>Es ist daran gedacht, statt dem default Eintrag später für bestimmte Benutzer ('login') bestimmte Quellen zuzulassen,
+ dies wird nach Bedarf implementiert.</para>
+ </sect3>
+ </sect2>
</sect1>
</chapter>
</listitem>
<listitem>
- <para>Enthält unter anderem Listenbegrenzung vclimit,
- Datumsformat dateformat und Nummernformat numberformat</para>
+ <para>Enthält unter anderem Datumsformat dateformat und Nummernformat numberformat</para>
</listitem>
<listitem>
<literal>perl-URI-Find</literal>; openSUSE:
<literal>perl-URI-Find</literal>)</para>
</listitem>
+
+ <listitem>
+ <para><literal>Sys::CPU</literal> (Debian-Panetname: <literal>libsys-cpu-perl</literal>; Fedora und openSUSE: nicht
+ vorhanden)</para>
+ </listitem>
+
+ <listitem>
+ <para><literal>Thread::Pool::Simple</literal> (Debian-Panetname: <literal>libthread-pool-simple-perl</literal>; Fedora und
+ openSUSE: nicht vorhanden)</para>
+ </listitem>
</itemizedlist>
<para>Weitere Voraussetzung ist, dass die Testsuite ihre eigene
sein. Dieser wird für die Datenbankverbindung benötigt.</para>
<para>Wir keine vollständig initialisierte Umgebung benötigt, so
- kann die letzte Zeile <code>Support::TestSetup::login();</code>
+ kann die letzte Zeile <programlisting>Support::TestSetup::login();</programlisting>
weggelassen werden, was die Ausführungszeit des Scripts leicht
verringert.</para>
</sect3>