Revision 8477e06f
Von Werner Hahn vor mehr als 7 Jahren hinzugefügt
doc/html/ch02s13.html | ||
---|---|---|
1 | 1 |
<html><head> |
2 | 2 |
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
3 | 3 |
<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 |
4 |
OpenDocument-Format, wie es LibreOffice oder OpenOffice (ab Version 2) erzeugen.
|
|
5 |
kivitendo kann dabei sowohl neue OpenDocument-Dokumente als auch aus
|
|
6 |
diesen direkt PDF-Dateien erzeugen. Um die Unterstützung von |
|
4 |
OpenDocument-Format, wie es LibreOffice oder OpenOffice (ab Version 2) |
|
5 |
erzeugen. kivitendo kann dabei sowohl neue OpenDocument-Dokumente als
|
|
6 |
auch aus diesen direkt PDF-Dateien erzeugen. Um die Unterstützung von
|
|
7 | 7 |
OpenDocument-Vorlagen zu aktivieren muss in der Datei |
8 | 8 |
<code class="filename">config/kivitendo.conf</code> die Variable |
9 | 9 |
<code class="literal">opendocument</code> im Abschnitt |
10 | 10 |
<code class="literal">print_templates</code> auf ‘<code class="literal">1</code>’ stehen. |
11 | 11 |
Dieses ist die Standardeinstellung.</p><p>Während die Erzeugung von reinen OpenDocument-Dateien keinerlei |
12 | 12 |
weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF |
13 |
LibreOffice oder OpenOffice benötigt. Soll dieses Feature genutzt werden, so muss |
|
14 |
neben LibreOffice oder OpenOffice auch der “X virtual frame buffer” |
|
15 |
(xvfb) installiert werden. Bei Debian ist er im Paket “xvfb” enthalten. |
|
16 |
Andere Distributionen enthalten ihn in anderen Paketen.</p><p>Nach der Installation müssen in der Datei |
|
13 |
LibreOffice oder OpenOffice benötigt. Soll dieses Feature genutzt |
|
14 |
werden, so muss neben LibreOffice oder OpenOffice auch der “X virtual |
|
15 |
frame buffer” (xvfb) installiert werden. Bei Debian ist er im Paket |
|
16 |
“xvfb” enthalten. Andere Distributionen enthalten ihn in anderen |
|
17 |
Paketen.</p><p>Nach der Installation müssen in der Datei |
|
17 | 18 |
<code class="filename">config/kivitendo.conf</code> im Abschnitt |
18 |
<code class="literal">applications</code> zwei weitere Variablen |
|
19 |
angepasst werden:</p><p>
|
|
20 |
<code class="literal">openofficeorg_writer</code> muss den |
|
21 |
vollständigen Pfad zu LibreOffice oder OpenOffice enthalten.
|
|
22 |
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>
|
|
19 |
<code class="literal">applications</code> zwei weitere Variablen angepasst
|
|
20 |
werden:</p><p> |
|
21 |
<code class="literal">openofficeorg_writer</code> muss den vollständigen
|
|
22 |
Pfad zu LibreOffice oder OpenOffice enthalten. Dabei dürfen keine
|
|
23 |
Anführungszeichen eingesetzt werden.</p><p>Beispiel für Debian oder Ubuntu:</p><pre class="programlisting">openofficeorg_writer = /usr/bin/libreoffice</pre><p> |
|
23 | 24 |
<code class="literal">xvfb</code> muss den Pfad zum “X virtual frame buffer” |
24 | 25 |
enthalten.</p><p>Zusätzlich gibt es zwei verschiedene Arten, wie kivitendo mit |
25 |
LibreOffice bzw. OpenOffice kommuniziert. Die erste Variante, die benutzt
|
|
26 |
wird, wenn die Variable <code class="literal">$openofficeorg_daemon</code> gesetzt
|
|
27 |
ist, startet ein LibreOffice oder OpenOffice, das auch nach der Umwandlung
|
|
28 |
des Dokumentes gestartet bleibt. Bei weiteren Umwandlungen wird dann diese
|
|
29 |
laufende Instanz benutzt. Der Vorteil ist, dass die Zeit zur Umwandlung
|
|
30 |
deutlich reduziert wird, weil nicht für jedes Dokument ein LibreOffice bzw.
|
|
31 |
OpenOffice gestartet werden muss. Der Nachteil ist, dass diese Methode
|
|
32 |
Python und die Python-UNO-Bindings benötigt, die Bestandteil von LibreOffice
|
|
33 |
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 |
|
26 |
LibreOffice bzw. OpenOffice kommuniziert. Die erste Variante, die |
|
27 |
benutzt wird, wenn die Variable <code class="literal">$openofficeorg_daemon</code>
|
|
28 |
gesetzt ist, startet ein LibreOffice oder OpenOffice, das auch nach der
|
|
29 |
Umwandlung des Dokumentes gestartet bleibt. Bei weiteren Umwandlungen
|
|
30 |
wird dann diese laufende Instanz benutzt. Der Vorteil ist, dass die Zeit
|
|
31 |
zur Umwandlung deutlich reduziert wird, weil nicht für jedes Dokument
|
|
32 |
ein LibreOffice bzw. OpenOffice gestartet werden muss. Der Nachteil ist,
|
|
33 |
dass diese Methode Python und die Python-UNO-Bindings benötigt, die
|
|
34 |
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
|
|
34 | 35 |
normalerweise der Python-Interpreter |
35 |
<code class="filename">/usr/bin/python</code> benutzt. |
|
36 |
Sollte dies nicht der richtige sein, so kann man mit zwei
|
|
37 |
Konfigurationsvariablen entscheiden, welcher Python-Interpreter
|
|
38 |
genutzt wird. Mit der Option <code class="literal">python_uno</code> aus dem
|
|
39 |
Abschnitt <code class="literal">applications</code> wird der Interpreter selber
|
|
36 |
<code class="filename">/usr/bin/python</code> benutzt. Sollte dies nicht der
|
|
37 |
richtige sein, so kann man mit zwei Konfigurationsvariablen
|
|
38 |
entscheiden, welcher Python-Interpreter genutzt wird. Mit der Option
|
|
39 |
<code class="literal">python_uno</code> aus dem Abschnitt
|
|
40 |
<code class="literal">applications</code> wird der Interpreter selber |
|
40 | 41 |
festgelegt; sie steht standardmäßig auf dem eben erwähnten Wert |
41 | 42 |
<code class="literal">/usr/bin/python</code>.</p><p>Zusätzlich ist es möglich, Pfade anzugeben, in denen Python |
42 | 43 |
neben seinen normalen Suchpfaden ebenfalls nach Modulen gesucht wird, |
... | ... | |
48 | 49 |
voneinander getrennt werden. Der Inhalt wird an den Python-Interpreter |
49 | 50 |
über die Umgebungsvariable <code class="literal">PYTHONPATH</code> |
50 | 51 |
übergeben.</p></td></tr></table></div><p>Ist <code class="literal">$openofficeorg_daemon</code> nicht gesetzt, so |
51 |
wird für jedes Dokument LibreOffice bzw. OpenOffice neu gestartet |
|
52 |
und die Konvertierung mit Hilfe eines Makros durchgeführt. Dieses
|
|
53 |
Makro muss in der Dokumentenvorlage enthalten sein und
|
|
52 |
wird für jedes Dokument LibreOffice bzw. OpenOffice neu gestartet und
|
|
53 |
die Konvertierung mit Hilfe eines Makros durchgeführt. Dieses Makro muss
|
|
54 |
in der Dokumentenvorlage enthalten sein und |
|
54 | 55 |
“Standard.Conversion.ConvertSelfToPDF()” heißen. Die Beispielvorlage |
55 |
‘<code class="literal">templates/print/rev-odt/invoice.odt</code>’ |
|
56 |
enthält ein solches Makro, das in jeder anderen Dokumentenvorlage
|
|
57 |
ebenfalls enthalten sein muss.</p><p>Als letztes muss herausgefunden werden, welchen Namen
|
|
58 |
OpenOffice bzw. LibreOffice dem Verzeichnis mit den Benutzereinstellungen
|
|
59 |
gibt. Unter Debian ist dies momentan
|
|
60 |
<code class="literal">~/.config/libreoffice</code>. kivitendo verwendet das
|
|
61 |
Verzeichnis <code class="literal">users/.openoffice.org2</code>.
|
|
62 |
Eventuell muss dieses Verzeichnis umbenannt werden.</p><p>Dieses Verzeichnis, wie auch das komplette
|
|
56 |
‘<code class="literal">templates/print/rev-odt/invoice.odt</code>’ enthält ein
|
|
57 |
solches Makro, das in jeder anderen Dokumentenvorlage ebenfalls
|
|
58 |
enthalten sein muss.</p><p>Als letztes muss herausgefunden werden, welchen Namen OpenOffice
|
|
59 |
bzw. LibreOffice dem Verzeichnis mit den Benutzereinstellungen gibt.
|
|
60 |
Unter Debian ist dies momentan <code class="literal">~/.config/libreoffice</code>.
|
|
61 |
kivitendo verwendet das Verzeichnis
|
|
62 |
<code class="literal">users/.openoffice.org2</code>. Eventuell muss dieses
|
|
63 |
Verzeichnis umbenannt werden.</p><p>Dieses Verzeichnis, wie auch das komplette |
|
63 | 64 |
<code class="literal">users</code>-Verzeichnis, muss vom Webserver beschreibbar |
64 |
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 |
|
65 |
erneut überprüft werden, wenn die Konvertierung nach PDF |
|
66 |
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 |
|
65 |
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 |
|
66 |
überprüft werden, wenn die Konvertierung nach PDF 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 |
|
67 | 67 |
Aufgaben erfüllen.</p><p>Der Vorlagensatz "rev-odt" enthält solche Vorlagen mit <span class="bold"><strong>Schweizer Bank-Einzahlungsscheinen (BESR)</strong></span>. |
68 | 68 |
Diese Makros haben die Aufgabe, die in den Einzahlungsscheinen |
69 | 69 |
benötigte Referenznummer und Kodierzeile zu erzeugen. Hier eine kurze |
... | ... | |
73 | 73 |
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 |
74 | 74 |
Standardvorlage ohne Einzahlungsschein weitere Vorlagen (z.B. mit |
75 | 75 |
Einzahlungsschein) auswählbar sind, muss für jedes Vorlagen-Suffix |
76 |
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 |
|
77 |
der Auftrags- bzw. Rechnungsmaske als Auswahl angezeigt (z.B. |
|
78 |
mit Einzahlungsschein Bank xy)</p></li><li class="listitem"><p>Druckbefehl → beliebiger Text (hat für das Erzeugen |
|
79 |
von Aufträgen oder Rechnungen als odt-Datei keine Bedeutung, |
|
80 |
darf aber nicht leer sein)</p></li><li class="listitem"><p>Vorlagenkürzel → besr bzw. selbst gewähltes |
|
81 |
Vorlagensuffix (muss genau der Zeichenfolge entsprechen, die |
|
82 |
zwischen "invoice_" bzw. "sales_order_" und ".odt" |
|
83 |
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 |
|
76 |
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 der |
|
77 |
Auftrags- bzw. Rechnungsmaske als Auswahl angezeigt (z.B. mit |
|
78 |
Einzahlungsschein Bank xy)</p></li><li class="listitem"><p>Druckbefehl → beliebiger Text (hat für das Erzeugen von |
|
79 |
Aufträgen oder Rechnungen als odt-Datei keine Bedeutung, darf |
|
80 |
aber nicht leer sein)</p></li><li class="listitem"><p>Vorlagenkürzel → besr bzw. selbst gewähltes Vorlagensuffix |
|
81 |
(muss genau der Zeichenfolge entsprechen, die zwischen |
|
82 |
"invoice_" bzw. "sales_order_" und ".odt" 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 |
|
84 | 83 |
im Rechnungs- bzw. Auftragsformular angezeigt haben möchte, kann |
85 | 84 |
dies persönlich für sich bei den Benutzereinstellungen |
86 |
konfigurieren:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Programm → Benutzereinstellungen → |
|
87 |
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 |
|
88 |
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 |
|
85 |
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 auswählen |
|
86 |
(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 |
|
89 | 87 |
aus dem von kivitendo erzeugten odt-Dokument die korrekte |
90 | 88 |
Referenznummer inklusive Prüfziffer sowie die Kodierzeile in |
91 | 89 |
OCRB-Schrift erzeugen und am richtigen Ort ins Dokument |
... | ... | |
122 | 120 |
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 |
123 | 121 |
die Meldung kommt, dass Makros aus Sicherheitsgründen nicht |
124 | 122 |
ausgeführt werden, so müssen folgende Einstellungen in LibreOffice |
125 |
angepasst werden:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Extras → Optionen → Sicherheit → |
|
126 |
Makrosicherheit</p></li><li class="listitem"><p>Sicherheitslevel auf "Mittel" einstellen (Diese |
|
123 |
angepasst werden:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Extras → Optionen → Sicherheit → Makrosicherheit</p></li><li class="listitem"><p>Sicherheitslevel auf "Mittel" einstellen (Diese |
|
127 | 124 |
Einstellung muss auf jedem Computer durchgeführt werden, mit dem |
128 | 125 |
von kivitendo erzeugte odt-Rechnungen oder Aufträge geöffnet |
129 | 126 |
werden.)</p></li><li class="listitem"><p>Beim Öffnen einer odt-Rechnung oder eines odt-Auftrags bei |
130 |
der entsprechenden Nachfrage "Makros ausführen" auswählen.
|
|
131 |
</p><p> |
|
127 |
der entsprechenden Nachfrage "Makros ausführen" |
|
128 |
auswählen.</p><p>
|
|
132 | 129 |
<span class="bold"><strong>Wichtig</strong></span>: die Makros sind |
133 | 130 |
so eingestellt, dass sie beim Öffnen der Vorlagen selbst nicht |
134 | 131 |
ausgeführt werden. Das heisst für das Ansehen und Bearbeiten der |
Auch abrufbar als: Unified diff
Shopmodul: Entwickler/Anwenderdokumentation