X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/cc3ea92a877f32a229d5d54c2071b640da894df6..6066c7698557d03576f92c1c6bada6e74157e232:/doc/html/ch02s11.html diff --git a/doc/html/ch02s11.html b/doc/html/ch02s11.html index 94228a0f8..78df092b1 100644 --- a/doc/html/ch02s11.html +++ b/doc/html/ch02s11.html @@ -1,58 +1,101 @@
-kivitendo unterstützt die Verwendung von Vorlagen im
-      OpenDocument-Format, wie es OpenOffice.org ab Version 2 erzeugt.
-      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
-      config/kivitendo.conf die Variable
-      opendocument im Abschnitt
-      print_templates auf â1â stehen.
-      Dieses ist die Standardeinstellung.
Weiterhin muss in der Datei
-      config/kivitendo.conf die Variable
-      dbcharset im Abschnitt system auf
-      die Zeichenkodierung gesetzt werden, die auch bei der Speicherung der
-      Daten in der Datenbank verwendet wird. Diese ist in den meisten Fällen
-      "UTF-8".
Während die Erzeugung von reinen OpenDocument-Dateien keinerlei - weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF - OpenOffice.org benötigt. Soll dieses Feature genutzt werden, so muss - neben OpenOffice.org ab Version 2 auch der âX virtual frame bufferâ - (xvfb) installiert werden. Bei Debian ist er im Paket âxvfbâ enthalten. - Andere Distributionen enthalten ihn in anderen Paketen.
Nach der Installation müssen in der Datei
-      config/kivitendo.conf zwei weitere Variablen
-      angepasst werden: openofficeorg_writer muss den
-      vollständigen Pfad zur OpenOffice.org Writer-Anwendung enthalten.
-      xvfb muss den Pfad zum âX virtual frame bufferâ
-      enthalten. Beide stehen im Abschnitt
-      applications.
Zusätzlich gibt es zwei verschiedene Arten, wie kivitendo mit
-      OpenOffice kommuniziert. Die erste Variante, die benutzt wird, wenn die
-      Variable $openofficeorg_daemon gesetzt ist, startet
-      ein 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 OpenOffice gestartet
-      werden muss. Der Nachteil ist, dass diese Methode Python und die
-      Python-UNO-Bindings benötigt, die Bestandteil von OpenOffice 2
-      sind.
Ist $openofficeorg_daemon nicht gesetzt, so
-      wird für jedes Dokument OpenOffice neu gestartet und die Konvertierung
-      mit Hilfe eines Makros durchgeführt. Dieses Makro muss in der
-      Dokumentenvorlage enthalten sein und
-      âStandard.Conversion.ConvertSelfToPDF()â heiÃen. Die Beispielvorlage
-      âtemplates/mastertemplates/German/invoice.odtâ
-      enthält ein solches Makro, das in jeder anderen Dokumentenvorlage
-      ebenfalls enthalten sein muss.
Als letztes muss herausgefunden werden, welchen Namen
-      OpenOffice.org Writer dem Verzeichnis mit den Benutzereinstellungen
-      gibt. Unter Debian ist dies momentan
-      ~/.openoffice.org2. Sollte der Name bei Ihrer
-      OpenOffice.org-Installation anders sein, so muss das Verzeichnis
-      users/.openoffice.org2 entsprechend umbenannt werden.
-      Ist der Name z.B. einfach nur .openoffice, so wäre
-      folgender Befehl auszuführen:
-            mv users/.openoffice.org2
-      users/.openoffice
-         
Dieses Verzeichnis, wie auch das komplette
-      users-Verzeichnis, muss vom Webserver beschreibbar
-      sein. Dieses wurde bereits erledigt (siehe Manuelle Installation des Programmpaketes), kann aber
-      erneut überprüft werden, wenn die Konvertierung nach PDF
-      fehlschlägt.
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:
Standard
f-tex
RB
Im Administrationsbereich lässt sich bei einem Benutzer/Mandanten einer dieser Vorlagensätze als Basis für die zu + druckenden Dokumente auswählen. Rufen Sie dazu die auf.
Wählen Sie dort einen Benutzer aus oder legen Sie einen neuen an. In der Benutzerbearbeiten-Maske müssen Sie zwei Dinge + angeben:
+                     Name: Der Verzeichnisname für den neuen Vorlagensatz. Dieser kann im Rahmen der üblichen
+          Bedingungen für Verzeichnisnamen frei gewählt werden.
+                     Vorlagen auswählen: Wählen Sie hier den Vorlagensatz aus, der kopiert werden soll
+          (Standard, f-tex oder RB.)
Der gleiche Vorlagensatz kann, wenn er mal angelegt ist, bei mehreren Benutzern verwendet werden.
Die Abhängigkeiten kann man prüfen mit:
/scripts/installation_check.pl -l
Der Standard-Vorlagensatz von Kivitendo. Wie unter http://demo.kivitendo.org zu + sehen.
Ein Vorlagensatz, der in wenigen Minuten alle Dokumente zur Verfügung stellt.
Keine Redundanz. Es wird ein- und dieselbe LaTeX-Vorlage für alle briefartigen Dokumente verwendet. Also + Angebot, Rechnung, Performarechnung, Lieferschein, aber eben nicht für Paketaufkleber etc..
Leichte Anpassung an das Firmen-Layout durch verwendung eines Hintergrund-PDF. 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.
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 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.
+          
+            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.
+          
+            letzlich muss letter_head.pdf auf das passende Hintergrund-PDF verweisen, welches gewünschten Briefkopf
+            enthält. Bei Updates oder nach erneutem
+          
+            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.
+          
+ 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 häftig 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.
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- wie 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 Netopreise 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 reviediert werden, + ohne dass sich der Auftragswert ändert.
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.
+          
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:
! 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 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:
+        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_tmp_files" auf 1
+
keep_temp_files = 1;
+
bei fastcgi oder mod_perl den Webserver neu Starten
Nochmal einen Druckversuch im Webfrontend auslösen
wechsele in das users Verzeichnis von kivitendo
+
cd [kivitendo-home]/users
+
LaTeX Suchpfad anpassen:
+
export TEXINPUTS=".:[kivitendo-home]/templates/[aktuelles_template_verzeichniss]:"
+
Finde herraus 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
+
pdflatex ./1*.tex
+
in der *.tex datei nach dem Fehler suchen.