kivitendo/doc/html/ch02s13.html @ 9124f9ab
3adb0cb7 | Moritz Bunkus | <html><head>
|
||
06cb6b12 | Moritz Bunkus | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||
d2ab33ea | Geoffrey Richardson | <title>2.13. OpenDocument-Vorlagen</title><link rel="stylesheet" type="text/css" href="style.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1-RC2"><link rel="home" href="index.html" title="kivitendo 3.5.0: Installation, Konfiguration, Entwicklung"><link rel="up" href="ch02.html" title="Kapitel 2. Installation und Grundkonfiguration"><link rel="prev" href="ch02s12.html" title="2.12. Drucken mit kivitendo"><link rel="next" href="ch02s14.html" title="2.14. Nomenklatur"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.13. OpenDocument-Vorlagen</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s12.html">Zurück</a> </td><th width="60%" align="center">Kapitel 2. Installation und Grundkonfiguration</th><td width="20%" align="right"> <a accesskey="n" href="ch02s14.html">Weiter</a></td></tr></table><hr></div><div class="sect1" title="2.13. OpenDocument-Vorlagen"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="OpenDocument-Vorlagen"></a>2.13. OpenDocument-Vorlagen</h2></div></div></div><p>kivitendo unterstützt die Verwendung von Vorlagen im
|
||
2e917eea | Andreas Rudin | OpenDocument-Format, wie es LibreOffice oder OpenOffice (ab Version 2) erzeugen.
|
||
72de9676 | Jan Büren | 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
|
||||
<code class="filename">config/kivitendo.conf</code> die Variable
|
||||
<code class="literal">opendocument</code> im Abschnitt
|
||||
<code class="literal">print_templates</code> auf ‘<code class="literal">1</code>’ stehen.
|
||||
Dieses ist die Standardeinstellung.</p><p>Während die Erzeugung von reinen OpenDocument-Dateien keinerlei
|
||||
weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF
|
||||
2e917eea | Andreas Rudin | LibreOffice oder OpenOffice benötigt. Soll dieses Feature genutzt werden, so muss
|
||
neben LibreOffice oder OpenOffice auch der “X virtual frame buffer”
|
||||
72de9676 | Jan Büren | (xvfb) installiert werden. Bei Debian ist er im Paket “xvfb” enthalten.
|
||
Andere Distributionen enthalten ihn in anderen Paketen.</p><p>Nach der Installation müssen in der Datei
|
||||
2e917eea | Andreas Rudin | <code class="filename">config/kivitendo.conf</code> im Abschnitt
|
||
<code class="literal">applications</code> zwei weitere Variablen
|
||||
angepasst werden:</p><p>
|
||||
<code class="literal">openofficeorg_writer</code> muss den
|
||||
vollständigen Pfad zu LibreOffice oder OpenOffice enthalten.
|
||||
Dabei dürfen keine Anführungszeichen eingesetzt werden.</p><p>Beispiel für Debian oder Ubuntu:</p><pre class="programlisting">openofficeorg_writer = /usr/bin/libreoffice</pre><p>
|
||||
<code class="literal">xvfb</code> muss den Pfad zum “X virtual frame buffer”
|
||||
enthalten.</p><p>Zusätzlich gibt es zwei verschiedene Arten, wie kivitendo mit
|
||||
e449cab2 | Moritz Bunkus | LibreOffice bzw. OpenOffice kommuniziert. Die erste Variante, die benutzt
|
||
wird, wenn die Variable <code class="literal">$openofficeorg_daemon</code> 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.</p><div class="note" title="Anmerkung" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Anmerkung]" src="system/docbook-xsl/images/note.png"></td><th align="left">Anmerkung</th></tr><tr><td align="left" valign="top"><p>Für die Verbindung zu LibreOffice bzw. OpenOffice wird
|
||||
2e917eea | Andreas Rudin | normalerweise der Python-Interpreter
|
||
<code class="filename">/usr/bin/python</code> benutzt.
|
||||
0e14ae06 | Andreas Zenklusen | Sollte dies nicht der richtige sein, so kann man mit zwei
|
||
Konfigurationsvariablen entscheiden, welcher Python-Interpreter
|
||||
genutzt wird. Mit der Option <code class="literal">python_uno</code> aus dem
|
||||
Abschnitt <code class="literal">applications</code> wird der Interpreter selber
|
||||
festgelegt; sie steht standardmäßig auf dem eben erwähnten Wert
|
||||
<code class="literal">/usr/bin/python</code>.</p><p>Zusätzlich ist es möglich, Pfade anzugeben, in denen Python
|
||||
neben seinen normalen Suchpfaden ebenfalls nach Modulen gesucht wird,
|
||||
e449cab2 | Moritz Bunkus | z.B. falls sich diese in einem gesonderten LibreOffice- bzw.
|
||
2e917eea | Andreas Rudin | OpenOffice-Verzeichnis befinden. Diese zweite Variable heißt
|
||
0e14ae06 | Andreas Zenklusen | <code class="literal">python_uno_path</code> und befindet sich im Abschnitt
|
||
<code class="literal">environment</code>. Sie ist standardmäßig leer. Werden
|
||||
hier mehrere Pfade angegeben, so müssen diese durch Doppelpunkte
|
||||
voneinander getrennt werden. Der Inhalt wird an den Python-Interpreter
|
||||
über die Umgebungsvariable <code class="literal">PYTHONPATH</code>
|
||||
übergeben.</p></td></tr></table></div><p>Ist <code class="literal">$openofficeorg_daemon</code> nicht gesetzt, so
|
||||
e449cab2 | Moritz Bunkus | wird für jedes Dokument LibreOffice bzw. OpenOffice neu gestartet
|
||
und die Konvertierung mit Hilfe eines Makros durchgeführt. Dieses
|
||||
2e917eea | Andreas Rudin | Makro muss in der Dokumentenvorlage enthalten sein und
|
||
72de9676 | Jan Büren | “Standard.Conversion.ConvertSelfToPDF()” heißen. Die Beispielvorlage
|
||
2e917eea | Andreas Rudin | ‘<code class="literal">templates/print/rev-odt/invoice.odt</code>’
|
||
72de9676 | Jan Büren | enthält ein solches Makro, das in jeder anderen Dokumentenvorlage
|
||
ebenfalls enthalten sein muss.</p><p>Als letztes muss herausgefunden werden, welchen Namen
|
||||
2e917eea | Andreas Rudin | OpenOffice bzw. LibreOffice dem Verzeichnis mit den Benutzereinstellungen
|
||
e449cab2 | Moritz Bunkus | gibt. Unter Debian ist dies momentan
|
||
<code class="literal">~/.config/libreoffice</code>. kivitendo verwendet das
|
||||
2e917eea | Andreas Rudin | Verzeichnis <code class="literal">users/.openoffice.org2</code>.
|
||
Eventuell muss dieses Verzeichnis umbenannt werden.</p><p>Dieses Verzeichnis, wie auch das komplette
|
||||
72de9676 | Jan Büren | <code class="literal">users</code>-Verzeichnis, muss vom Webserver beschreibbar
|
||
e449cab2 | Moritz Bunkus | sein. Dieses wurde bereits erledigt (siehe <a class="xref" href="ch02s03.html" title="2.3. Manuelle Installation des Programmpaketes">Manuelle Installation des Programmpaketes</a>), kann aber
|
||
erneut überprüft werden, wenn die Konvertierung nach PDF
|
||||
8a1f99fd | Jan Büren | fehlschlägt.</p><div class="sect2" title="2.13.1. OpenDocument (odt) Druckvorlagen mit Makros"><div class="titlepage"><div><div><h3 class="title"><a name="d0e2233"></a>2.13.1. OpenDocument (odt) Druckvorlagen mit Makros</h3></div></div></div><p>OpenDocument Vorlagen können Makros enthalten, welche komplexere
|
||
0e14ae06 | Andreas Zenklusen | Aufgaben erfüllen.</p><p>Der Vorlagensatz "rev-odt" enthält solche Vorlagen mit <span class="bold"><strong>Schweizer Bank-Einzahlungsscheinen (BESR)</strong></span>.
|
||
Diese Makros haben die Aufgabe, die in den Einzahlungsscheinen
|
||||
benötigte Referenznummer und Kodierzeile zu erzeugen. Hier eine kurze
|
||||
Beschreibung, wie die Makros aufgebaut sind, und was bei ihrer Nutzung
|
||||
zu beachten ist (<span class="bold"><strong>in fett sind nötige einmalige
|
||||
8a1f99fd | Jan Büren | Anpassungen aufgeführt</strong></span>):</p><div class="sect3" title="2.13.1.1. Bezeichnung der Vorlagen"><div class="titlepage"><div><div><h4 class="title"><a name="d0e2246"></a>2.13.1.1. Bezeichnung der Vorlagen</h4></div></div></div><p>Rechnung: invoice_besr.odt, Auftrag:
|
||
sales_order_besr.odt</p></div><div class="sect3" title="2.13.1.2. Vorbereitungen im Adminbereich"><div class="titlepage"><div><div><h4 class="title"><a name="d0e2251"></a>2.13.1.2. Vorbereitungen im Adminbereich</h4></div></div></div><p>Damit beim Erstellen von Rechnungen und Aufträgen neben der
|
||||
0e14ae06 | Andreas Zenklusen | Standardvorlage ohne Einzahlungsschein weitere Vorlagen (z.B. mit
|
||
Einzahlungsschein) auswählbar sind, muss für jedes Vorlagen-Suffix
|
||||
2e917eea | Andreas Rudin | ein Drucker eingerichtet werden:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Druckeradministration → Drucker hinzufügen</p></li><li class="listitem"><p>Mandant wählen</p></li><li class="listitem"><p>Druckerbeschreibung → aussagekräftiger Text: wird in
|
||
0e14ae06 | Andreas Zenklusen | der Auftrags- bzw. Rechnungsmaske als Auswahl angezeigt (z.B.
|
||
2e917eea | Andreas Rudin | mit Einzahlungsschein Bank xy)</p></li><li class="listitem"><p>Druckbefehl → beliebiger Text (hat für das Erzeugen
|
||
0e14ae06 | Andreas Zenklusen | von Aufträgen oder Rechnungen als odt-Datei keine Bedeutung,
|
||
2e917eea | Andreas Rudin | darf aber nicht leer sein)</p></li><li class="listitem"><p>Vorlagenkürzel → besr bzw. selbst gewähltes
|
||
0e14ae06 | Andreas Zenklusen | Vorlagensuffix (muss genau der Zeichenfolge entsprechen, die
|
||
zwischen "invoice_" bzw. "sales_order_" und ".odt"
|
||||
8a1f99fd | Jan Büren | steht.)</p></li><li class="listitem"><p>speichern</p></li></ul></div></div><div class="sect3" title="2.13.1.3. Benutzereinstellungen"><div class="titlepage"><div><div><h4 class="title"><a name="d0e2275"></a>2.13.1.3. Benutzereinstellungen</h4></div></div></div><p>Wer den Ausdruck mit Einzahlungsschein als Standardeinstellung
|
||
0e14ae06 | Andreas Zenklusen | im Rechnungs- bzw. Auftragsformular angezeigt haben möchte, kann
|
||
dies persönlich für sich bei den Benutzereinstellungen
|
||||
2e917eea | Andreas Rudin | konfigurieren:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Programm → Benutzereinstellungen →
|
||
Druckoptionen</p></li><li class="listitem"><p>Standardvorlagenformat → OpenDocument/OASIS</p></li><li class="listitem"><p>Standardausgabekanal → Bildschirm</p></li><li class="listitem"><p>Standarddrucker → gewünschte Druckerbeschreibung
|
||||
8a1f99fd | Jan Büren | auswählen (z.B. mit Einzahlungsschein Bank xy)</p></li><li class="listitem"><p>Anzahl Kopien → leer</p></li><li class="listitem"><p>speichern</p></li></ul></div></div><div class="sect3" title="2.13.1.4. Aufbau und nötige Anpassungen der Vorlagen"><div class="titlepage"><div><div><h4 class="title"><a name="d0e2299"></a>2.13.1.4. Aufbau und nötige Anpassungen der Vorlagen</h4></div></div></div><p>In der Vorlage sind als Modul "BESR" 4 Makros gespeichert, die
|
||
0e14ae06 | Andreas Zenklusen | aus dem von kivitendo erzeugten odt-Dokument die korrekte
|
||
Referenznummer inklusive Prüfziffer sowie die Kodierzeile in
|
||||
OCRB-Schrift erzeugen und am richtigen Ort ins Dokument
|
||||
schreiben.</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Für den Einzahlungsschein ist die letzte Seite des
|
||||
Dokuments reserviert</p></li><li class="listitem"><p>Direkt über dem Einzahlungsschein enthält die Vorlage eine
|
||||
Zeile mit folgenden Angaben (<span class="bold"><strong>Bank-Konto-Identifikationsnummer und
|
||||
Postkonto-Nummer der Bank müssen gemäss Angaben der jeweiligen
|
||||
Bank angepasst werden</strong></span>):</p><div class="itemizedlist"><ul class="itemizedlist" type="circle"><li class="listitem"><p>DDDREF: 4 Werte zum Bilden der Referenznummer
|
||||
(jeweils durch einen Leerschlag getrennt): </p><div class="itemizedlist"><ul class="itemizedlist" type="square"><li class="listitem"><p>erster Wert: <span class="bold"><strong>Bank-Konto-Identifikation</strong></span>
|
||||
(nur Ziffern, maximal 6), <span class="bold"><strong>muss
|
||||
angepasst werden</strong></span>.</p></li><li class="listitem"><p>zweiter Wert: <%customernumber%>
|
||||
(Kundennummer: nur Ziffern, maximal 6)</p></li><li class="listitem"><p>dritter Wert: <%ordnumber%>
|
||||
(Auftragsnummer bei Auftragsvorlage
|
||||
sales_oder_besr.odt, sonst 0) maximal 7 Ziffern,
|
||||
führende Buchstaben werden vom Makro entfernt</p></li><li class="listitem"><p>vierter Wert: <%invnumber%>
|
||||
(Rechnungsnummer bei Rechnungsvorlage
|
||||
invoice_besr.odt, sonst 0) maximal 7 Ziffern,
|
||||
führende Buchstaben werden vom Makro entfernt</p></li></ul></div><p>
|
||||
</p></li><li class="listitem"><p>DDDKONTO: <span class="bold"><strong>Postkonto-Nummer der
|
||||
Bank, muss angepasst werden</strong></span>.</p></li><li class="listitem"><p>DDDBETRAG: <%total%> Einzahlungsbetrag oder 0,
|
||||
2e917eea | Andreas Rudin | falls Einzahlungsschein ohne Betrag</p></li><li class="listitem"><p>DDDEND: muss am Ende der Zeile vorhanden sein</p></li></ul></div><p>
|
||
0e14ae06 | Andreas Zenklusen | </p></li><li class="listitem"><p>
|
||
<span class="bold"><strong>Im Einzahlungsschein selbst müssen
|
||||
der Name und die Adresse der Bank, die Postkonto-Nummer der
|
||||
Bank, sowie der eigene Firmenname und die Firmenadresse
|
||||
angepasst werden.</strong></span> Dabei ist darauf zu achten, dass
|
||||
sich die Positionen der Postkonto-Nummern der Bank, sowie der
|
||||
Zeichenfolgen dddfr, DDDREF1, DDDREF2, 609, DDDKODIERZEILE nicht
|
||||
8a1f99fd | Jan Büren | verschieben.</p></li></ul></div><div class="screenshot"><div class="mediaobject"><img src="images/Einzahlungsschein_Makro.png"></div></div></div><div class="sect3" title="2.13.1.5. Auswahl der Druckvorlage in kivitendo beim Erzeugen einer odt-Rechnung (analog bei Auftrag)"><div class="titlepage"><div><div><h4 class="title"><a name="d0e2363"></a>2.13.1.5. Auswahl der Druckvorlage in kivitendo beim Erzeugen einer
|
||
0e14ae06 | Andreas Zenklusen | odt-Rechnung (analog bei Auftrag)</h4></div></div></div><p>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
|
||||
8a1f99fd | Jan Büren | wurde.</p></div><div class="sect3" title="2.13.1.6. Makroeinstellungen in LibreOffice anpassen"><div class="titlepage"><div><div><h4 class="title"><a name="d0e2368"></a>2.13.1.6. Makroeinstellungen in LibreOffice anpassen</h4></div></div></div><p>Falls beim Öffnen einer von kivitendo erzeugten odt-Rechnung
|
||
0e14ae06 | Andreas Zenklusen | die Meldung kommt, dass Makros aus Sicherheitsgründen nicht
|
||
ausgeführt werden, so müssen folgende Einstellungen in LibreOffice
|
||||
2e917eea | Andreas Rudin | angepasst werden:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Extras → Optionen → Sicherheit →
|
||
0e14ae06 | Andreas Zenklusen | Makrosicherheit</p></li><li class="listitem"><p>Sicherheitslevel auf "Mittel" einstellen (Diese
|
||
Einstellung muss auf jedem Computer durchgeführt werden, mit dem
|
||||
von kivitendo erzeugte odt-Rechnungen oder Aufträge geöffnet
|
||||
werden.)</p></li><li class="listitem"><p>Beim Öffnen einer odt-Rechnung oder eines odt-Auftrags bei
|
||||
der entsprechenden Nachfrage "Makros ausführen" auswählen.
|
||||
</p><p>
|
||||
<span class="bold"><strong>Wichtig</strong></span>: die Makros sind
|
||||
so eingestellt, dass sie beim Öffnen der Vorlagen selbst nicht
|
||||
ausgeführt werden. Das heisst für das Ansehen und Bearbeiten der
|
||||
Vorlagen sind keine speziellen Einstellungen in LibreOffice
|
||||
97da9779 | Andreas Rudin | nötig.</p></li></ul></div></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s12.html">Zurück</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Nach oben</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02s14.html">Weiter</a></td></tr><tr><td width="40%" align="left" valign="top">2.12. Drucken mit kivitendo </td><td width="20%" align="center"><a accesskey="h" href="index.html">Zum Anfang</a></td><td width="40%" align="right" valign="top"> 2.14. Nomenklatur</td></tr></table></div></body></html>
|