X-Git-Url: http://wagnertech.de/git?p=kivitendo-erp.git;a=blobdiff_plain;f=doc%2Fhtml%2Fch02s12.html;fp=doc%2Fhtml%2Fch02s12.html;h=8c7835fa648990e10c8079624a6f9b68bb479e2b;hp=21e599883c0ded190484aabf4ec554fb867de9ef;hb=53593baa211863fbf66540cf1bcc36c8fb37257f;hpb=deb4d2dbb676d7d6f69dfe7815d6e0cb09bd4a44 diff --git a/doc/html/ch02s12.html b/doc/html/ch02s12.html index 21e599883..8c7835fa6 100644 --- a/doc/html/ch02s12.html +++ b/doc/html/ch02s12.html @@ -1,135 +1,108 @@ - 2.12. Drucken mit kivitendo

2.12. Drucken mit kivitendo

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 texlive Installation. Unter debianoiden Betriebssystemen installiert man - die Pakete mit:

-

aptitude install texlive-base-bin texlive-latex-recommended texlive-fonts-recommended \
-  texlive-latex-extra texlive-lang-german texlive-generic-extra

-

TODO: RPM-Pakete.

kivitendo bringt drei alternative Vorlagensätze mit:

Der ehemalige Druckvorlagensatz "Standard" wurde mit der Version 3.3 entfernt, da er nicht mehr gepflegt wurde.

2.12.1. Vorlagenverzeichnis anlegen

Es lässt sich ein initialer Vorlagensatz erstellen. Die LaTeX-System-Abhängigkeiten hierfür kann man prüfen mit:

./scripts/installation_check.pl -lv

Der Angemeldete Benutzer muss in einer Gruppe sein, die über das - Recht "Konfiguration -> Mandantenverwaltung" verfügt. Siehe auch Abschnitt 2.9.4, „Gruppen anlegen“. -

Im Userbereich lässt sich unter: - "System -> - Mandantenverwaltung -> Verschiedenes" die Option - "Neue Druckvorlagen aus Vorlagensatz erstellen" auswählen.

  1. - Vorlagen auswählen: Wählen Sie hier den Vorlagensatz aus, der kopiert werden soll - (RB, f-tex oder odt-rev.)

  2. - Neuer Name: Der Verzeichnisname für den neuen Vorlagensatz. Dieser kann im Rahmen der üblichen - Bedingungen für Verzeichnisnamen frei gewählt werden.

Nach dem Speichern wird das Vorlagenverzeichnis angelegt und ist für den aktuellen Mandanten ausgewählt. - Der gleiche Vorlagensatz kann, wenn er mal angelegt ist, bei mehreren Mandanten verwendet werden. - Eventuell müssen Anpassungen (Logo, Erscheinungsbild, etc) noch vorgenommen werden. Den Ordner findet man im Dateisystem unter - ./templates/[Neuer Name] -

2.12.2. Der Druckvorlagensatz RB

Hierbei handelt es sich um einen vollständigen LaTeX Dokumentensatz mit alternativem Design. Die odt oder html-Varianten sind nicht gepflegt.

Die konzeptionelle Idee der Vorlagen wird hier - auf Folie 5 bis 10 vorgestellt. Informationen zur Anpassung an die eigenen Firmendaten finden sich in der Datei Readme.tex im Vorlagenverzeichnis.

Eine kurze Übersicht der Features:

  • Mehrsprachenfähig, mit Deutscher und Englischer Übersetzung

  • Zentrale Konfigurationsdateien, die für alle Belege benutzt werden, z.B. für Kopf- und Fußzeilen, und Infos wie Bankdaten

  • mehrere vordefinierte Varianten für Logos/Hintergrundbilder

  • Berücksichtigung für Steuerzonen "EU mit USt-ID Nummer" oder "Außerhalb EU"

2.12.3. f-tex

Ein Vorlagensatz, der in wenigen Minuten alle Dokumente zur Verfügung stellt.

2.12.3.1. Feature-Übersicht

  • Keine Redundanz. Es wird ein- und dieselbe LaTeX-Vorlage für alle briefartigen Dokumente verwendet. Also - Angebot, Rechnung, Proformarechnung, Lieferschein, aber eben nicht für Paketaufkleber etc.

  • Leichte Anpassung an das Firmen-Layout durch Verwendung eines Hintergrund-PDFs. Dieses kann leicht mit dem - eigenen Lieblingsprogramm erstellt werden (Openoffice, Inkscape, Gimp, Adobe*)

  • Hintergrund-PDF umschaltbar auf "nur erste Seite" (Standard) oder "alle Seiten" (Option - "bgPdfFirstPageOnly" in Datei letter.lco)

  • Hintergrund-PDF für Ausdruck auf bereits bedrucktem Briefpapier abschaltbar. Es wird dann nur bei per E-Mail - versendeten Dokumenten eingebunden (Option "bgPdfEmailOnly" in Datei - letter.lco).

  • Nutzung der Layout-Funktionen von LaTeX für Seitenumbruch, Wiederholung von Kopfzeilen, Zwischensummen - etc. (danke an Kai-Martin Knaak für die Vorarbeit)

  • Anzeige des Empfängerlandes im Adressfeld nur, wenn es vom Land des eigenen Unternehmens abweicht (also die - Rechnung das Land verlässt).

  • Multisprachfähig leicht um weitere Sprachen zu erweitern, alle Übersetzungen in der Datei - translatinos.tex.

  • Auflistung von Bruttopreisen für Endverbraucher.

2.12.3.2. Die Installation

  • Vorlagenverzeichnis mit Option f-tex anlegen, siehe: Vorlagenverzeichnis anlegen. Das - Vorlagensystem funktioniert jetzt schon, hat allerdings noch einen Beispiel-Briefkopf.

  • Erstelle eine pdf-Hintergrund Datei und verlinke sie nach ./letter_head.pdf.

  • Editiere den Bereich "settings" in der datei letter.lco.

oder etwas detaillierter:

- 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 Hintergrund-PDF verwiesen. Ich empfehle über dieses PDF die persönlichen Layoutanpassungen - vorzunehmen und sample.lco unverändert zu lassen. Die Anpassung über eine - *.lco-Datei, die letztlich auf letter.lco verlinkt ist ist aber auch möglich. -

- 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_head.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. -

- Letzlich muss letter_head.pdf auf das passende Hintergrund-PDF verweisen, welches gewünschten Briefkopf - enthält. -

- Es wird eine Datei mydata.tex.example ausgeliefert, die nach mytdata.tex verlinkt - ist. Bei verwendetem Hintergrund-PDF 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). -

- Alle Anpassungen zum Briefkopf, Fusszeilen, Firmenlogos, etc. sollten über die Hintergrund-PDF-Datei oder die - *.lco-Datei erfolgen. -

2.12.3.3. f-tex Funktionsübersicht

- 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 LaTeX-Vorlage verwendet, welche über Codeweichen die - Besonderheiten der jeweiligen Dokumente berücksichtigt: -

  • Tabellen mit oder ohne Preis

  • Sprache der Tabellenüberschriften etc.

  • Anpassung der Bezugs-Zeile (z.B. Rechnungsnummer versus Angebotsnummer)

  • Darstellung von Brutto oder Netto-Preisen in der Auflistung (Endverbraucher versus gewerblicher - Kunde)

Nachteil:

- 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 heftig in den Fuss schiessen. -

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. -

Kleiner Tipp: Nicht zu viel auf einmal wollen, lieber kleine, kontinuierliche Schritte gehen.

2.12.3.4. Bruttopreise für Endverbraucher

Der auszuweisende Bruttopreis wird innerhalb der LaTeX-Umgebung berechnet. Es gibt zwar ein Feld, um bei Aufträgen "alle - Preise Brutto" auszuwählen, aber:

  • 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)

  • man darf beim Anlegen des Vorgangs nicht vergessen, dieses Häkchen zu setzen. (Das ist in der Praxis, wenn man sowohl - Endverbraucher als auch Gewerbekunden beliefert, der eigentliche Knackpunkt)

- 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:

  • Die Entscheidung, ob Nettopreise ausgewiesen werden, ist nicht mehr fix mit einer Preisliste verbunden.

  • Die Default-Zahlart kann im Kundendatensatz hinterlegt werden, und man muss nicht mehr daran denken, "alle Preise - Netto" auszuwählen.

  • Die Entscheidung, ob Netto- oder Bruttopreise ausgewiesen werden, kann direkt beim Drucken revidiert werden, - ohne dass sich der Auftragswert ändert.

2.12.3.5. Lieferadressen

In Lieferscheinen kommen shipto*-Variablen im Adressfeld zum Einsatz. Wenn die - shipto*-Variable leer ist, wird die entsprechende Adressvariable eingesetzt. Wenn also die Lieferadresse in - Straße, 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. -

2.12.4. Der Druckvorlagensatz rev-odt

Hierbei handelt es sich um einen Dokumentensatz der mit odt-Vorlagen erstellt wurde. Es gibt in dem Verzeichnis eine Readme-Datei, die eventuell aktueller als die Dokumentation hier ist. -Die odt-Vorlagen in diesem Verzeichnis "rev-odt" wurden von revamp-it, Zürich erstellt -und werden laufend aktualisiert. Ein paar der Formulierungen in den Druckvorlagen entsprechen dem Schweizer Sprachgebrauch, z.B. "Offerte" oder "allfällig". -

-Hinweis zum Einsatz des Feldes "Land" bei den Stammdaten für KundInnen und LieferantInnen, -sowie bei Lieferadressen: -Die in diesem Vorlagensatz vorhandenen Vorlagen erwarten für "Land" das entsprechende -Kürzel, das in Adressen vor die Postleitzahl gesetzt wird. -Das Feld kann auch komplett leer bleiben. -Wer dies anders handhaben möchte, muss die Vorlagen entsprechend anpassen. -

-odt-Vorlagen können mit LibreOffice oder OpenOffice editiert -und den eigenen Bedürfnissen angepasst werden. -Wichtig beim Editieren von if-Blöcken ist, dass immer der gesamte Block -überschrieben werden muss und nicht nur Teile davon, da dies sonst oft -zu einer odt-Datei führt, die vom Parser nicht korrekt gelesen werden kann. -

-Zur Zeit gibt es in kivitendo noch keine Möglichkeit, odt-Vorlagen bei Mahnungen -einzusetzen. Entsprechende Vorlagen sind deshalb nicht vorhanden. -

-Inwieweit es möglich ist, für die in Version 3.2.0 neu eingeführten Pflichtenhefte -odt-Vorlagen zu erstellen, sind wir am abklären. -Wenn dies möglich ist, werden wir in Zukunft auch eine odt-Vorlage für Pflichtenhefte -in diesem Vorlagensatz zur Verfügung stellen. -

-Fehlermeldungen, Anregungen und Wünsche bitte senden an: -empfang@revamp-it.ch -

2.12.5. Allgemeine Hinweise zu LaTeX Vorlagen

In den allermeisten Installationen sollte das Drucken jetzt schon - funktionieren. Sollte ein Fehler auftreten, wirft TeX sehr lange - Fehlerbeschreibungen, der eigentliche Fehler ist immer die erste Zeile, - die mit einem Ausrufezeichen anfängt. Häufig auftretende Fehler sind zum - Beispiel:

  • ! 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.

  • ! Package inputenc Error: Unicode char \u8:... set up for + 2.12. Drucken mit kivitendo

    2.12. Drucken mit kivitendo

    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 texlive Installation. Unter + debianoiden Betriebssystemen installiert man die Pakete mit:

    +

    apt install texlive-base-bin texlive-latex-recommended texlive-fonts-recommended \
    +  texlive-latex-extra texlive-lang-german ghostscript

    +

    Für Fedora benötigen Sie die folgenden Pakete:

    +

    dnf install texlive-collection-latex texlive-collection-latexextra \
    +  texlive-collection-latexrecommended texlive-collection-langgerman \
    +  texlive-collection-langenglish

    +

    Für openSUSE benötigen Sie die folgenden Pakete:

    +

    zypper install texlive-collection-latex texlive-collection-latexextra \
    +  texlive-collection-latexrecommended texlive-collection-langgerman \
    +  texlive-collection-langenglish

    +

    [Anmerkung]Anmerkung

    kivitendo erwartet eine aktuelle TeX Live Umgebung, um PDF/A zu erzeugen. Aktuelle Distributionen von 2020 erfüllen diese. Überprüfbar ist dies mit dem Aufruf des installation_check.pl mit Parameter -l:

    +

    scripts/installations_check.pl -l

    +

    kivitendo bringt drei alternative Vorlagensätze mit:

    • RB

    • marei

    • rev-odt

    Der ehemalige Druckvorlagensatz "f-tex" wurde mit der Version + 3.5.6 entfernt, da er nicht mehr gepflegt wird.

    2.12.1. Vorlagenverzeichnis anlegen

    Es lässt sich ein initialer Vorlagensatz erstellen. Die + LaTeX-System-Abhängigkeiten hierfür kann man prüfen mit:

    ./scripts/installation_check.pl -lv

    Der Angemeldete Benutzer muss in einer Gruppe sein, die über das + Recht "Konfiguration -> Mandantenverwaltung" verfügt. Siehe auch + Abschnitt 2.9.4, „Gruppen anlegen“.

    Im Userbereich lässt sich unter: "System + -> Mandantenverwaltung -> + Verschiedenes" die Option "Neue + Druckvorlagen aus Vorlagensatz erstellen" auswählen.

    1. + Vorlagen auswählen: Wählen Sie hier den + Vorlagensatz aus, der kopiert werden soll + (RB, marei oder + odt-rev.)

    2. + Neuer Name: Der Verzeichnisname für den + neuen Vorlagensatz. Dieser kann im Rahmen der üblichen Bedingungen + für Verzeichnisnamen frei gewählt werden.

    Nach dem Speichern wird das Vorlagenverzeichnis angelegt und ist + für den aktuellen Mandanten ausgewählt. Der gleiche Vorlagensatz kann, + wenn er mal angelegt ist, bei mehreren Mandanten verwendet werden. + Eventuell müssen Anpassungen (Logo, Erscheinungsbild, etc) noch + vorgenommen werden. Den Ordner findet man im Dateisystem unter + ./templates/[Neuer Name] +

    2.12.2. Der Druckvorlagensatz RB

    Hierbei handelt es sich um einen vollständigen LaTeX + Dokumentensatz mit alternativem Design. Die odt oder html-Varianten + sind nicht gepflegt.

    Die konzeptionelle Idee der Vorlagen wird hier + auf Folie 5 bis 10 vorgestellt. Informationen zur Anpassung an die + eigenen Firmendaten finden sich in der Datei Readme.tex im + Vorlagenverzeichnis.

    Eine kurze Übersicht der Features:

    • Mehrsprachenfähig, mit Deutscher und Englischer + Übersetzung

    • Zentrale Konfigurationsdateien, die für alle Belege benutzt + werden, z.B. für Kopf- und Fußzeilen, und Infos wie + Bankdaten

    • mehrere vordefinierte Varianten für + Logos/Hintergrundbilder

    • Berücksichtigung für Steuerzonen "EU mit USt-ID Nummer" oder + "Außerhalb EU"

    2.12.3. Der Druckvorlagensatz rev-odt

    Hierbei handelt es sich um einen Dokumentensatz der mit + odt-Vorlagen erstellt wurde. Es gibt in dem Verzeichnis eine + Readme-Datei, die eventuell aktueller als die Dokumentation hier ist. + Die odt-Vorlagen in diesem Verzeichnis "rev-odt" wurden von revamp-it, + Zürich erstellt und werden laufend aktualisiert. Ein paar der + Formulierungen in den Druckvorlagen entsprechen dem Schweizer + Sprachgebrauch, z.B. "Offerte" oder "allfällig".

    Hinweis zum Einsatz des Feldes "Land" bei den Stammdaten für + KundInnen und LieferantInnen, sowie bei Lieferadressen: Die in diesem + Vorlagensatz vorhandenen Vorlagen erwarten für "Land" das + entsprechende Kürzel, das in Adressen vor die Postleitzahl gesetzt + wird. Das Feld kann auch komplett leer bleiben. Wer dies anders + handhaben möchte, muss die Vorlagen entsprechend anpassen.

    odt-Vorlagen können mit LibreOffice oder OpenOffice editiert und + den eigenen Bedürfnissen angepasst werden. Wichtig beim Editieren von + if-Blöcken ist, dass immer der gesamte Block überschrieben werden muss + und nicht nur Teile davon, da dies sonst oft zu einer odt-Datei führt, + die vom Parser nicht korrekt gelesen werden kann.

    Mahnungen können unter folgenden Einschränkungen mit den + odt-Vorlagen im Vorlagensatz rev-odt erzeugt werden:

    • als Druckoption steht nur 'PDF(OpenDocument/OASIS)' zur + Verfügung, das heisst, die Mahnungen werden als PDF-Datei + ausgegeben.

    • für jede Rechnung muss eine eigene Mahnung erzeugt werden + (auch wenn bei einzelnen KundInnen mehrere überfällige Rechnungen + vorhanden sind).

    Mehrere Mahnungen für eine Kundin / einen Kunden werden zu einer + PDF-Datei zusammengefasst

    Die Vorlagen zahlungserinnerung.odt sowie mahnung.odt sind für + das Erstellen einer Zahlungserinnerung bzw. Mahnung selbst vorgesehen, + die Vorlage mahnung_invoice.odt für das Erstellen einer Rechnung über + die verrechneten Mahngebühren und Verzugszinsen.

    Zur Zeit gibt es in kivitendo noch keine Möglichkeit, + odt-Vorlagen bei Briefen und Pflichtenheften einzusetzen. + Entsprechende Vorlagen sind deshalb nicht vorhanden.

    Fehlermeldungen, Anregungen und Wünsche bitte senden an: + empfang@revamp-it.ch

    2.12.4. Allgemeine Hinweise zu LaTeX Vorlagen

    In den allermeisten Installationen sollte das Drucken jetzt + schon funktionieren. Sollte ein Fehler auftreten, wirft TeX sehr lange + Fehlerbeschreibungen, der eigentliche Fehler ist immer die erste + Zeile, die mit einem Ausrufezeichen anfängt. Häufig auftretende Fehler + sind zum Beispiel:

    • ! 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.

    • ! Package inputenc Error: Unicode char \u8:... 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.

    Wird gar kein 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: + diversen Tricks dazu gebracht werden andere Zeichen zu + akzeptieren. Adere TeX Systeme wie XeTeX schaffen hier + Abhilfe.

Wird gar kein 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: pdflatex), und stellen Sie sicher, dass pdflatex (oder das von Ihnen verwendete System) vom Webserver ausgeführt werden - darf.

Wenn sich das Problem nicht auf Grund der Ausgabe im Webbrowser verifizieren lässt:

  • editiere [kivitendo-home]/config/kivitendo.conf und ändere "keep_temp_files" auf 1

    + darf.

    Wenn sich das Problem nicht auf Grund der Ausgabe im Webbrowser + verifizieren lässt:

    • editiere [kivitendo-home]/config/kivitendo.conf und ändere + "keep_temp_files" auf 1

      keep_temp_files = 1;

    • bei fastcgi oder mod_perl den Webserver neu Starten

    • Nochmal einen Druckversuch im Webfrontend auslösen

    • wechsel in das users Verzeichnis von kivitendo

      cd [kivitendo-home]/users

    • LaTeX Suchpfad anpassen:

      export TEXINPUTS=".:[kivitendo-home]/templates/[aktuelles_template_verzeichniss]:"

      -

    • Finde heraus, welche Datei kivitendo beim letzten Durchlauf erstellt hat

      +

    • Finde heraus, welche Datei kivitendo beim letzten Durchlauf + erstellt hat

      ls -lahtr ./1*.tex

      -

      Es sollte die letzte Datei ganz unten sein

    • für besseren Hinweis auf Fehler texdatei nochmals übersetzen

      +

      Es sollte die letzte Datei ganz unten sein

    • für besseren Hinweis auf Fehler texdatei nochmals + übersetzen

      pdflatex ./1*.tex

      in der *.tex datei nach dem Fehler suchen.

\ No newline at end of file