X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=doc%2Fdokumentation.xml;h=2cb44fb2ac543999015b7de49c2fbb634972473f;hb=faceb8b211c444e20d81ca05e91b33406e281491;hp=0ca34e5a7be2fc09183b602dd224d896ae18a366;hpb=7beb6d704f6112989396b3a6f7c110033fecff3d;p=kivitendo-erp.git diff --git a/doc/dokumentation.xml b/doc/dokumentation.xml index 0ca34e5a7..2cb44fb2a 100644 --- a/doc/dokumentation.xml +++ b/doc/dokumentation.xml @@ -2,7 +2,8 @@ - kivitendo 3.4.1: Installation, Konfiguration, Entwicklung + kivitendo 3.5.1-beta: Installation, Konfiguration, + Entwicklung Aktuelle Hinweise @@ -143,8 +144,9 @@ Benötigte Perl-Pakete installieren Zum Betrieb von kivitendo werden zwingend ein Webserver (meist - Apache) und ein Datenbankserver (PostgreSQL) in einer aktuellen Version - (s.a. Liste der unterstützten Betriebssysteme) benötigt. + Apache) und ein Datenbankserver (PostgreSQL) in einer aktuellen + Version (s.a. Liste der unterstützten Betriebssysteme) + benötigt. Zusätzlich benötigt kivitendo einige Perl-Pakete, die nicht Bestandteil einer Standard-Perl-Installation sind. Um zu überprüfen, @@ -214,6 +216,10 @@ File::Copy::Recursive + + File::MimeInfo + + GD @@ -238,10 +244,18 @@ List::MoreUtils - -> + List::UtilsBy + + LWP::Authen::Digest + + + + LWP::UserAgent + + Net::SMTP::SSL (optional, bei E-Mail-Versand über SSL; siehe Abschnitt " Rose::Object --> + Rose::DB @@ -300,7 +314,11 @@ - URI-> + Text::Unidecode + + + + URI @@ -312,6 +330,10 @@ + Seit Version größer v3.5.0 sind die folgenden Pakete + hinzugekommen: Text::Unidecode, LWP::Authen::Digest, + LWP::UserAgent + Seit Version v3.4.0 sind die folgenden Pakete hinzugekommen: Algorithm::CheckDigitsPBKDF2::Tiny @@ -354,7 +376,7 @@ 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 \ + 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 \ @@ -364,7 +386,7 @@ 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 libtext-unidecode-perl libwww-perl Für das Paket HTML::Restrict gibt es kein Debian-Paket, dies @@ -389,7 +411,7 @@ cpan HTML::Restrict 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 perl-CPAN \ - perl-Algorithm-CheckDigits perl-GD perl-Class-XSAccessor perl-Text-Balanced + perl-Algorithm-CheckDigits perl-GD perl-Class-XSAccessor perl-Text-Balanced perl-libwww-perl Zusätzlich müssen einige Pakete aus dem CPAN installiert werden. Dazu können Sie die folgenden Befehle nutzen: @@ -410,7 +432,7 @@ cpan HTML::Restrict perl-Net-SMTP-SSL perl-Net-SSLGlue perl-PDF-API2 perl-Params-Validate \ perl-Sort-Naturally perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv \ perl-URI perl-XML-Writer perl-YAML perl-CPAN \ - perl-Algorithm-CheckDigits perl-GD perl-Class-XSAccessor postgresql-server + perl-Algorithm-CheckDigits perl-GD perl-Class-XSAccessor postgresql-server perl-libwwww-perl Zusätzlich müssen einige Pakete aus dem CPAN installiert werden. Dazu können Sie die folgenden Befehle nutzen: @@ -418,6 +440,27 @@ cpan HTML::Restrict cpan Rose::Db::Object + + + Andere Pakete installieren + + Seit Version v3.4.0 wird für den Bankimport optional das Paket + 'aqbanking-tools' benötigt. + + Debian und Ubuntu: apt install aqbanking-tools + + + OpenSuSE: zypper install aqbanking-tools + + Seit Version v3.4.1 wird generell zum Feststellen der + Seitenanzahl von PDF_Dokumenten 'pdfinfo' benötigt was im Paket + 'poppler-utils' enthalten ist. + + Debian und Ubuntu: apt install poppler-utils + + + OpenSuSE: zypper install poppler-tools + 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/ + die Pfade anpassen) bspw. wie folgt: cd /var/www/ 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 +git checkout `git tag -l | egrep -ve "(alpha|beta|rc)" | tail -1` + Erläuterung: Der Befehl wechselt zur letzten Stable-Version (git tag + -l listet alle Tags auf, das egrep schmeisst alle Einträge mit alpha, + beta oder rc raus und das tail gibt davon den obersten Treffer + zurück). 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). + url="http://www-cs-students.stanford.edu/~blynn/gitmagic/index.html"> + Git Magic). + + Ein beispielhafter Workflow für Druckvorlagen-Anpassungen von + 3.4.1 nach 3.5: +$ git clone https://github.com/kivitendo/kivitendo-erp.git +$ cd kivitendo-erp/ +$ git checkout release-3.4.1 # das ist der aktuelle release, den wir wollen +$ git add templates/fullhouse # das sind unsere druckvorlagen inkl. produktbilder +$ git commit -m "juhu tolle ändernungen" +[meine_aenderungen 1d89e41] juhu tolle ändernungen + 4 files changed, 380 insertions(+) + create mode 100644 templates/fullhouse/img/webdav/tesla.png + create mode 100644 templates/fullhouse/mahnung.tex + create mode 100644 templates/fullhouse/zahlungserinnerung_zwei.tex + create mode 100644 templates/fullhouse/zahlungserinnerung_zwei_invoice.tex + +# 5 Jahre später ... + +$ git fetch +$ git rebase --onto release-3.5.0 release-3.4.1 meine_aenderungen +Zunächst wird der Branch zurückgespult, um Ihre Änderungen +darauf neu anzuwenden ... +Wende an: juhu tolle ändernungen +$ service apache2 restart + @@ -622,30 +692,41 @@ password = [system] default_manager = german - Für kivitendo Installationen in der Schweiz sollte hier german - durch swiss ersetzt werden. - Die Einstellung default_manager = swiss bewirkt: - - - 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). - - - Einstellen der Standardkonten für Rundungserträge und -aufwendungen - (unter Mandantenkonfiguration → Standardkonten veränderbar) - - - das verwendete Zahlenformat wird auf 1'000.00 eingestellt - (unter Programm → Benutzereinstellungen veränderbar) - - - DATEV-Automatik und UStVA werden nicht angezeigt, Erfolgsrechnung - ersetzt GUV ( unter Mandantenkonfiguration → Features veränderbar) - - - + Für kivitendo Installationen in der Schweiz sollte hier + german durch swiss ersetzt + werden. + + Die Einstellung default_manager = swiss + bewirkt: + + + + 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). + + + + Einstellen der Standardkonten für Rundungserträge und + -aufwendungen (unter Mandantenkonfiguration → Standardkonten + veränderbar) + + + + das verwendete Zahlenformat wird auf + 1'000.00 eingestellt (unter Programm → + Benutzereinstellungen veränderbar) + + + + DATEV-Automatik und UStVA werden nicht angezeigt, + Erfolgsrechnung ersetzt GUV ( unter Mandantenkonfiguration → + Features veränderbar) + + + Nutzt man wiederkehrende Rechnungen, kann man unter [periodic_invoices] den Login eines Benutzers angeben, der nach Erstellung der Rechnungen eine entsprechende E-Mail @@ -769,6 +850,35 @@ psql template1 führen Sie die folgenden Kommandos aus: + + Erweiterung für Trigram Prozeduren + + Ab Version 3.5.1 wird die Trigram-Index-Erweiterung benötigt. + Diese wird mit dem SQL-Updatescript + sql/Pg-upgrade2/trigram_extension.sql und Datenbank-Super-Benutzer + Rechten automatisch installiert. Dazu braucht der + DatenbankSuperbenutzer "postgres" ein Passwort. + + su - postgres +psql +\password postgres + +Eingabe Passwort +\q + + Benutzername Postgres und Passwort können jetzt beim Anlegen + einer Datenbank bzw. bei Updatescripten, die SuperuserRechte + benötigen, eingegeben werden. + + + pg_trgm ist je nach Distribution nicht im + Standard-Paket von Postgres enthalten. Ein select * from pg_available_extensions where name ='pg_trgm'; + in template1 sollte entsprechend erfolgreich sein. Andernfalls muss + das Paket nachinstalliert werden, bspw. bei debian/ubuntu + apt install postgresql-contrib + + + Datenbankbenutzer anlegen @@ -818,8 +928,7 @@ Alias /kivitendo-erp/ /var/www/kivitendo-erp/ </Directory> <Directory /var/www/kivitendo-erp/users> - Order Deny,Allow - Deny from All + Require all granted </Directory> Ersetzen Sie dabei die Pfade durch diejenigen, in die Sie vorher @@ -954,7 +1063,7 @@ Alias /url/for/kivitendo-erp/ /path/to/kivitendo-erp/ </Directory> <DirectoryMatch /path/to/kivitendo-erp/users> -Require all granted +Require all denied </DirectoryMatch> @@ -969,6 +1078,16 @@ Require all granted Order Allow,Deny Allow from All + + und statt + + Require all denied + + muss stehen: + + + Order Deny,Allow + Deny from All Seit mod_fcgid-Version 2.3.6 gelten sehr kleine Grenzen für @@ -1028,7 +1147,9 @@ Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/Foreneintrag - (Stand Sept. 2015) + (Stand Sept. 2015) und einen aktuellen (Stand Mai 2017) + SSL-Konfigurations-Generator. @@ -1049,6 +1170,13 @@ Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/ + Da der Taskserver als Perlscript läuft, wird Arbeitsspeicher, der + einmal benötigt wurde, nicht mehr an das Betriebssystem zurückgegeben, + solange der Taskserver läuft. Dies kann dazu führen, dass ein länger + laufender Taskserver mit der Zeit immer mehr Arbeitsspeicher für sich + beansprucht. Es ist deshalb sinnvoll, dass der Taskserver in + regelmässigen Abständen neu gestartet wird. + Verfügbare und notwendige Konfigurationsoptionen @@ -1112,8 +1240,8 @@ Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/ - SystemV-basierende Systeme (z.B. Debian, ältere OpenSUSE, - ältere Fedora) + SystemV-basierende Systeme (z.B. ältere Debian, ältere + OpenSUSE, ältere Fedora) Kopieren Sie die Datei scripts/boot/system-v/kivitendo-task-server @@ -1127,7 +1255,6 @@ Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/Debian-basierende Systeme: update-rc.d kivitendo-task-server defaults -# Nur bei Debian Squeeze und neuer: insserv kivitendo-task-server @@ -1161,20 +1288,25 @@ insserv kivitendo-task-server systemd-basierende Systeme (z.B. neure openSUSE, neuere - Fedora, neuere Ubuntu und Debians) + Fedora, neuere Ubuntu und neuere Debians) - Kopieren 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 (Zeilen - ExecStart=.... und ExecStop=...). + Kopieren 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 (Zeilen + ExecStart=.... und + ExecStop=...). - 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: + 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: systemctl daemon-reload systemctl enable kivitendo-task-server.service - 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: + 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: systemctl start kivitendo-task-server.service @@ -1779,7 +1911,7 @@ systemctl enable kivitendo-task-server.service debianoiden Betriebssystemen installiert man die Pakete mit: apt-get install texlive-base-bin texlive-latex-recommended texlive-fonts-recommended \ - exlive-latex-extra texlive-lang-german texlive-generic-extra + texlive-latex-extra texlive-lang-german texlive-generic-extra Für Fedora benötigen Sie die folgenden Pakete: @@ -2156,8 +2288,33 @@ systemctl enable kivitendo-task-server.service und nicht nur Teile davon, da dies sonst oft zu einer odt-Datei führt, die vom Parser nicht korrekt gelesen werden kann. + Mahnungen können unter folgenden Einschränkungen mit den + odt-Vorlagen im Vorlagensatz rev-odt erzeugt werden: + + + + als Druckoption steht nur 'PDF(OpenDocument/OASIS)' zur + Verfügung, das heisst, die Mahnungen werden als PDF-Datei + ausgegeben. + + + + für jede Rechnung muss eine eigene Mahnung erzeugt werden + (auch wenn bei einzelnen KundInnen mehrere überfällige Rechnungen + vorhanden sind). + + + + Mehrere Mahnungen für eine Kundin / einen Kunden werden zu einer + PDF-Datei zusammengefasst + + Die Vorlagen zahlungserinnerung.odt sowie mahnung.odt sind für + das Erstellen einer Zahlungserinnerung bzw. Mahnung selbst vorgesehen, + die Vorlage mahnung_invoice.odt für das Erstellen einer Rechnung über + die verrechneten Mahngebühren und Verzugszinsen. + Zur Zeit gibt es in kivitendo noch keine Möglichkeit, - odt-Vorlagen bei Mahnungen, Briefen und Pflichtenheften einzusetzen. + odt-Vorlagen bei Briefen und Pflichtenheften einzusetzen. Entsprechende Vorlagen sind deshalb nicht vorhanden. Fehlermeldungen, Anregungen und Wünsche bitte senden an: @@ -2255,9 +2412,9 @@ systemctl enable kivitendo-task-server.service OpenDocument-Vorlagen kivitendo unterstützt die Verwendung von Vorlagen im - OpenDocument-Format, wie es LibreOffice oder OpenOffice (ab Version 2) erzeugen. - kivitendo kann dabei sowohl neue OpenDocument-Dokumente als auch aus - diesen direkt PDF-Dateien erzeugen. Um die Unterstützung von + OpenDocument-Format, wie es LibreOffice oder OpenOffice (ab Version 2) + erzeugen. kivitendo kann dabei sowohl neue OpenDocument-Dokumente als + auch aus diesen direkt PDF-Dateien erzeugen. Um die Unterstützung von OpenDocument-Vorlagen zu aktivieren muss in der Datei config/kivitendo.conf die Variable opendocument im Abschnitt @@ -2266,48 +2423,53 @@ systemctl enable kivitendo-task-server.service Während die Erzeugung von reinen OpenDocument-Dateien keinerlei weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF - LibreOffice oder OpenOffice benötigt. Soll dieses Feature genutzt werden, so muss - neben LibreOffice oder OpenOffice auch der “X virtual frame buffer” - (xvfb) installiert werden. Bei Debian ist er im Paket “xvfb” enthalten. - Andere Distributionen enthalten ihn in anderen Paketen. + LibreOffice oder OpenOffice benötigt. Soll dieses Feature genutzt + werden, so muss neben LibreOffice oder OpenOffice auch der “X virtual + frame buffer” (xvfb) installiert werden. Bei Debian ist er im Paket + “xvfb” enthalten. Andere Distributionen enthalten ihn in anderen + Paketen. Nach der Installation müssen in der Datei config/kivitendo.conf im Abschnitt - applications zwei weitere Variablen - angepasst werden: - openofficeorg_writer muss den - vollständigen Pfad zu LibreOffice oder OpenOffice enthalten. - Dabei dürfen keine Anführungszeichen eingesetzt werden. + applications zwei weitere Variablen angepasst + werden: + + openofficeorg_writer muss den vollständigen + Pfad zu LibreOffice oder OpenOffice enthalten. Dabei dürfen keine + Anführungszeichen eingesetzt werden. + Beispiel für Debian oder Ubuntu: + openofficeorg_writer = /usr/bin/libreoffice + xvfb muss den Pfad zum “X virtual frame buffer” enthalten. Zusätzlich gibt es zwei verschiedene Arten, wie kivitendo mit - LibreOffice bzw. OpenOffice kommuniziert. Die erste Variante, die benutzt - wird, wenn die Variable $openofficeorg_daemon 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. + LibreOffice bzw. OpenOffice kommuniziert. Die erste Variante, die + benutzt wird, wenn die Variable $openofficeorg_daemon + 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. - Für die Verbindung zu LibreOffice bzw. OpenOffice wird + Für die Verbindung zu LibreOffice bzw. OpenOffice wird normalerweise der Python-Interpreter - /usr/bin/python benutzt. - Sollte dies nicht der richtige sein, so kann man mit zwei - Konfigurationsvariablen entscheiden, welcher Python-Interpreter - genutzt wird. Mit der Option python_uno aus dem - Abschnitt applications wird der Interpreter selber + /usr/bin/python benutzt. Sollte dies nicht der + richtige sein, so kann man mit zwei Konfigurationsvariablen + entscheiden, welcher Python-Interpreter genutzt wird. Mit der Option + python_uno aus dem Abschnitt + applications wird der Interpreter selber festgelegt; sie steht standardmäßig auf dem eben erwähnten Wert /usr/bin/python. 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 python_uno_path und befindet sich im Abschnitt environment. Sie ist standardmäßig leer. Werden @@ -2318,27 +2480,26 @@ systemctl enable kivitendo-task-server.service Ist $openofficeorg_daemon nicht gesetzt, so - 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 + 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 - ‘templates/print/rev-odt/invoice.odt’ - enthält ein solches Makro, das in jeder anderen Dokumentenvorlage - ebenfalls enthalten sein muss. + ‘templates/print/rev-odt/invoice.odt’ enthält ein + solches Makro, das in jeder anderen Dokumentenvorlage ebenfalls + enthalten sein muss. - Als letztes muss herausgefunden werden, welchen Namen - OpenOffice bzw. LibreOffice dem Verzeichnis mit den Benutzereinstellungen - gibt. Unter Debian ist dies momentan - ~/.config/libreoffice. kivitendo verwendet das - Verzeichnis users/.openoffice.org2. - Eventuell muss dieses Verzeichnis umbenannt werden. + Als letztes muss herausgefunden werden, welchen Namen OpenOffice + bzw. LibreOffice dem Verzeichnis mit den Benutzereinstellungen gibt. + Unter Debian ist dies momentan ~/.config/libreoffice. + kivitendo verwendet das Verzeichnis + users/.openoffice.org2. Eventuell muss dieses + Verzeichnis umbenannt werden. Dieses Verzeichnis, wie auch das komplette users-Verzeichnis, muss vom Webserver beschreibbar sein. Dieses wurde bereits erledigt (siehe ), kann aber - erneut überprüft werden, wenn die Konvertierung nach PDF - fehlschlägt. + linkend="Manuelle-Installation-des-Programmpaketes"/>), kann aber erneut + überprüft werden, wenn die Konvertierung nach PDF fehlschlägt. OpenDocument (odt) Druckvorlagen mit Makros @@ -2379,22 +2540,21 @@ systemctl enable kivitendo-task-server.service - Druckerbeschreibung → aussagekräftiger Text: wird in - der Auftrags- bzw. Rechnungsmaske als Auswahl angezeigt (z.B. - mit Einzahlungsschein Bank xy) + Druckerbeschreibung → aussagekräftiger Text: wird in der + Auftrags- bzw. Rechnungsmaske als Auswahl angezeigt (z.B. mit + Einzahlungsschein Bank xy) - Druckbefehl → beliebiger Text (hat für das Erzeugen - von Aufträgen oder Rechnungen als odt-Datei keine Bedeutung, - darf aber nicht leer sein) + Druckbefehl → beliebiger Text (hat für das Erzeugen von + Aufträgen oder Rechnungen als odt-Datei keine Bedeutung, darf + aber nicht leer sein) - Vorlagenkürzel → besr bzw. selbst gewähltes - Vorlagensuffix (muss genau der Zeichenfolge entsprechen, die - zwischen "invoice_" bzw. "sales_order_" und ".odt" - steht.) + Vorlagenkürzel → besr bzw. selbst gewähltes Vorlagensuffix + (muss genau der Zeichenfolge entsprechen, die zwischen + "invoice_" bzw. "sales_order_" und ".odt" steht.) @@ -2413,8 +2573,7 @@ systemctl enable kivitendo-task-server.service - Programm → Benutzereinstellungen → - Druckoptionen + Programm → Benutzereinstellungen → Druckoptionen @@ -2426,8 +2585,8 @@ systemctl enable kivitendo-task-server.service - Standarddrucker → gewünschte Druckerbeschreibung - auswählen (z.B. mit Einzahlungsschein Bank xy) + Standarddrucker → gewünschte Druckerbeschreibung auswählen + (z.B. mit Einzahlungsschein Bank xy) @@ -2501,10 +2660,10 @@ systemctl enable kivitendo-task-server.service DDDBETRAG: <%total%> Einzahlungsbetrag oder 0, falls Einzahlungsschein ohne Betrag - + - DDDEND: muss am Ende der Zeile vorhanden sein - + DDDEND: muss am Ende der Zeile vorhanden sein + @@ -2552,8 +2711,7 @@ systemctl enable kivitendo-task-server.service - Extras → Optionen → Sicherheit → - Makrosicherheit + Extras → Optionen → Sicherheit → Makrosicherheit @@ -2565,8 +2723,8 @@ systemctl enable kivitendo-task-server.service Beim Öffnen einer odt-Rechnung oder eines odt-Auftrags bei - der entsprechenden Nachfrage "Makros ausführen" auswählen. - + der entsprechenden Nachfrage "Makros ausführen" + auswählen. Wichtig: die Makros sind so eingestellt, dass sie beim Öffnen der Vorlagen selbst nicht @@ -2579,6 +2737,53 @@ systemctl enable kivitendo-task-server.service + + Nomenklatur + + + Datum bei Buchungen + + Seit der Version 3.5 werden für Buchungen in kivitendo + einheitlich folgende Bezeichnungen verwendet: + + + + (en: , code: ) + + bezeichnet das Datum, an dem die Buchung in kivitendo + erfasst wurde. + + + + (en: , code: ) + + bezeichnet das buchhaltungstechnisch für eine Buchung + relevante Datum + + Das bei Verkaufs- und + Einkaufsrechnungen entspricht dem Buchungsdatum. Das heisst, in + Berichten wie dem Buchungsjournal, in denen eine Spalte + angezeigt werden kann, erscheint + hier im Fall von Rechnungen das Rechnungsdatum. + + + + Bezieht sich ein verbuchter Beleg auf einen Zeitpunkt, der + nicht mit dem Buchungsdatum übereinstimmt, so kann dieses Datum + momentan in kivitendo nur unter Bemerkungen erfasst werden. + + Möglicherweise wird für solche Fälle in einer späteren + Version von kivitendo ein dritter Datumswert für Buchungen + erstellt. (Beispiel: Einkaufsbeleg stammt aus einem früheren Jahr, + das bereits buchhaltungstechnisch abgeschlossen wurde, und muss + deshalb später verbucht werden.) + + + + + Konfiguration zur Einnahmenüberschussrechnung/Bilanzierung: EUR @@ -2662,23 +2867,25 @@ systemctl enable kivitendo-task-server.service Beim Anlegen eines neuen Mandanten bzw. einer neuen Datenbank in der Admininstration können diese Optionen nun unabhängig voneinander eingestellt werden. - + Für die Schweiz sind folgende Einstellungen üblich: - + - Sollversteuerung + Sollversteuerung + - Aufwandsmethode - - - Bilanzierung - - - Diese Einstellungen werden automatisch beim Erstellen einer neuen - Datenbank vorausgewählt, wenn in config/kivitendo.conf unter - [system] default_manager = swiss eingestellt ist. - + Aufwandsmethode + + + + Bilanzierung + + Diese Einstellungen werden automatisch beim + Erstellen einer neuen Datenbank vorausgewählt, wenn in + config/kivitendo.conf unter + [system] default_manager = swiss + eingestellt ist. Beim Upgrade bestehender Mandanten wird eur ausgelesen und die Variablen werden so gesetzt, daß sich an der Funktionalität nichts @@ -2757,9 +2964,8 @@ systemctl enable kivitendo-task-server.service Die folgenden Schritte sind notwendig, um das Konto manuell anzulegen und zu konfigurieren. Zuerst wird in - System → - Kontenübersicht → Konto - erfassen das Konto angelegt. + System → Kontenübersicht → + Konto erfassen das Konto angelegt. Konto 3804 erfassen @@ -2790,9 +2996,8 @@ systemctl enable kivitendo-task-server.service Als Drittes wird ein neuer Eintrag mit Steuerschlüssel 13 für Konto 3804 (19%) angelegt. Dazu unter System → - Steuern → - Erfassen auswählen und die Werte aus dem - Screenshot übernehmen. + Steuern → Erfassen + auswählen und die Werte aus dem Screenshot übernehmen. Steuerschlüssel 13 für 3804 (19%) anlegen @@ -2890,93 +3095,107 @@ systemctl enable kivitendo-task-server.service 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. - + - Erfolgsrechnung - - Seit der Version 3.4.1 existiert in kivitendo der Bericht - Erfolgsrechnung. - - Die Erfolgsrechnung kann in der Mandantenkonfiguration unter Features - an- oder abgeschaltet werden. Mit der Einstellung default_manager = swiss - in der config/kivitendo.conf wird beim neu Erstellen - einer Datenbank automatisch die Anzeige der Erfolgsrechnung im Menü Berichte - ausgewählt und ersetzt dort die GUV. - - Im Gegensatz zur GUV werden bei der Erfolgsrechnung sämtliche Aufwands- und - Erlöskonten einzeln aufgelistet (analog zur Bilanz), sortiert nach ERTRAG und AUFWAND. - - Bei den Konteneinstellungen muss bei jedem Konto, das in der Erfolgsrechnung - erscheinen soll, unter Sonstige Einstellungen/Erfolgsrechnung - entweder 01.Ertrag oder 06.Aufwand ausgewählt - werden. - - Wird bei einem Erlöskonto 06.Aufwand ausgewählt, - so wird dieses Konto als Aufwandsminderung unter AUFWAND aufgelistet. - - Wird bei einem Aufwandskonto 01.Ertrag ausgewählt, - so wird dieses Konto als Ertragsminderung unter ERTRAG aufgelistet. - - 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 Sonstige - Einstellungen/Erfolgsrechnung überprüft und allenfalls neu gesetzt werden. + Erfolgsrechnung + + Seit der Version 3.4.1 existiert in kivitendo der Bericht + Erfolgsrechnung. + + Die Erfolgsrechnung kann in der Mandantenkonfiguration unter + Features an- oder abgeschaltet werden. Mit der Einstellung + default_manager = swiss in der + config/kivitendo.conf wird beim neu Erstellen einer + Datenbank automatisch die Anzeige der Erfolgsrechnung im Menü + Berichte ausgewählt und ersetzt dort die GUV. + + Im Gegensatz zur GUV werden bei der Erfolgsrechnung sämtliche + Aufwands- und Erlöskonten einzeln aufgelistet (analog zur Bilanz), + sortiert nach ERTRAG und AUFWAND. + + Bei den Konteneinstellungen muss bei jedem Konto, das in der + Erfolgsrechnung erscheinen soll, unter Sonstige + Einstellungen/Erfolgsrechnung entweder + 01.Ertrag oder 06.Aufwand + ausgewählt werden. + + Wird bei einem Erlöskonto 06.Aufwand + ausgewählt, so wird dieses Konto als Aufwandsminderung unter AUFWAND + aufgelistet. + + Wird bei einem Aufwandskonto 01.Ertrag + ausgewählt, so wird dieses Konto als Ertragsminderung unter ERTRAG + aufgelistet. + + 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 + Sonstige Einstellungen/Erfolgsrechnung überprüft und + allenfalls neu gesetzt werden. - + - Rundung in Verkaufsbelegen - - In der Schweiz hat die kleinste aktuell benutzte Münze den Wert von 5 Rappen (0.05 CHF). - - 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. - - In kivitendo kann seit der Version 3.4.1 die Einstellung für eine solche - Rundung pro Mandant / Datenbank festgelegt werden. - - Die Einstellung wird beim Erstellen der Datenbank bei Genauigkeit - festgelegt. Sie kann anschliessend über das Webinterface von kivitendo nicht mehr - verändert werden. - - Abhängig vom Wert für default_manager in - config/kivitendo.conf werden dabei folgende - Werte voreingestellt: - + Rundung in Verkaufsbelegen + + In der Schweiz hat die kleinste aktuell benutzte Münze den Wert + von 5 Rappen (0.05 CHF). + + 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. + + In kivitendo kann seit der Version 3.4.1 die Einstellung für eine + solche Rundung pro Mandant / Datenbank festgelegt werden. + + Die Einstellung wird beim Erstellen der Datenbank bei + Genauigkeit festgelegt. Sie kann anschliessend über + das Webinterface von kivitendo nicht mehr verändert werden. + + Abhängig vom Wert für default_manager in + config/kivitendo.conf werden dabei folgende Werte + voreingestellt: + + 0.05 (default_manager = swiss) + 0.01 (default_manager = german) - Der Wert wird in der Datenbank in der Tabelle defaults + + Der Wert wird in der Datenbank in der Tabelle defaults in der Spalte precision gespeichert. - - In allen Verkaufsangeboten, Verkaufsaufträgen, Verkaufsrechnungen - und Verkaufsgutschriften wird der Endbetrag inkl. MWST gerundet, - wenn dieser nicht der eingestellten Genauigkeit entspricht. - - Beim Buchen einer Verkaufsrechnung wird der Rundungsbetrag - automatisch auf die in der Mandantenkonfiguration festgelegten - Standardkonten für Rundungserträge bzw. Rundungsaufwendungen gebucht. - - (Die berechnete MWST wird durch den Rundungsbetrag nicht mehr verändert.) - - Die in den Druckvorlagen zur Verfügung stehenden Variablen - quototal, ordtotal bzw. + + In allen Verkaufsangeboten, Verkaufsaufträgen, Verkaufsrechnungen + und Verkaufsgutschriften wird der Endbetrag inkl. MWST gerundet, wenn + dieser nicht der eingestellten Genauigkeit entspricht. + + Beim Buchen einer Verkaufsrechnung wird der Rundungsbetrag + automatisch auf die in der Mandantenkonfiguration festgelegten + Standardkonten für Rundungserträge bzw. Rundungsaufwendungen + gebucht. + + (Die berechnete MWST wird durch den Rundungsbetrag nicht mehr + verändert.) + + Die in den Druckvorlagen zur Verfügung stehenden Variablen + quototal, ordtotal bzw. invtotal enthalten den gerundeten Betrag. - - Achtung: Werden Verkaufsbelege - in anderen Währungen als der Standardwährung erstellt, so muss in - kivitendo 3.4.1 die Genauigkeit 0.01 verwendet werden. - 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. + + Achtung: Werden Verkaufsbelege in + anderen Währungen als der Standardwährung erstellt, so muss in kivitendo + ab Version 3.4.1 die Genauigkeit 0.01 verwendet werden. + + 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. @@ -3491,9 +3710,9 @@ systemctl enable kivitendo-task-server.service (siehe ). - 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. + 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. Insgesamt sind technisch gesehen eine ganze Menge mehr Variablen verfügbar als hier aufgelistet werden. Die meisten davon können @@ -4787,11 +5006,11 @@ systemctl enable kivitendo-task-server.service rounding - Betrag, um den invtotal gerundet wurde - (kann positiv oder negativ sein) + Betrag, um den invtotal gerundet + wurde (kann positiv oder negativ sein) - + shippingpoint @@ -5241,6 +5460,10 @@ systemctl enable kivitendo-task-server.service Die benutzerdefinierten Variablen der Lieferadressen stehen unter einem ähnlichen Namensschema zur Verfügung. Hier lautet der Präfix shiptocvar_. + + Analog stehen die benutzerdefinierten Variablen für + Ansprechpersonen mit dem Namenspräfix cp_cvar_ + zur Verfügung. @@ -5263,13 +5486,21 @@ systemctl enable kivitendo-task-server.service Allgemeine Variablen in Mahnungen - Die Variablen des Verkäufers stehen wie gewohnt als - employee_... zur Verfügung. Die Adressdaten des - Kunden stehen als Variablen name, - street, zipcode, - city, country, - department_1, department_2, - und email zur Verfügung. + Die Variablen des Bearbeiters, bzw. Verkäufers stehen wie + gewohnt als employee_... bzw. + salesman_... zur Verfügung. Werden mehrere + Rechnungen in einer Mahnung zusammengefasst, so werden die Metadaten + (Bearbeiter, Abteilung, etc) der ersten angemahnten Rechnung im + Ausdruck genommen. + + Die Adressdaten des Kunden stehen als Variablen + name, street, + zipcode, city, + country, department_1, + department_2, und email zur + Verfügung. Der Ansprechpartner cp_... steht auch + zu Verfügung, wird allerdings auch nur von der ersten angemahnten + Rechnung (s.o.) genommen. Weitere Variablen beinhalten: @@ -6127,20 +6358,19 @@ Beschreibung: <%description%> - - Mandantenkonfiguration Lager - 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. + 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. @@ -6160,7 +6390,7 @@ Beschreibung: <%description%> - Zusätzliche Funktionshinweise: + Zusätzliche Funktionshinweise: @@ -6177,37 +6407,678 @@ Beschreibung: <%description%> verwendet. + + + + Schweizer Kontenpläne + + Seit der Version 3.5 stehen in kivitendo 3 Kontenpläne für den + Einsatz in der Schweiz zur Verfügung, einer für Firmen und + Organisationen, die nicht mehrwertsteuerpflichtig sind, einer für + Firmen, die mehrwertsteuerpflichtig sind und einer speziell für + Vereine. + + 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 Art.957a Abs.2. + + Beim Vereinskontenplan sind standardmässig nur die Konten 1100 + (Debitoren CHF) und 1101 (Debitoren EUR) als Buchungskonten im Verkauf + sowie die Konten 2000 (Kreditoren CHF) und 2001 (Kreditoren EUR) als + Buchungskonten im Einkauf vorgesehen. Weitere Konten können bei Bedarf + in den Konto-Detaileinstellungen als Einkaufs- oder Verkaufskonten + konfiguriert werden. + + Die Möglichkeit, Saldosteuersätze zu verwenden ist in der + aktuellen Version von kivitendo noch nicht integriert. + + 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. + + So werden bei Kreditorenbuchungen keine Vorsteuern + verbucht. + Bezugssteuern für aus dem Ausland bezogene Dienstleistungen müssen + manuell verbucht werden. + Wünsche für Anpassungen an den Schweizer Kontenplänen sowie + Vorschläge für weitere (z.B. branchenspezifische) Kontenpläne bitte an + empfang@revamp-it.ch senden. - - - Schweizer Kontenpläne - - 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. - - 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 - Art.957a Abs.2. - - Die Möglichkeit, Saldosteuersätze zu verwenden ist in der aktuellen - Version von kivitendo noch nicht integriert. - - 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. - - So werden bei Kreditorenbuchungen keine Vorsteuern verbucht. - - Wünsche für Anpassungen an den Schweizer Kontenplänen sowie - Vorschläge für weitere (z.B. branchenspezifische) Kontenpläne - bitte an empfang@revamp-it.ch senden. + + + Artikelklassifizierung + + + Übersicht + + 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. + + + + Basisklassifizierung + + Als Basisklassifizierungen gibt es + + + + Einkauf + + + + Verkauf + + + + Handelsware + + + + Produktion + + + + - keine - (diese wird bei einer Aktualisierung für alle + existierenden Artikel verwendet und ist gültig für Verkauf und + Einkauf) + + + + Es können weitere Klassifizierungen angelegt werden. So kann es + z.B. für separat auszuweisende Artikel folgende Klassen geben: + + + + Lieferung (Logistik, Transport) mit Kürzel L + + + + Material (Verpackungsmaterial) mit Kürzel M + + + + + + Attribute + + Bisher haben die Klassifizierungen folgende Attribute, die auch + alle gleichzeitg gültig sein können + + + + gültig für Verkauf - dieser Artikel kann im Verkauf genutzt + werden + + + + gültig für Einkauf - dieser Artikel kann im Einkauf genutzt + werden + + + + separat ausweisen - hierzu gibt es zur Dokumentengenerierung + (LaTeX) eine zusätzliche Variable + + + + Für das Attribut "separat ausweisen" stehen in den + LaTeX-Vorlagen die Variable <%non_separate_subtotal%> zur Verfügung, + die alle nicht separat auszuweisenden Artikelkosten saldiert, sowie + pro separat auszuweisenden Klassifizierungen die Variable< %separate_X_subtotal%>, wobei X das + Kürzel der Klassifizierung ist. + + Im obigen Beispiel wäre das für Lieferkosten <%separate_L_subtotal%> und für + Verpackungsmaterial + <%separate_M_subtotal%>. + + + + Zwei-Zeichen Abkürzung + + Der Typ des Artikels und die Klassifizierung werden durch zwei + Buchstaben dargestellt. Der erste Buchstabe ist eine Lokalisierung des + Artikel-Typs ('P','A','S'), deutsch 'W', 'E', und 'D' für Ware + Erzeugnis oder Dienstleistung und ggf. weiterer Typen. + + Der zweite Buchstabe (und ggf. auch ein dritter, falls nötig) + entspricht der lokalisierten Abkürzung der Klassifizierung. + + Diese Abkürzung wird überall beim Auflisten von Artikeln zur + Erleichterung mit dargestellt. + + + + + Dateiverwaltung (Mini-DMS) + + + Übersicht + + Parallel zum alten WebDAV gibt es ein Datei-Management-System, + das Dateien verschiedenen Typs verwaltet. Dies können + + + + aus ERP-Daten per LaTeX Template erzeugte + PDF-Dokumente, + + + + zu bestimmten ERP-Daten gehörende Anhangdateien + unterschiedlichen Formats, + + + + per Scanner eingelesene PDF-Dateien, + + + + per E-Mail empfangene Dateianhänge unterschiedlichen + Formats, + + + + sowie speziel für Artikel hochgeladene Bilder sein. + + + + + Übersicht + + + + + + + + + + + Struktur + + Ü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: + + + + Dateisystem + + + + WebDAV + + + + Schnittstelle zu externen + Dokumenten-Management-Systemen + + + + andere Datenbank + + + + etc ... + + + + Es gibt unterschiedliche Typen von Dateien. Jedem Typ läßt sich + in der Mandantenkonfiguration ein bestimmtes Backend zuordnen. + + + + "document": Das sind entweder generierte, eingescannte oder + hochgeladene PDF-Dateien, die zu bestimmten ERP-Daten + (ERP-Objekte, wie z.B. Rechnung, Lieferschein) gehören. + + + + "attachment": zusätzlich hochgeladene Dokumente, die an + bestimmte ERP-Objekte angehängt werden, z.B. technische + Zeichnungen, Aufmaße. Diese können auch für Artikel, Lieferanten + und Kunden hinterlegt sein. + + + + "image": Bilder für Artikel. Diese können auch verkleinert + in einer Vorschau (Thumbnail) angezeigt werden. + + + + Zusätzlich werden in der Datenbank zu den Dateien neben der + Zuordnung zu ERP-Objekten, Dateityp Dateinamen und Backend, in dem die + Datei gespeichert ist, auch die Quelle der Datei notiert: + + + + "created": vom System erzeugte Dokumente" + + + + "uploaded": hochgeladene Dokumente + + + + "email": vom Mail-System empfangene Dateien + + + + "scanner[1]": von einem oder mehreren Scannern erzeugte + Dateien. Existieren mehrere Scanner, so sind diese durch + unterschiedliche Quellennamen zu definieren. + + + + 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 + ). + + + + Anwendung + + Die Daten werden bei den ERP-Objekten als extra Reiter + dargestellt. Eine Verkaufsrechnung z.B. hat die Reiter "Dokumente" und + "Dateianhänge". + + + Reiter "Dateianhänge" + + + + + + + + + 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 gefragt, ob er eine neue Version anlegen will oder + ob er die Datei umbenennen will, falls es eine neue Datei sein + soll. + + + Reiter "Dateianhänge" + + + + + + + + + Es können mehrere Dateien gleichzeitig hochgeladen werden, + solange in Summe die maximale Größe nicht überschritten wird (siehe + ). + + + Reiter "Dokumente" + + + + + + + + + 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 der zusätzliche Quellen konfiguriert, + so sind diese z.B. bei Einkaufsrechnungen sichtbar: + + + Reiter "Dokumente" + + + + + + + + + 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. + + Derzeit sind "Titel" und "Beschreibung" noch nicht genutzt. Sie + sind bisher nur bei Bildern relevant. + + + + Konfigurierung + + + Mandantenkonfiguration + + + Reiter "Features" + + Unter dem Reiter Features + im Abschnitt Dateimanagement ist neben dem "alten" WebDAV das + Dateimangement generell zu- und abschaltbar, sowie die Zuordnung + der Dateitypen zu Backends. Die Löschbarkeit von Dateien, sowie + die maximale Uploadgröße sind Backend-unabhängig + + + Mandantenkonfig Reiter "Features" + + + + + + + + + Die einzelnen Backends sind einzeln einschaltbar. + Spezifische Backend-Konfigurierungen sind hier noch + ergänzbar. + + + + Reiter "Allgemeine Dokumentenanhänge" + + Unter dem Reiter Allgemeine + Dokumentenanhänge kann für alle ERP-Dokumente ( + Angebote, Aufträge, Lieferscheine, Rechnungen im Verkauf und + Einkauf ) allgemeingültige Anhänge hochgeladen werden. + + + Mandantenkonfig Reiter "Allgemeine + Dokumentenanhänge" + + + + + + + + + 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, sodass an den ERP-Dokumenten + immer die Anhänge zum Generierungszeitpunkt eingebettet + sind. + + + + + Datenbank-Konfigurierung + + Die zusätzlichen Quellen für "email" oder ein oder mehrere + Scanner sind derzeit vom Administrator direkt in der + Datenbanktabelle "user_preferences" einzurichten. Die "value" ist im + JSON-Format mit den jeweiligen Werten des Verzeichnisses und der + Beschreibung der Quelle. + + + 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" } + + + Es ist daran gedacht, statt dem Default-Eintrag später für + bestimmte Benutzer ('login') bestimmte Quellen zuzulassen. Dies wird + nach Bedarf implementiert. + + + + kivitendo-Konfigurationsdatei + + Dort ist im Abschnitt [paths] der relative oder absolute Pfad + zum Dokumentenwurzelverzeichnis einzutragen. Dieser muss für den + Webserver schreib- und lesbar sein, jedoch nicht ausführbar. + + +[paths] +document_path = /var/local/kivi_documents + + + Unter diesem Wurzelverzeichnis wird pro Mandant automatisch + ein Unterverzeichnis mit der ID des Mandanten angelegt. + + + + + + Webshop-Api + + Das Shopmodul bietet die Möglichkeit Onlineshopartikel und + Onlineshopbestellungen zu verwalten und zu bearbeiten. + + Es ist Multishopfähig, d.h. Artikel können mehreren oder + unterschiedlichen Shops zugeordnet werden. Bestellungen können aus + mehreren Shops geholt werden. + + Zur Zeit bietet das Modul nur einen Connector zur REST-Api von + Shopware. Weitere Connectoren können dazu programmiert und eingerichtet + werden. + + + Rechte für die Webshopapi + + In der Administration können folgende Rechte vergeben + werden + + + + Webshopartikel anlegen und bearbeiten + + + + Shopbestellungen holen und bearbeiten + + + + Shop anlegen und bearbeiten + + + + + + Konfiguration + + Unter System->Webshops können Shops angelegt und konfiguriert + werden + + + + + + + + + + Webshopartikel + + + Shopvariablenreiter in Artikelstammdaten + + Mit dem Recht "Shopartikel anlegen und bearbeiten" und des + Markers "Shopartikel" in den Basisdaten + zeigt sich der Reiter "Shopvariablen" in den + Artikelstammdaten. Hier können jetzt die Artikel mit + unterschiedlichen Beschreibung und/oder Preisen für die + konfigutierten Shops angelegt und bearbeitet werden. An dieser + Stelle können auch beliebig viele Bilder dem Shopartikel zugeordnet + werden. Artikelbilder gelten für alle Shops. + + + + + + + + Die Artikelgruppen werden direkt vom Shopsystem geholt somit + ist es möglich einen Artikel auch mehreren Gruppen + zuzuordenen + + + + Shopartikelliste + + Unter dem Menu Webshop->Webshop Artikel hat man nochmal + eine Gesamtübersicht. Von hier aus ist es möglich Artikel im Stapel + unter verschiedenen Kriterien <alles><nur Preis><nur + Bestand><Preis und Bestand> an die jeweiligen Shops + hochzuladen. + + + + + + + + + + + Bestellimport + + Unter dem Menupunkt Webshop->Webshop Import öffnet sich die + Bestellimportsliste. Hier ist sind Möglichkeiten gegeben Neue + Bestellungen vom Shop abzuholen, geholte Bestellungen im Stapel oder + einzeln als Auftrag zu transferieren. Die Liste kann nach + verschiedenen Kriterien gefiltert werden. + + + + + + + + Bei Einträgen in der Liste. + + + + keine Kundennummer: Es gibt ähnliche Kundendatensätze und + der Datensatz konnte nicht eindeutig zugewiesen werden. + + + + Kundennummer und Rechnungen rot hinterlegt: Der Kunde hat + offene Posten und kann deswegen nicht im Stapel übernommen + werden. + + + + Rechnungsadresse grün hinterlegt: Der Kunde konnte eindeutig + einem Datensatz zugeordnet werden. Die Shopbestellung kann im + Stapel mit dem Button "Anwenden" und wenn markiert als Auftrag + übernommen werden. + + + + Kundennummer vorhanden, aber die Checkbox "Auftrag + erstellen" fehlt. Der Kunde hat vermutlich eine + Shopauftragssperre. + + + + Lieferadresse grau hinterlegt: Optische Anzeige, dass es + sich um eine unterschiedliche Lieferadresse handelt. + Lieferadressen werden aber grundsätzlich beim Transferieren zu + Aufträgen mit übernommen. + + + + In der Spalte Positionen/Betrag/Versandkosten zeigt sich ein + tooltip zu den Positionen. + + + + Maske Auftrag erstellen + + Viele Shopsysteme haben drei verschieden Adresstypen Kunden-, + Rechnungs-, und Lieferadresse, die sich auch alle unterscheiden + können. Diese werden im oberen Bereich angezeigt. Es ist möglich jede + dieser Adresse einzeln in kivitendo als Kunde zu übernehmen. Es werden + die Werte Formulareingabe übernommen. Es wird bei einer Änderung + allerdings nur diese in die kivitendo Kundenstammdaten übernommen, die + Shopbestellung bleibt bestehen. + + Mit der mittleren Adresse(Rechnungsadresse) im oberen Bereich, + kann ich den ausgewählten kivitendodatensatz des mittleren Bereich + überschreiben. Das ist sinnvoll, wenn ich erkenne, das der Kunde z.B. + umgezogen ist. + + Im mittleren Bereich das Adresslisting zeigt: + + + + Rot hinterlegt: Kunde hat eine Shopauftragssperre, diese + muss zuerst deaktiviert werden bevor ich diesem Kunden eine + Shopbestellung zuordnen kann. + + + + Kundenname fett und rot: Hier hat der Kunde eine Bemerkung + in den Stammdaten. Ein Tooltip zeigt diese Bemerkung. Das kann dan + auch der Grund für die Auftragssperre sein. + + + + Die Buttons "Auftrag erstellen" und "Kunde mit + Rechnungsadresse überschreiben" zeigen sich erst, wenn ein Kunde + aus dem Listing ausgewählt ist. + + + + Es ist aber möglich die Shopbestellung zu löschen. + + + + Ist eine Bestellung schon übernommen, zeigen sich an dieser + Stelle, die dazugehörigen Belegverknüpfungen. + + + + + + Mapping der Daten + + Das Mapping der kivitendo Daten mit den Shopdaten geschieht in + der Datei SL/ShopConnector/<SHOPCONNECTORNAME>.pm + z.B.:SL/ShopConnector/Shopware.pm + + In dieser Datei gibt es einen Bereich wo die Bestellpostionen, + die Bestellkopfdaten und die Artikeldaten gemapt werden. In dieser + Datei kann ein individelles Mapping dann gemacht werden. Zu Shopware + gibt es hier eine sehr gute Dokumentation: https://developers.shopware.com/developers-guide/rest-api/ + @@ -6491,8 +7362,8 @@ Beschreibung: <%description%> - Enthält unter anderem Listenbegrenzung vclimit, - Datumsformat dateformat und Nummernformat numberformat + Enthält unter anderem Datumsformat dateformat und + Nummernformat numberformat @@ -7479,6 +8350,18 @@ $self->{more_texts} = { perl-URI-Find; openSUSE: perl-URI-Find) + + + Sys::CPU (Debian-Panetname: + libsys-cpu-perl; Fedora und openSUSE: nicht + vorhanden) + + + + Thread::Pool::Simple (Debian-Panetname: + libthread-pool-simple-perl; Fedora und + openSUSE: nicht vorhanden) + Weitere Voraussetzung ist, dass die Testsuite ihre eigene @@ -7487,6 +8370,15 @@ $self->{more_texts} = { testing/database Datenbankverbindungsparameter angegeben werden. Der hier angegebene Benutzer muss weiterhin das Recht haben, Datenbanken anzulegen und zu löschen. + + Der so angegebene Benutzer muss nicht zwingend über + Super-User-Rechte verfügen. Allerdings gibt es einige + Datenbank-Upgrades, die genau diese Rechte benötigen. Für den Fall + kann man in diesem Konfigurationsabschnitt einen weiteren + Benutzeraccount angeben, der dann über Super-User-Rechte verfügt, und + mit dem die betroffenen Upgrades durchgeführt werden. In der + Beispiel-Konfigurationsdatei finden Sie die benötigten + Parameter. @@ -7658,7 +8550,7 @@ Support::TestSetup::login(); sein. Dieser wird für die Datenbankverbindung benötigt. Wir keine vollständig initialisierte Umgebung benötigt, so - kann die letzte Zeile Support::TestSetup::login(); + kann die letzte Zeile Support::TestSetup::login(); weggelassen werden, was die Ausführungszeit des Scripts leicht verringert.