2.12. Drucken mit kivitendo

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

apt install texlive-base-bin texlive-latex-recommended texlive-fonts-recommended \
  texlive-latex-extra texlive-lang-german ghostscript

Für Fedora benötigen Sie die folgenden Pakete:

dnf install texlive-collection-latex texlive-collection-latexextra \
  texlive-collection-latexrecommended texlive-collection-langgerman \
  texlive-collection-langenglish

Für openSUSE benötigen Sie die folgenden Pakete:

zypper install texlive-collection-latex texlive-collection-latexextra \
  texlive-collection-latexrecommended texlive-collection-langgerman \
  texlive-collection-langenglish

[Anmerkung]Anmerkung

kivitendo erwartet eine aktuelle TeX Live Umgebung, um PDF/A zu erzeugen. Aktuelle Distributionen von 2020 erfüllen diese. Überprüfbar ist dies mit dem Aufruf des installation_check.pl mit Parameter -l:

scripts/installations_check.pl -l

kivitendo bringt drei alternative Vorlagensätze mit:

Der ehemalige Druckvorlagensatz "f-tex" wurde mit der Version 3.5.6 entfernt, da er nicht mehr gepflegt wird.

2.12.1. Vorlagenverzeichnis anlegen

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

./scripts/installation_check.pl -lv

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

Im Userbereich lässt sich unter: "System -> Mandantenverwaltung -> Verschiedenes" die Option "Neue Druckvorlagen aus Vorlagensatz erstellen" auswählen.

  1. Vorlagen auswählen: Wählen Sie hier den Vorlagensatz aus, der kopiert werden soll (RB, marei oder odt-rev.)

  2. Neuer Name: Der Verzeichnisname für den neuen Vorlagensatz. Dieser kann im Rahmen der üblichen Bedingungen für Verzeichnisnamen frei gewählt werden.

Nach dem Speichern wird das Vorlagenverzeichnis angelegt und ist für den aktuellen Mandanten ausgewählt. Der gleiche Vorlagensatz kann, wenn er mal angelegt ist, bei mehreren Mandanten verwendet werden. Eventuell müssen Anpassungen (Logo, Erscheinungsbild, etc) noch vorgenommen werden. Den Ordner findet man im Dateisystem unter ./templates/[Neuer Name]

2.12.2. Der Druckvorlagensatz RB

Hierbei handelt es sich um einen vollständigen LaTeX Dokumentensatz mit alternativem Design. Die odt oder html-Varianten sind nicht gepflegt.

Die konzeptionelle Idee der Vorlagen wird hier auf Folie 5 bis 10 vorgestellt. Informationen zur Anpassung an die eigenen Firmendaten finden sich in der Datei Readme.tex im Vorlagenverzeichnis.

Eine kurze Übersicht der Features:

  • Mehrsprachenfähig, mit Deutscher und Englischer Übersetzung

  • Zentrale Konfigurationsdateien, die für alle Belege benutzt werden, z.B. für Kopf- und Fußzeilen, und Infos wie Bankdaten

  • mehrere vordefinierte Varianten für Logos/Hintergrundbilder

  • Berücksichtigung für Steuerzonen "EU mit USt-ID Nummer" oder "Außerhalb EU"

2.12.3. Der Druckvorlagensatz rev-odt

Hierbei handelt es sich um einen Dokumentensatz der mit odt-Vorlagen erstellt wurde. Es gibt in dem Verzeichnis eine Readme-Datei, die eventuell aktueller als die Dokumentation hier ist. Die odt-Vorlagen in diesem Verzeichnis "rev-odt" wurden von revamp-it, Zürich erstellt und werden laufend aktualisiert. Ein paar der Formulierungen in den Druckvorlagen entsprechen dem Schweizer Sprachgebrauch, z.B. "Offerte" oder "allfällig".

Hinweis zum Einsatz des Feldes "Land" bei den Stammdaten für KundInnen und LieferantInnen, sowie bei Lieferadressen: Die in diesem Vorlagensatz vorhandenen Vorlagen erwarten für "Land" das entsprechende Kürzel, das in Adressen vor die Postleitzahl gesetzt wird. Das Feld kann auch komplett leer bleiben. Wer dies anders handhaben möchte, muss die Vorlagen entsprechend anpassen.

odt-Vorlagen können mit LibreOffice oder OpenOffice editiert und den eigenen Bedürfnissen angepasst werden. Wichtig beim Editieren von if-Blöcken ist, dass immer der gesamte Block überschrieben werden muss 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 Briefen und Pflichtenheften einzusetzen. Entsprechende Vorlagen sind deshalb nicht vorhanden.

Fehlermeldungen, Anregungen und Wünsche bitte senden an: empfang@revamp-it.ch

2.12.4. Allgemeine Hinweise zu LaTeX Vorlagen

In den allermeisten Installationen sollte das Drucken jetzt schon funktionieren. Sollte ein Fehler auftreten, wirft TeX sehr lange Fehlerbeschreibungen, der eigentliche Fehler ist immer die erste Zeile, die mit einem Ausrufezeichen anfängt. Häufig auftretende Fehler sind zum Beispiel:

  • ! LaTeX Error: File `eurosym.sty' not found. Die entsprechende LaTeX-Bibliothek wurde nicht gefunden. Das tritt vor allem bei Vorlagen aus der Community auf. Installieren Sie die entsprechenden Pakete.

  • ! Package inputenc Error: Unicode char \u8:... set up for use with LaTeX. Dieser Fehler tritt auf, wenn sie versuchen mit einer Standardinstallation exotische utf8 Zeichen zu drucken. TeXLive unterstützt von Haus nur romanische Schriften und muss mit diversen Tricks dazu gebracht werden andere Zeichen zu akzeptieren. Adere TeX Systeme wie XeTeX schaffen hier Abhilfe.

Wird gar kein Fehler angezeigt, sondern nur der Name des Templates, heißt das normalerweise, dass das LaTeX Binary nicht gefunden wurde. Prüfen Sie den Namen in der Konfiguration (Standard: latexmk --pdflatex), und stellen Sie sicher, dass latexmk (oder das von Ihnen verwendete System) vom Webserver ausgeführt werden darf.

Wenn sich das Problem nicht auf Grund der Ausgabe im Webbrowser verifizieren lässt:

  • editiere [kivitendo-home]/config/kivitendo.conf und ändere "keep_temp_files" auf 1

    keep_temp_files = 1;

  • bei fastcgi oder mod_perl den Webserver neu Starten

  • Nochmal einen Druckversuch im Webfrontend auslösen

  • wechsel in das users Verzeichnis von kivitendo

    cd [kivitendo-home]/users

  • LaTeX Suchpfad anpassen:

    export TEXINPUTS=".:[kivitendo-home]/templates/[aktuelles_template_verzeichniss]:"

  • Finde heraus, welche Datei kivitendo beim letzten Durchlauf erstellt hat

    ls -lahtr ./1*.tex

    Es sollte die letzte Datei ganz unten sein

  • für besseren Hinweis auf Fehler texdatei nochmals übersetzen

    pdflatex ./1*.tex

    in der *.tex datei nach dem Fehler suchen.