2.15. 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. Nachfolgend ist die Verwendung mit LibreOffice beschrieben. Für die Verwendung mit OpenOffice müssen die Einstellungen allenfalls angepasst werden.

2.15.1. Grundeinstellung

Um die Unterstützung von OpenDocument-Vorlagen zu aktivieren, muss in der Datei config/kivitendo.conf die Variable opendocument, im Abschnitt print_templates, auf 1 stehen. Dies ist die Standardeinstellung.

2.15.2. Direkte Erzeugung von PDF-Dateien

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.

Unter Debian kann dieses installiert werden mit:

apt install libreoffice

Der Pfad zu LibreOffice kann in der Datei config/kivitendo.conf, im Abschnitt applications, angepasst werden. Unter Debian sollte dies nicht notwendig sein.

2.15.2.1. Variante 1)

In der Standardeinstellung wird LibreOffice für jedes Dokument neu gestartet. Es ist keine weitere Konfiguration erforderlich.

2.15.2.2. Variante 2)

Die zweite Variante startet ein LibreOffice, 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 möglicherweise reduziert wird, weil nicht für jedes Dokument eine neue Instanz gestartet werden muss.

Dazu muss in der Konfigurationsdatei config/kivitendo.conf, im Abschnitt print_templates, openofficeorg_daemon = 1 gesetzt werden.

Diese Methode verwendet Python und die Python uno bindings. Unter Debian werden diese mit LibreOffice mitgeliefert.

Die Optionen python_uno und python_uno_path in der Konfigurationsdatei config/kivitendo.conf dienen zur Anpassung der Python uno Pfade. Unter Debian sollte keine Anpassung notwendig sein.

2.15.3. Vorbereitungen

2.15.3.1. Adminbereich

Damit beim Erstellen von Rechnungen und Aufträgen neben der Standardvorlage ohne Einzahlungsschein weitere Vorlagen (z.B. mit Einzahlungsschein) auswählbar sind, muss für jedes Vorlagen-Suffix ein Drucker eingerichtet werden:

  • Druckeradministration → Drucker hinzufügen

  • Mandant wählen

  • 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)

  • Vorlagenkürzel → besr bzw. selbst gewähltes Vorlagensuffix (muss genau der Zeichenfolge entsprechen, die zwischen "invoice_" bzw. "sales_order_" und ".odt" steht.)

  • speichern

2.15.3.2. Benutzereinstellungen

Wer den Ausdruck mit Einzahlungsschein als Standardeinstellung im Rechnungs- bzw. Auftragsformular angezeigt haben möchte, kann dies persönlich für sich bei den Benutzereinstellungen konfigurieren:

  • Programm → Benutzereinstellungen → Druckoptionen

  • Standardvorlagenformat → OpenDocument/OASIS

  • Standardausgabekanal → Bildschirm

  • Standarddrucker → gewünschte Druckerbeschreibung auswählen (z.B. mit Einzahlungsschein Bank xy)

  • Anzahl Kopien → leer

  • speichern

2.15.3.3. Auswahl der Druckvorlage in kivitendo beim Erzeugen einer odt-Rechnung (analog bei Auftrag)

Im Fussbereich der Rechnungsmaske muss neben Rechnung, OpenDocument/OASIS und Bildschirm die im Adminbereich erstellte Druckerbeschreibung ausgewählt werden, falls diese nicht bereits bei den Benutzereinstellungen als persönlicher Standard gewählt wurde.

2.15.4. Schweizer QR-Rechnung mit OpenDocument Vorlagen

Mit der Version 3.6.0 unterstützt Kivitendo die Erstellung von Schweizer QR-Rechnungen gemäss Swiss Payment Standards, Version 2.2. Implementiert sind hierbei die Varianten:

  • QR-IBAN mit QR-Referenz

  • IBAN ohne Referenz

2.15.4.1. Einstellungen

2.15.4.1.1. Mandantenkonfiguration

Unter System → Mandantenkonfiguration → Features. Im Abschnitt Einkauf und Verkauf, beim Punkt Verkaufsrechnungen mit Schweizer QR-Rechnung erzeugen, die gewünschte Variante wählen.

2.15.4.1.2. Konfiguration der Bankkonten

Unter System → Bankkonten muss bei mindestens einem Bankkonto die Option Nutzung mit Schweizer QR-Rechnung auf Ja gestellt werden.

Die IBAN muss ohne Leerzeichen angegeben werden.

[Tipp]Tipp

Für die Variante QR-IBAN mit QR-Referenz muss dieses Konto unter IBAN eine gültige QR-IBAN Nummer enthalten. Diese unterscheidet sich von der regulären IBAN.

Zusätzlich muss eine gültige Bankkonto Identifikationsnummer angegeben werden (6-stellig).

Diese werden von der jeweiligen Bank vergeben.

Sind mehrere Konten ausgewählt wird das erste verwendet.

2.15.4.1.3. Rechnungen ohne Betrag

Für Rechnungen ohne Betrag (z.B. Spenden) kann, in der jeweiligen Rechnung, die Checkbox QR-Rechnung ohne Betrag aktiviert werden. Diese Checkbox erscheint nur, wenn QR-Rechnungen in der Mandantenkonfiguration aktiviert sind (variante ausgewählt).

Dies wirkt sich lediglich auf den erzeugten QR-Code aus. Die Vorlage muss separat angepasst und ausgewählt werden.

2.15.4.2. Adressdaten

Die Adressdaten zum Zahlungsempfänger werden aus der Mandantenkonfiguration entnommen. Unter System → Mandantenkonfiguration → Verschiedenes, Abschnitt Firmenname und -adresse.

Die Adressdaten zum Zahlungspflichtigen stammen aus den Kundendaten der jeweiligen Rechnung.

Ist bei den Adressdaten kein Land angegeben, wird standardmässig Schweiz verwendet. Akzeptiert werden Ländername oder Ländercode, also z.B. "Schweiz" oder "CH".

Die Adressdaten können in der Vorlage mit den jeweiligen Variablen eingetragen werden. Siehe auch: Abschnitt 3.3, „Dokumentenvorlagen und verfügbare Variablen“

Der erzeugte QR-Code verwendet Adress-Typ "K" (Kombinierte Adressfelder, 2 Zeilen).

2.15.4.3. Referenznummer

Die Referenznummer wird in Kivitendo erzeugt und setzt sich wiefolgt zusammen:

  • Bankkonto Identifikationsnummer (6-stellig)

  • Kundennummer (6-stellig, mit führenden Nullen aufgefüllt)

  • Rechnungsnummer (14-stellig, mit führenden Nullen aufgefüllt)

  • Prüfziffer (1-stellig, berechnet mittels modulo 10, rekursiv)

Es sind lediglich Ziffern erlaubt. Allfällige Buchstaben und Sonderzeichen werden entfernt und fehlende Stellen werden mit führenden Nullen aufgefüllt.

2.15.4.4. Vorlage

Der Vorlagensatz "rev-odt" enthält die Vorlage invoice_qr.odt, welche für die Erstellung von QR-Rechnungen vorgesehen ist. Damit diese verwendet werden kann muss wie obenstehend beschrieben ein Drucker hinzugefügt werden, allerdings mit dem Vorlagenkürzel qr (siehe Abschnitt 2.15.3.1, „Adminbereich“). Weitere Vorlagen für die QR-Rechnung müssen im Dateinamen, bzw. Vorlagenkürzel, ebenfalls die Zeichenfolge qr enthalten, also z.b. invoice_qr2.odt etc.

Die Vorlagen können beliebig angepasst werden. Zwingend müssen diese jedoch das QR-Code Platzhalter Bild, als eingebettetes Bild, enthalten. Da dieses beim Ausdrucken/Erzeugen der Rechnung durch das neu generierte QR-Code Bild ersetzt wird. Das Bild muss den Namen QRCodePlaceholder tragen. In Libreoffice unter Bild-Kontextmenü → Einstellungen → Optionen → Name einstellbar. Siehe dazu auch die Beispielvorlage.

2.15.4.4.1. Zusätzliche Variablen für Vorlage

Zusätzlich zu den in der Vorlage standardmässig verfügbaren Variablen (siehe Abschnitt 3.3, „Dokumentenvorlagen und verfügbare Variablen“), werden die folgenden Variablen erzeugt:

ref_number_formatted

Referenznummer formatiert mit Leerzeichen, z.B.: 21 00000 00003 13947 14300 09017

iban_formatted

IBAN formatiert mit Leerzeichen

amount_formatted

Betrag formatiert mit Tausendertrennzeichen Leerschlag, z.B.: 1 005.55