X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=doc%2Fdokumentation.xml;h=0c41875ee4101522de9577af03f59239960390a6;hb=3400fe7eb2a5d3d9e23bbc4a8684a30846db4bea;hp=4208d8471f46030e8b79d9c89131ffb36a5f0b16;hpb=8a40e3dd0f638557b8c666fe708ccbc1ac709c4e;p=kivitendo-erp.git diff --git a/doc/dokumentation.xml b/doc/dokumentation.xml index 4208d8471..0c41875ee 100644 --- a/doc/dokumentation.xml +++ b/doc/dokumentation.xml @@ -2,7 +2,7 @@ - kivitendo: Installation, Konfiguration, Entwicklung + kivitendo 3.0.0: Installation, Konfiguration, Entwicklung Aktuelle Hinweise @@ -14,17 +14,50 @@ im kivitendo-Forum: https://forum.kivitendo.org/ - - - im alten Lx-Office-Wiki unter Dokumentation (http://wiki.lx-office.org/index.php?title=Installation_Lx-Office_ERP) - Installation und Grundkonfiguration + + Übersicht + + + Die Installation von kivitendo umfasst mehrere Schritte. Die folgende Liste kann sowohl für Neulinge als auch für alte Hasen als + Übersicht und Stichpunktliste zum Abhaken dienen, um eine Version mit minimalen Features möglichst schnell zum Laufen zu kriegen. + + + + Voraussetzungen überprüfen: kivitendo benötigt gewisse Ressourcen und benutzt weitere + Programme. Das Kapitel "" erläutert diese. Auch die Liste der benötigten Perl-Module + befindet sich hier. + + Installation von kivitendo: Diese umfasst die "" sowie grundlegende Einstellungen, die der "" erläutert. + + Konfiguration externer Programme: hierzu gehören die Datenbank ("") und der Webserver (""). + + Benutzerinformationen speichern können: man benötigt mindestens eine Datenbank, in der + Informationen zur Authentifizierung sowie die Nutzdaten gespeichert werden. Wie man das als Administrator macht, verrät "". + + Benutzer, Gruppen und Datenbanken anlegen: wie dies alles zusammenspielt erläutert "". + + Los geht's: alles soweit erledigt? Dann kann es losgehen: "" + + + + Alle weiteren Unterkapitel in diesem Kapitel sind ebenfalls wichtig und dienen sollten vor einer ernsthaften Inbetriebnahme gelesen + werden. + + + Benötigte Software und Pakete @@ -42,16 +75,25 @@ dass kivitendo auf ihnen läuft: + - Ubuntu 10.04 LTS Lucid Lynx bis 12.10 Oneiric Ocelot + Debian + + + 6.0 "Squeeze" (hier muss allerdings das Modul FCGI in der Version >= 0.72 compiled werden) + + + 7.0 "Wheezy" + + - Debian 5.0 Lenny und 6.0 Squeeze + Ubuntu 10.04 LTS "Lucid Lynx", 12.04 LTS "Precise Pangolin" und 12.10 "Oneiric Ocelot"` - openSUSE 11.2 und 11.3 + openSUSE 12.1 und 12.2 @@ -59,23 +101,28 @@ - Fedora 13 bis 16 + Fedora 16 und 17 - Pakete + Benötigte Perl-Pakete installieren Zum Betrieb von kivitendo werden zwingend ein Webserver (meist Apache) und ein Datenbankserver (PostgreSQL, mindestens v8.2) benötigt. - Zusätzlich benötigt kivitendo die folgenden Perl-Pakete, die - nicht Bestandteil einer Standard-Perl-Installation sind: + Zusätzlich benötigt kivitendo einige Perl-Pakete, die nicht Bestandteil einer Standard-Perl-Installation sind. Um zu + überprüfen, ob die erforderlichen Pakete installiert und aktuell genug sind, wird ein Script mitgeliefert, das wie folgt aufgerufen + wird: + + ./scripts/installation_check.pl + + Die vollständige Liste der benötigten Perl-Module lautet: - parent + parent (nur bei Perl vor 5.10.1) Archive::Zip @@ -91,6 +138,8 @@ Email::MIME + FCGI (nicht Versionen 0.68 bis 0.71 inklusive; siehe ) + JSON List::MoreUtils @@ -148,40 +197,62 @@ empfohlen diese Module zusammen mit den anderen als Bibliotheken zu installieren. - Die zu installierenden Pakete können in den verschiedenen - Distributionen unterschiedlich heißen. - - Für Debian oder Ubuntu benötigen Sie diese Pakete: + + Debian und Ubuntu + + Alle benötigten Perl-Pakete stehen für Debian und Ubuntu als Debian-Pakete zur Verfügung. Sie können mit folgendem Befehl + installiert werden: + + apt-get install apache2 libarchive-zip-perl libclone-perl \ + libconfig-std-perl libdatetime-perl libdbd-pg-perl libdbi-perl \ + libemail-address-perl libemail-mime-perl libfcgi-perl libjson-perl \ + liblist-moreutils-perl libnet-smtp-ssl-perl libnet-sslglue-perl \ + libparams-validate-perl libpdf-api2-perl librose-db-object-perl \ + librose-db-perl librose-object-perl libsort-naturally-perl \ + libstring-shellquote-perl libtemplate-perl libtext-csv-xs-perl \ + libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl \ + postgresql + - apt-get install apache2 postgresql libparent-perl libarchive-zip-perl \ - libdatetime-perl libdbi-perl libdbd-pg-perl libpg-perl \ - libemail-address-perl libemail-mime-perl liblist-moreutils-perl libpdf-api2-perl \ - librose-object-perl librose-db-perl librose-db-object-perl \ - libtemplate-perl libtext-csv-xs-perl libtext-iconv-perl liburi-perl \ - libxml-writer-perl libyaml-perl libconfig-std-perl \ - libparams-validate-perl libjson-perl libclass-accessor-perl \ - libnet-sslglue-perl libnet-smtp-ssl-perl + + Fedora Core - Für Fedora Core benötigen Sie diese Pakete: + Für Fedora Core stehen die meisten der benötigten Perl-Pakete als RPM-Pakete zur Verfügung. Sie können mit folgendem Befehl installeirt werden: - yum install httpd postgresql-server perl-parent perl-DateTime \ - perl-DBI perl-DBD-Pg perl-Email-Address perl-Email-MIME perl-List-MoreUtils \ - perl-PDF-API2 perl-Rose-Object perl-Rose-DB perl-Rose-DB-Object \ + yum install httpd perl-Archive-Zip perl-Clone perl-DBD-Pg \ + perl-DBI perl-DateTime perl-Email-Address perl-Email-MIME perl-FCGI \ + perl-JSON perl-List-MoreUtils perl-Net-SMTP-SSL perl-Net-SSLGlue \ + perl-PDF-API2 perl-Params-Validate perl-Rose-DB perl-Rose-DB-Object \ + perl-Rose-Object perl-Sort-Naturally perl-String-ShellQuote \ perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI \ - perl-XML-Writer perl-YAML perl-Net-SSLGlue perl-Net-SMTP-SSL + perl-XML-Writer perl-YAML perl-parent postgresql-server - Für OpenSuSE benötigen Sie diese Pakete: + Zusätzlich müssen einige Pakete aus dem CPAN installiert werden. Dazu können Sie die folgenden Befehle nutzen: - zypper install apache2 postgresql-server perl-Archive-Zip \ - perl-DateTime perl-DBI perl-DBD-Pg perl-Email-MIME perl-MailTools perl-List-MoreUtils \ - perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv \ - perl-URI perl-XML-Writer perl-YAML perl-Net-SSLGlue perl-Net-SMTP-SSL + yum install perl-CPAN +cpan Config::Std - kivitendo enthält ein Script, mit dem überprüft werden kann, ob - alle benötigten Perl-Module installiert sind. Der Aufruf lautet wie - folgt: + - ./scripts/installation_check.pl + + openSUSE + + Für openSUSE stehen die meisten der benötigten Perl-Pakete als RPM-Pakete zur Verfügung. Sie können mit folgendem Befehl + installiert werden: + + zypper install apache2 perl-Archive-Zip perl-Clone \ + perl-Config-Std perl-DBD-Pg perl-DBI perl-DateTime perl-Email-Address \ + perl-Email-MIME perl-FastCGI perl-JSON perl-List-MoreUtils \ + perl-Net-SMTP-SSL perl-Net-SSLGlue perl-PDF-API2 perl-Params-Validate \ + perl-Sort-Naturally perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv \ + perl-URI perl-XML-Writer perl-YAML postgresql-server + + Zusätzlich müssen einige Pakete aus dem CPAN installiert werden. Dazu können Sie die folgenden Befehle nutzen: + + yum install perl-CPAN +cpan Rose::Db::Object + + @@ -189,14 +260,11 @@ xreflabel="Manuelle Installation des Programmpaketes"> Manuelle Installation des Programmpaketes - Die kivitendo ERP Installationsdatei (kivitendo-erp-2.6.3.tgz) wird - im Dokumentenverzeichnis des Webservers (z.B. - /var/www/html/, - /srv/www/htdocs oder - /var/www/) entpackt: + Die kivitendo ERP Installationsdatei (kivitendo-erp-3.0.0.tgz) wird im Dokumentenverzeichnis des Webservers + (z.B. /var/www/html/, /srv/www/htdocs oder /var/www/) entpackt: cd /var/www -tar xvzf kivitendo-erp-2.6.3.tgz +tar xvzf kivitendo-erp-3.0.0.tgz Wechseln Sie in das entpackte Verzeichnis: @@ -209,7 +277,7 @@ tar xvzf kivitendo-erp-2.6.3.tgz Die Verzeichnisse users, spool und webdav müssen für den Benutzer beschreibbar sein, unter dem der Webserver läuft. Die restlichen Dateien müssen für diesen Benutzer lesbar sein. Die Benutzer- und Gruppennamen sind bei verschiedenen Distributionen unterschiedlich (z.B. bei Debian/Ubuntu www-data, bei Fedora - core apache oder bei OpenSuSE wwwrun). + core apache oder bei OpenSUSE wwwrun). Der folgende Befehl ändert den Besitzer für die oben genannten Verzeichnisse auf einem Debian/Ubuntu-System: @@ -363,7 +431,7 @@ dbcharset = UTF-8 eingreifen Dieses kann überprüft werden: ist das Encoding der Datenbank - “template1” “UTF8”, so braucht man nichts weiteres diesbezueglich + “template1” “UTF8”, so braucht man nichts weiteres diesbezüglich unternehmen. Zum Testen: su postgres @@ -438,6 +506,9 @@ psql template1 anlegen. Ein Beispiel, wie Sie einen neuen Benutzer anlegen können: + Die Frage, ob der neue User Superuser sein soll, können Sie mit nein + beantworten, genauso ist die Berechtigung neue User (Roles) zu + generieren nicht nötig. su - postgres createuser -d -P kivitendo exit @@ -467,7 +538,7 @@ exit wird: AddHandler cgi-script .pl -Alias /kivitendo-erp/ /var/www/kiviteno-erp/ +Alias /kivitendo-erp/ /var/www/kivitendo-erp/ <Directory /var/www/kivitendo-erp> Options ExecCGI Includes FollowSymlinks @@ -558,7 +629,7 @@ Alias /kivitendo-erp/ /var/www/kiviteno-erp/ bestimmte Eingaben von kivitendo. Falls es Probleme mit Umlauten in Ihrere Installation gibt, muss zwingend Version 0.68 oder aber Version 0.72 und neuer eingesetzt werden. - Mit CPAN lässt sie sich die Vorgängerversion wie folgt + Mit CPAN lässt sie sich die Vorgängerversion wie folgt installieren: force install M/MS/MSTROUT/FCGI-0.68.tar.gz @@ -723,8 +794,7 @@ Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/ - SystemV-basierende Systeme (z.B. Debian, OpenSuSE, Fedora - Core) + SystemV-basierende Systeme (z.B. Debian, ältere OpenSUSE, ältere Fedora Core) Kopieren Sie die Datei scripts/boot/system-v/kivitendo-server @@ -743,15 +813,16 @@ insserv kivitendo-task-server - OpenSuSE und Fedora Core: + Ältere OpenSUSE und ältere Fedora Core: chkconfig --add kivitendo-task-server Danach kann der Task-Server mit dem folgenden Befehl gestartet - werden: /etc/init.d/kivitendo-task-server - start + werden: + + /etc/init.d/kivitendo-task-server start @@ -764,8 +835,28 @@ insserv kivitendo-task-server exec ....). Danach kann der Task-Server mit dem folgenden Befehl gestartet - werden: service kivitendo-task-server - start + werden: + + service kivitendo-task-server start + + + + systemd-basierende Systeme (z.B. neure OpenSUSE, neuere Fedora Core) + + Verlinken Sie die Datei scripts/boot/systemd/kivitendo-task-server.service nach + /etc/systemd/system/. Passen Sie in der kopierten Datei den Pfad zum Task-Server an (Zeile + ExecStart=.... und ExecStop=...). Binden Sie das Script in den Boot-Prozess ein. + + + Alle hierzu benötigten Befehle sehen so aus: + + cd /var/www/kivitendo-erp/scripts/boot/systemd +ln -s $(pwd)/kivitendo-task-server.service /etc/systemd/system/ + + Danach kann der Task-Server mit dem folgenden Befehl gestartet + werden: + + systemctl start kivitendo-task-server.service @@ -1292,11 +1383,11 @@ insserv kivitendo-task-server TLS-Verschlüsselung: Modul Net::SSLGlue (Debian-Paketname - libnet-sslglue-perl, Fedora Core: perl-Net-SSLGlue, openSuSE: + libnet-sslglue-perl, Fedora Core: perl-Net-SSLGlue, openSUSE: perl-Net-SSLGlue SSL-Verschlüsselung: Modul Net::SMTP::SSL (Debian-Paketname - libnet-smtp-ssl-perl, Fedora Core: perl-Net-SMTP-SSL, openSuSE: + libnet-smtp-ssl-perl, Fedora Core: perl-Net-SMTP-SSL, openSUSE: perl-Net-SMTP-SSL @@ -1305,49 +1396,279 @@ insserv kivitendo-task-server 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 sind das die Pakete: + 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: - texlive-latex-base texlive-latex-extra - texlive-fonts-recommended + aptitude install texlive-base-bin texlive-latex-recommended texlive-fonts-recommended \ + texlive-latex-extra texlive-lang-german texlive-generic-extra - Diese hinteren beiden enthalten Bibliotheken und Schriftarten die - von den Standardvorlagen verwendet werden. + TODO: RPM-Pakete. - TODO: rpm Pakete. + kivitendo bringt drei alternative Vorlagensätze mit: + + Standard + f-tex + RB + - 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: + + Vorlagenverzeichnis anlegen + 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 Benutzerverwaltung auf. - - - ! 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. - + Wählen Sie dort einen Benutzer aus oder legen Sie einen neuen an. In der Benutzerbearbeiten-Maske müssen Sie zwei Dinge + angeben: - - ! 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. - - + + : Der Verzeichnisname für den neuen Vorlagensatz. Dieser kann im Rahmen der üblichen + Bedingungen für Verzeichnisnamen frei gewählt werden. + : 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 + + + + Standard + + Der Standard-Vorlagensatz von Kivitendo. Wie unter http://demo.kivitendo.org zu + sehen. + + + + + f-tex - 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. + Ein Vorlagensatz, der in wenigen Minuten alle Dokumente zur Verfügung stellt. + + + Feature-Übersicht + + 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 + "" 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 "" 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. + + + + + Die Installation + + Vorlagenverzeichnis mit Option f-tex anlegen, siehe: . 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 "" 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. + + + + + 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 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. + + + + + 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- 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. + + + + + 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. + + + + + + RB + + Vollständiger Dokumentensatz mit alternativem Design + + + + + Allgemeine Hinweise zu LaTeX Vorlagen + 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. + + + @@ -1396,6 +1717,23 @@ insserv kivitendo-task-server Python-UNO-Bindings benötigt, die Bestandteil von OpenOffice 2 sind. + + + Für die Verbindung zu OpenOffice wird normalerweise der Python-Interpreter /usr/bin/python benutzt. Sollte + dies nicht der richtige sein, so kann man mit zwei Konfigurationsvariablen entscheiden, welcher Python-Interpreter genutzt + wird. Mit der Option python_uno aus dem Abschnitt applications wird der Interpreter selber + festgelegt; sie steht standardmäßig auf dem eben erwähnten Wert /usr/bin/python. + + + + Zusätzlich ist es möglich, Pfade anzugeben, in denen Python neben seinen normalen Suchpfaden ebenfalls nach Modulen gesucht wird, + z.B. falls sich diese in einem gesonderten OpenOffice-Verzeichnis befinden. Diese zweite Variable heißt + python_uno_path und befindet sich im Abschnitt environment. Sie ist standardmäßig + leer. Werden hier mehrere Pfade angegeben, so müssen diese durch Doppelpunkte voneinander getrennt werden. Der Inhalt wird an den + Python-Interpreter über die Umgebungsvariable PYTHONPATH übergeben. + + + 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 @@ -1832,6 +2170,82 @@ insserv kivitendo-task-server [periodic_invoices]. + + Spezielle Variablen + + + Um die erzeugten Rechnungen individualisieren zu können, werden beim Umwandeln des Auftrags in eine Rechnung einige speziell + formatierte Variablen durch für die jeweils aktuelle Abrechnungsperiode gültigen Werte ersetzt. Damit ist es möglich, z.B. den + Abrechnungszeitraum explizit auszuweisen. Eine Variable hat dabei die Syntax <%variablenname%>. + + + + Diese Variablen werden in den folgenden Elementen des Auftrags ersetzt: + + + + Bemerkungen + Interne Bemerkungen + Vorgangsbezeichnung + In den Beschreibungs- und Langtextfeldern aller Positionen + + + Die zur Verfügung stehenden Variablen sind die Folgenden: + + + + <%current_quarter%>, <%previous_quarter%>, <%next_quarter%> + + + + Aktuelles, vorheriges und nächstes Quartal als Zahl zwischen 1 und 4. + + + + + + <%current_month%>, <%previous_month%>, <%next_month%> + + + + Aktueller, vorheriger und nächster Monat als Zahl zwischen 1 und 12. + + + + + + <%current_month_long%>, <%previous_month_long%>, <%next_month_long%> + + + + Aktueller, vorheriger und nächster Monat als Name (Januar, Februar etc.). + + + + + + <%current_year%>, <%previous_year%>, <%next_year%> + + + + Aktuelles, vorheriges und nächstes Jahr als vierstellige Jahreszahl (2013 etc.). + + + + + + <%period_start_date%>, <%period_end_date%> + + + + Formatiertes Datum des ersten und letzten Tages im Abrechnungszeitraum (z.B. bei quartalsweiser Abrechnung und im ersten + Quartal von 2013 wären dies der 01.01.2013 und 31.03.2013). + + + + + + Auflisten @@ -2350,6 +2764,22 @@ insserv kivitendo-task-server + + c_vendor_id + + + Lieferantennummer beim Kunden (nur Kunden) + + + + + v_customer_id + + + Kundennummer beim Lieferanten (nur Lieferanten) + + + cp_email @@ -4137,6 +4567,18 @@ insserv kivitendo-task-server und dem "end" werden nur ausgegeben, wenn die Variable variablenname gesetzt und ungleich 0 ist. + Handelt es sich bei der benannten Variable um ein Array, also um einen Variablennamen, über den man mit + <%foreach variablenname%> iteriert, so wird mit diesem Konstrukt darauf getestet, ob das Array Elemente + enthält. Somit würde im folgenden Beispiel nur dann eine Liste von Zahlungseingängen samt ihrer Überschrift "Zahlungseingänge" + ausgegeben, wenn tatsächlich welche getätigt wurden: + + <%if payment%> +Zahlungseingänge: + <%foreach payment%> + Am <%paymentdate%>: <%payment%> € + <%end foreach%> +<%end if%> + Die Bedingung kann auch negiert werden, indem das Wort not nach dem if verwendet wird. Beispiel: @@ -5515,7 +5957,14 @@ filenames Test::Deep (Debian-Paketname: libtest-deep-perl; Fedora Core: - perl-Test-Deep; openSuSE: perl-Test-Deep) + perl-Test-Deep; openSUSE: perl-Test-Deep) + Test::Exception (Debian-Paketname: libtest-exception-perl; Fedora Core: + perl-Test-Exception; openSUSE: perl-Test-Exception) + Test::Output (Debian-Paketname: libtest-output-perl; Fedora Core: + perl-Test-Output; openSUSE: perl-Test-Output) + Test::Harness 3.0.0 oder höher. Dieses Modul ist ab Perl 5.10.1 Bestandteil der + Perl-Distribution und kann für frühere Versionen aus dem CPAN bezogen + werden.