Projekt

Allgemein

Profil

Herunterladen (16 KB) Statistiken
| Zweig: | Markierung: | Revision:
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>&nbsp;</td><th width="60%" align="center">Kapitel 2. Installation und Grundkonfiguration</th><td width="20%" align="right">&nbsp;<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: &lt;%customernumber%&gt;
(Kundennummer: nur Ziffern, maximal 6)</p></li><li class="listitem"><p>dritter Wert: &lt;%ordnumber%&gt;
(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: &lt;%invnumber%&gt;
(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: &lt;%total%&gt; 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>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Nach oben</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="ch02s14.html">Weiter</a></td></tr><tr><td width="40%" align="left" valign="top">2.12. Drucken mit kivitendo&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Zum Anfang</a></td><td width="40%" align="right" valign="top">&nbsp;2.14. Nomenklatur</td></tr></table></div></body></html>