|
<html><head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
<title>2.10. Drucken mit kivitendo</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: Installation, Konfiguration, Entwicklung"><link rel="up" href="ch02.html" title="Kapitel 2. Installation und Grundkonfiguration"><link rel="prev" href="ch02s09.html" title="2.9. E-Mail-Versand aus kivitendo heraus"><link rel="next" href="ch02s11.html" title="2.11. OpenDocument-Vorlagen"></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.10. Drucken mit kivitendo</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s09.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="ch02s11.html">Weiter</a></td></tr></table><hr></div><div class="sect1" title="2.10. Drucken mit kivitendo"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="Drucken-mit-kivitendo"></a>2.10. Drucken mit kivitendo</h2></div></div></div><p>Das Drucksystem von kivitendo benutzt von Haus aus LaTeX Vorlagen.
|
|
Um drucken zu können, braucht der Server ein geeignetes LaTeX System. Am
|
|
einfachsten ist dazu eine <code class="literal">texlive</code> Installation. Unter
|
|
Debianoiden Betriebssystemen installiert man die Pakete mit:</p><p>
|
|
</p><pre class="programlisting">aptitude install \
|
|
texlive-base-bin \
|
|
texlive-latex-recommended \
|
|
texlive-fonts-recommended \
|
|
texlive-latex-extra \
|
|
texlive-lang-german \
|
|
texlive-generic-extra
|
|
</pre><p>
|
|
</p><p>TODO: rpm Pakete.</p><p>kivitendo bringt 3 alternative Vorlagensätze mit:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">Standard</li><li class="listitem">f-tex</li><li class="listitem">RB</li></ul></div><div class="sect2" title="2.10.1. Vorlagenverzeichnis anlegen"><div class="titlepage"><div><div><h3 class="title"><a name="Vorlagenverzeichnis-anlegen"></a>2.10.1. Vorlagenverzeichnis anlegen</h3></div></div></div><p>Bei einem neuen Benutzer/Mandanten lässt sich einer dieser Vorlagensätze
|
|
als Basis für die zu druckenden Dokumente auswählen:</p><p>
|
|
</p><pre class="programlisting">unter:
|
|
Administration -> Benutzerverwaltung -> [ein Benutzer]
|
|
Erzeuge Vorlagen, Name: [Name für das neue Vorlagenverzeichnis]
|
|
Vorlagen auswählen: [Default, f-tex oder RB]
|
|
-> Speichern
|
|
</pre><p>
|
|
</p><p>der gleiche Vorlagensatz kann, wenn er mal angelegt ist, bei mehreren Benutzern verwendet werden.</p><p>Die Abhängigkeiten kann man prüfen mit:</p><p>
|
|
</p><pre class="programlisting">/scripts/installation_check.pl -l</pre><p>
|
|
</p></div><div class="sect2" title="2.10.2. Default"><div class="titlepage"><div><div><h3 class="title"><a name="Standard"></a>2.10.2. Default</h3></div></div></div><p>Der standard Vorlagensatz von Kivitendo. Wie unter
|
|
<a class="ulink" href="http://demo.kivitendo.org" target="_top">http://demo.kivitendo.org</a> zu sehen.</p></div><div class="sect2" title="2.10.3. f-tex"><div class="titlepage"><div><div><h3 class="title"><a name="f-tex"></a>2.10.3. f-tex</h3></div></div></div><p>Ein Vorlagensatz, der in Wenigen Minuten alle Dokumente zur stellt.</p><div class="sect3" title="2.10.3.1. f-tex Feature Übersicht"><div class="titlepage"><div><div><h4 class="title"><a name="f-tex-Feature-%C3%9Cbersicht"></a>2.10.3.1. f-tex Feature Übersicht</h4></div></div></div><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">Keine Retundanz. Es wird ein und die selbe Latex-Vorlage für alle
|
|
briefartigen Dokumente verwendet. Also Angebot, Rechnung,
|
|
Performarechnung, Lieferschein, aber eben nicht für Paketaufkleber
|
|
etc.. </li><li class="listitem">Leichte Anpassung an das Firmen Layout durch verwendung eines Hintergrund-PDF
|
|
dieses kann leicht mit dem eigenen Lieblingsprogramm erstellt werden
|
|
(Openoffice, Inkscape, Gimp, Adobe*)
|
|
</li><li class="listitem">Hintergrundpdf um schaltbar auf "nur erste Seite" (default) oder "alle Seiten"
|
|
(option "bgPdfFirstPageOnly" in Datei letter.lco)
|
|
</li><li class="listitem">Hintergrundpdf für Ausdruck auf bereits bedrucktem Briefpapier Abschaltbar,
|
|
es wird dann nur bei per email versendeten Dokumenten eingebunden.
|
|
(Option "bgPdfEmailOnly" in Datei letter.lco)
|
|
</li><li class="listitem">Nutzung der Layout-Funktionen von Latex für Seitenumbruch,
|
|
wiederholung von Kopfzeilen, Zwischensummen etc. (danke an Kai-Martin für
|
|
die Vorarbeit)
|
|
</li><li class="listitem">Anzeige des Empfängerlandes im Adressfeld nur, wenn es vom Land des
|
|
eigenen Unternehmens abweicht (also die Rechnung das Land verlässt).
|
|
</li><li class="listitem">Multisprachfähig leicht um weitere Sprachen zu erweitern, alle
|
|
Übersetzungen in der Datei translatinos.tex.
|
|
</li><li class="listitem">Auflistung von Bruttopreisen für Endverbraucher.
|
|
</li></ul></div></div><div class="sect3" title="2.10.3.2. f-tex Die Installation"><div class="titlepage"><div><div><h4 class="title"><a name="f-tex-installation"></a>2.10.3.2. f-tex Die Installation</h4></div></div></div><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">Vorlagenverzeichnis mit Option f-tex anlegen, siehe:
|
|
<a class="xref" href="ch02s10.html#Vorlagenverzeichnis-anlegen" title="2.10.1. Vorlagenverzeichnis anlegen">Vorlagenverzeichnis anlegen</a>
|
|
Das Vorlagensystem funktioniert jetzt schon, hat allerdings noch einen
|
|
Beispiel Briefkopf
|
|
</li><li class="listitem">
|
|
Erstelle eine pdf-Hintergrund Datei und verlinke sie nach
|
|
<pre class="programlisting">./letter_head.pdf</pre></li><li class="listitem">
|
|
Editiere den Bereich "settings" in der datei letter.lco
|
|
</li></ul></div><p>oder etwas Detaillierter:</p><p>
|
|
Es wird eine Datei sample.lco erstellt und diese nach letter.lco verlinkt.
|
|
Eigentlich ist dies die Datei die für die Firmenspezifischen Anpassungen
|
|
gedacht ist. Da die Einstiegshürde in LaTeX nicht ganz niedrig ist, wird in
|
|
dieser Datei auf ein Hintergrundpdf verwiesen. Ich empfehle über dieses pdf
|
|
die persönlichen Layoutanpassungen vorzunehmen und sample.lco unverändert zu
|
|
lassen. Die die Anpassung über eine *.lco Datei die letztlich auf letter.lco
|
|
verlinkt ist ist aber auch möglich.
|
|
</p><p>
|
|
Es wird eine Datei sample_head.pdf mit ausgeliefert, diese wird nach
|
|
letter_head.pdf verlinkt. Damit gibt es schon mal eine Funktionsfähige
|
|
Vorlage. Schau Dir nach Abschluss der Installation die Datei sample_haed.pdf
|
|
an und erstelle ein entsprechendes pdf passend zum Briefkopf Deiner Firma,
|
|
diese dann im Template Verzeichniss ablegen und statt sample_head.pdf nach
|
|
letter_head.pdf verlinken.
|
|
</p><p>
|
|
letzlich muss ./letter_head.pdf auf das passende Hintergrundpdf verweisen,
|
|
welches gewünschten Briefkopf enthält. Bei Updates oder nach erneutem
|
|
</p><p>
|
|
Es wird eine Datei mydata.tex.example ausgeliefert die nach mytdata.tex
|
|
verlinkt ist. Bei verwendetem Hintergrundpdf wird nur der Eintrag für das
|
|
Land verwendet die Datei muss also nicht angefasst werden. Die Anderen Werte
|
|
sind für das Modul lp (Label Print in erp - zur Zeit nicht im
|
|
öffentlichen Zweig).
|
|
</p><p>
|
|
Alle Anpassungen zum Briefkopf, Fusszeilen, Firmenlogos, etc.
|
|
sollten über die Hintergrund pdf datei oder die *.lco Datei erfolgen.
|
|
</p></div><div class="sect3" title="2.10.3.3. f-tex Funktionsübersicht"><div class="titlepage"><div><div><h4 class="title"><a name="f-tex-Funktions%C3%BCbersicht"></a>2.10.3.3. f-tex Funktionsübersicht</h4></div></div></div><p>
|
|
Das Konzept von kivitendo sieht vor, für jedes Dokument
|
|
(Auftragsbestätigung, Lieferschein, Rechnung, etc.) eine
|
|
Latex-Vorlage vorzuhalten, dies ist sehr Wartungsunfreundlich. Auch
|
|
das Einlesen einer einheitlichen Quelle für den Briefkopf bringt nur
|
|
bedingte Vorteile, da hier leicht die Pflege der Artikel-Tabellen aus
|
|
dem Ruder läuft. Bei dem vorliegenden Ansatz wird für alle
|
|
Briefartigen Dokumente mit Artikel-Tabellen eine einheitliche
|
|
Latexvorlage verwendet, welche über Codeweichen die Besonderheiten
|
|
der jeweiligen Dokumente Berücksichtigt
|
|
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">Tabellen mit oder ohne Preis
|
|
</li><li class="listitem">Sprache der Tabellenüberschriften etc.
|
|
</li><li class="listitem">Anpassung der Bezugs-Zeile (z.B. Rechnungsnummer versus
|
|
Angebotsnummer)
|
|
</li><li class="listitem">Darstellung von Brutto oder Netto-Preisen in der Auflistung
|
|
(Endverbraucher versus Gewerblicher Kunde)
|
|
</li></ul></div><p>Nachteil:</p><p>
|
|
Latex hat ohnehin eine sehr steile Lehrnkurve. Die Datei letter.tex
|
|
ist sehr komplex und verstärkt damit diesen Effekt noch einmal erheblich.
|
|
Wer Latex-Erfahrung hat, oder geübt ist Scriptsparachen nachzuvollziehen kann
|
|
natürlich auch innerhalb der Tabellendarstellung gut persönliche Anpassungen
|
|
vornehmen. Aber man kann sich hier bei Veränderungen sehr schnell häftig in
|
|
den Fuss schiessen.
|
|
</p><p>Wer nicht so tief in die Materie einsteigen will oder leicht zu
|
|
frustrieren ist, sollte sein Hintergrund PDF auf Basis der mitglieferten
|
|
Datei sample_head.pdf erstellen, und sich an der Form der dargestellten Tabellen
|
|
wie sie ausgeliefert werden, erfreuen.
|
|
</p><p>Kleiner Tipp:
|
|
Nicht zu viel auf einmal wollen, lieber kleine kontinuierliche
|
|
Schritte gehen.
|
|
</p><p>Bruttopreise für Endvorbraucher</p><p>Der auszuweisende Bruttopreis wird innerhalb der LaTeX
|
|
Umgebung berechnet. es gibt zwar ein Feld um bei Aufträgen "alle Preise
|
|
Brutto" auszuwählen, aber:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
|
hierfür müssen die Preise auch in Brutto in der Datenbank stehen
|
|
(ja - das lässt sich über die Preisgruppen und die Zuordung einer Default-Preisgruppe
|
|
handhaben)
|
|
</li><li class="listitem">
|
|
man darf beim Anlegen des Vorgangs nicht vergessen Dieses Häkchen zu setzen.
|
|
(das ist in der Praxis wenn man sowohl Endverbraucher- wie Gewerbekunden beliefert
|
|
der eigentliche Knackpunkt)
|
|
</li></ul></div><p>
|
|
Es gibt mit f-tex eine weitere Alternative. Die Information ob Brutto oder
|
|
Nettorechnung wird mit den Zahlarten verknüpft. Zahlarten bei denen
|
|
Rechnungen, Angebote, etc, in Brutto ausgegeben werden sollen enden mit "_E"
|
|
(für Endverbraucher) Falls identische Zahlarten für Gewerbekunden und
|
|
Endverbraucher vorhanden sind legt man diese einfach doppelt an (einmal mit
|
|
der Namensendung "_E"). Gewinn:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
|
die Entscheidung ob Netopreise ausgewiesen werden ist nicht mehr fix
|
|
mit einer Preisliste Verbunden.
|
|
</li><li class="listitem">
|
|
die Default-Zahlart kann im Kundendatensatz hinterlegt werden und man
|
|
muss nicht mehr daran denken "alle Preise Netto" auszuwählen.
|
|
</li><li class="listitem">
|
|
Die Entscheidung ob Netto/Oder Bruttopreise ausgewiesen werden kann direkt
|
|
beim Drucken reviediert werden, ohne dass sich der Auftragswert ändert.
|
|
</li></ul></div><p>Lieferadressen</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
|
|
in Lieferscheinen kommen shipto* -Variablen im Adressfeld zum Einsatz
|
|
</li><li class="listitem">
|
|
wenn die shipto*variable leer ist wird die entsprechende
|
|
Adressvariable eingesetzt. Wenn Also die Lieferadresse in Strasse,
|
|
Hausnummer und Ort abweicht, müssen auch nur diese Felder in der
|
|
Lieferadresse ausgefüllt werden. Für den Firmenname wird der Wert der
|
|
Hauptadresse angezeigt.
|
|
</li></ul></div></div></div><div class="sect2" title="2.10.4. RB"><div class="titlepage"><div><div><h3 class="title"><a name="RB"></a>2.10.4. RB</h3></div></div></div><p>Vollständiger Dokumentensatz mit alternativen Design</p></div><div class="sect2" title="2.10.5. Allgemeine Hinweise zu LaTeX Vorlagen"><div class="titlepage"><div><div><h3 class="title"><a name="Allgemeine Hinweise zu LaTeX"></a>2.10.5. Allgemeine Hinweise zu LaTeX Vorlagen</h3></div></div></div><p>In den allermeisten Installationen sollte drucken jetzt schon
|
|
funktionieren. Sollte ein Fehler auftreten wirft TeX sehr lange
|
|
Fehlerbeschreibungen, der eigentliche Fehler ist immer die erste Zeite
|
|
die mit einem Ausrufezeichen anfängt. Häufig auftretende Fehler sind zum
|
|
Beispiel:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>! LaTeX Error: File `eurosym.sty' not found. Die entsprechende
|
|
LaTeX-Bibliothek wurde nicht gefunden. Das tritt vor allem bei
|
|
Vorlagen aus der Community auf. Installieren Sie die entsprechenden
|
|
Pakete.</p></li><li class="listitem"><p>! Package inputenc Error: Unicode char \u8:æ¡ not set up for
|
|
use with LaTeX. Dieser Fehler tritt auf, wenn sie versuchen mit
|
|
einer Standardinstallation exotische utf8 Zeichen zu drucken.
|
|
TeXLive unterstützt von Haus nur romanische Schriften und muss mit
|
|
diversen Tricks dazu gebracht werden andere Zeichen zu akzeptieren.
|
|
Adere TeX Systeme wie XeTeX schaffen hier Abhilfe.</p></li></ul></div><p>Wird garkein Fehler angezeigt sondern nur der Name des Templates,
|
|
heißt das normalerweise, dass das LaTeX Binary nicht gefunden wurde.
|
|
Prüfen Sie den Namen in der Konfiguration (Standard:
|
|
<code class="literal">pdflatex</code>), und stellen Sie sicher, dass pdflatex
|
|
(oder das von Ihnen verwendete System) vom Webserver ausgeführt werden
|
|
darf.</p><p>Wenn sich das Problem nicht auf Grund der ausgabe im Webbrowser verifizieren lässt:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p> editiere [kivitendo-home]/config/kivitendo.conf und ändere "keep_tmp_files" auf 1</p><p>
|
|
</p><pre class="programlisting">keep_temp_files = 1;</pre><p>
|
|
</p></li><li class="listitem"><p>bei fastcgi oder mod_perl den Webserver neu Starten</p></li><li class="listitem"><p>Nochmal einen Druckversuch im Webfrontend auslösen</p></li><li class="listitem"><p>wechsele in das users Verzeichnis von kivitendo</p><p>
|
|
</p><pre class="programlisting">cd [kivitendo-home]/users</pre><p>
|
|
</p></li><li class="listitem"><p>LaTeX Suchpfad anpassen:</p><p>
|
|
</p><pre class="programlisting">export TEXINPUTS=".:[kivitendo-home]/templates/[aktuelles_template_verzeichniss]:"</pre><p>
|
|
</p></li><li class="listitem"><p>Finde herraus welche Datei kivitendo beim letzten Durchlauf erstellt hat</p><p>
|
|
</p><pre class="programlisting">ls -lahtr ./1*.tex</pre><p>
|
|
</p><p>Es sollte die letzte Datei ganz unten sein</p></li><li class="listitem"><p>für besseren Hinweis auf Fehler texdatei nochmals übersetzen</p><p>
|
|
</p><pre class="programlisting">pdflatex ./1*.tex</pre><p>
|
|
</p><p>in der *.tex datei nach dem Fehler suchen.</p></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s09.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="ch02s11.html">Weiter</a></td></tr><tr><td width="40%" align="left" valign="top">2.9. E-Mail-Versand aus kivitendo heraus </td><td width="20%" align="center"><a accesskey="h" href="index.html">Zum Anfang</a></td><td width="40%" align="right" valign="top"> 2.11. OpenDocument-Vorlagen</td></tr></table></div></body></html>
|