Revision e449cab2
Von Moritz Bunkus vor mehr als 8 Jahren hinzugefügt
doc/html/ch02s13.html | ||
---|---|---|
22 | 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> |
23 | 23 |
<code class="literal">xvfb</code> muss den Pfad zum “X virtual frame buffer” |
24 | 24 |
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
|
|
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 |
|
34 | 34 |
normalerweise der Python-Interpreter |
35 | 35 |
<code class="filename">/usr/bin/python</code> benutzt. |
36 | 36 |
Sollte dies nicht der richtige sein, so kann man mit zwei |
... | ... | |
40 | 40 |
festgelegt; sie steht standardmäßig auf dem eben erwähnten Wert |
41 | 41 |
<code class="literal">/usr/bin/python</code>.</p><p>Zusätzlich ist es möglich, Pfade anzugeben, in denen Python |
42 | 42 |
neben seinen normalen Suchpfaden ebenfalls nach Modulen gesucht wird, |
43 |
z.B. falls sich diese in einem gesonderten LibreOffice- bzw.
|
|
43 |
z.B. falls sich diese in einem gesonderten LibreOffice- bzw. |
|
44 | 44 |
OpenOffice-Verzeichnis befinden. Diese zweite Variable heißt |
45 | 45 |
<code class="literal">python_uno_path</code> und befindet sich im Abschnitt |
46 | 46 |
<code class="literal">environment</code>. Sie ist standardmäßig leer. Werden |
... | ... | |
48 | 48 |
voneinander getrennt werden. Der Inhalt wird an den Python-Interpreter |
49 | 49 |
über die Umgebungsvariable <code class="literal">PYTHONPATH</code> |
50 | 50 |
ü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
|
|
51 |
wird für jedes Dokument LibreOffice bzw. OpenOffice neu gestartet |
|
52 |
und die Konvertierung mit Hilfe eines Makros durchgeführt. Dieses |
|
53 | 53 |
Makro muss in der Dokumentenvorlage enthalten sein und |
54 | 54 |
“Standard.Conversion.ConvertSelfToPDF()” heißen. Die Beispielvorlage |
55 | 55 |
‘<code class="literal">templates/print/rev-odt/invoice.odt</code>’ |
56 | 56 |
enthält ein solches Makro, das in jeder anderen Dokumentenvorlage |
57 | 57 |
ebenfalls enthalten sein muss.</p><p>Als letztes muss herausgefunden werden, welchen Namen |
58 | 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
|
|
59 |
gibt. Unter Debian ist dies momentan |
|
60 |
<code class="literal">~/.config/libreoffice</code>. kivitendo verwendet das |
|
61 | 61 |
Verzeichnis <code class="literal">users/.openoffice.org2</code>. |
62 | 62 |
Eventuell muss dieses Verzeichnis umbenannt werden.</p><p>Dieses Verzeichnis, wie auch das komplette |
63 | 63 |
<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="d0e2161"></a>2.13.1. OpenDocument (odt) Druckvorlagen mit Makros</h3></div></div></div><p>OpenDocument Vorlagen können Makros enthalten, welche komplexere
|
|
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="d0e2158"></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 |
70 | 70 |
Beschreibung, wie die Makros aufgebaut sind, und was bei ihrer Nutzung |
71 | 71 |
zu beachten ist (<span class="bold"><strong>in fett sind nötige einmalige |
72 |
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="d0e2174"></a>2.13.1.1. Bezeichnung der Vorlagen</h4></div></div></div><p>Rechnung: invoice_besr.odt, Auftrag:
|
|
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="d0e2179"></a>2.13.1.2. Vorbereitungen im Adminbereich</h4></div></div></div><p>Damit beim Erstellen von Rechnungen und Aufträgen neben der
|
|
72 |
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="d0e2171"></a>2.13.1.1. Bezeichnung der Vorlagen</h4></div></div></div><p>Rechnung: invoice_besr.odt, Auftrag:
|
|
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="d0e2176"></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 | 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 |
... | ... | |
80 | 80 |
darf aber nicht leer sein)</p></li><li class="listitem"><p>Vorlagenkürzel → besr bzw. selbst gewähltes |
81 | 81 |
Vorlagensuffix (muss genau der Zeichenfolge entsprechen, die |
82 | 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="d0e2203"></a>2.13.1.3. Benutzereinstellungen</h4></div></div></div><p>Wer den Ausdruck mit Einzahlungsschein als Standardeinstellung
|
|
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="d0e2200"></a>2.13.1.3. Benutzereinstellungen</h4></div></div></div><p>Wer den Ausdruck mit Einzahlungsschein als Standardeinstellung
|
|
84 | 84 |
im Rechnungs- bzw. Auftragsformular angezeigt haben möchte, kann |
85 | 85 |
dies persönlich für sich bei den Benutzereinstellungen |
86 | 86 |
konfigurieren:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Programm → Benutzereinstellungen → |
87 | 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="d0e2227"></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
|
|
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="d0e2224"></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 | 89 |
aus dem von kivitendo erzeugten odt-Dokument die korrekte |
90 | 90 |
Referenznummer inklusive Prüfziffer sowie die Kodierzeile in |
91 | 91 |
OCRB-Schrift erzeugen und am richtigen Ort ins Dokument |
... | ... | |
114 | 114 |
angepasst werden.</strong></span> Dabei ist darauf zu achten, dass |
115 | 115 |
sich die Positionen der Postkonto-Nummern der Bank, sowie der |
116 | 116 |
Zeichenfolgen dddfr, DDDREF1, DDDREF2, 609, DDDKODIERZEILE nicht |
117 |
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="d0e2291"></a>2.13.1.5. Auswahl der Druckvorlage in kivitendo beim Erzeugen einer
|
|
117 |
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="d0e2288"></a>2.13.1.5. Auswahl der Druckvorlage in kivitendo beim Erzeugen einer
|
|
118 | 118 |
odt-Rechnung (analog bei Auftrag)</h4></div></div></div><p>Im Fussbereich der Rechnungsmaske muss neben Rechnung, |
119 | 119 |
OpenDocument/OASIS und Bildschirm die im Adminbereich erstellte |
120 | 120 |
Druckerbeschreibung ausgewählt werden, falls diese nicht bereits bei |
121 | 121 |
den Benutzereinstellungen als persönlicher Standard gewählt |
122 |
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="d0e2296"></a>2.13.1.6. Makroeinstellungen in LibreOffice anpassen</h4></div></div></div><p>Falls beim Öffnen einer von kivitendo erzeugten odt-Rechnung
|
|
122 |
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="d0e2293"></a>2.13.1.6. Makroeinstellungen in LibreOffice anpassen</h4></div></div></div><p>Falls beim Öffnen einer von kivitendo erzeugten odt-Rechnung
|
|
123 | 123 |
die Meldung kommt, dass Makros aus Sicherheitsgründen nicht |
124 | 124 |
ausgeführt werden, so müssen folgende Einstellungen in LibreOffice |
125 | 125 |
angepasst werden:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Extras → Optionen → Sicherheit → |
Auch abrufbar als: Unified diff
Dokumentation: HTML-Seiten und PDF neu gebaut