2 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
3 <title>3.3. Dokumentenvorlagen und verfügbare Variablen</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 3.5.0-alpha: Installation, Konfiguration, Entwicklung"><link rel="up" href="ch03.html" title="Kapitel 3. Features und Funktionen"><link rel="prev" href="ch03s02.html" title="3.2. Bankerweiterung"><link rel="next" href="ch03s04.html" title="3.4. Excel-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">3.3. Dokumentenvorlagen und verfügbare Variablen</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s02.html">Zurück</a> </td><th width="60%" align="center">Kapitel 3. Features und Funktionen</th><td width="20%" align="right"> <a accesskey="n" href="ch03s04.html">Weiter</a></td></tr></table><hr></div><div class="sect1" title="3.3. Dokumentenvorlagen und verfügbare Variablen"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="dokumentenvorlagen-und-variablen"></a>3.3. Dokumentenvorlagen und verfügbare Variablen</h2></div></div></div><div class="sect2" title="3.3.1. Einführung"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.einf%C3%BChrung"></a>3.3.1. Einführung</h3></div></div></div><p>Dies ist eine Auflistung der Standard-Dokumentenvorlagen und
4 aller zur Bearbeitung verfügbaren Variablen. Eine Variable wird in
5 einer Vorlage durch ihren Inhalt ersetzt, wenn sie in der Form
6 <code class="function"><%variablenname%></code> verwendet wird. Für
7 LaTeX- und HTML-Vorlagen kann man die Form dieser Tags auch verändern
8 (siehe <a class="xref" href="ch03s03.html#dokumentenvorlagen-und-variablen.tag-style" title="3.3.4. Anfang und Ende der Tags verändern">Anfang und Ende der Tags verändern</a>).</p><p>kivitendo unterstützt LaTeX-, HTML- und OpenDocument-Vorlagen.
9 Sofern es nicht ausdrücklich eingeschränkt wird, gilt das im
10 Folgenden gesagte für alle Vorlagenarten.</p><p>Insgesamt sind technisch gesehen eine ganze Menge mehr Variablen
11 verfügbar als hier aufgelistet werden. Die meisten davon können
12 allerdings innerhalb einer solchen Vorlage nicht sinnvoll verwendet
13 werden. Wenn eine Auflistung dieser Variablen gewollt ist, so kann
14 diese wie folgt erhalten werden:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
15 <code class="filename">SL/Form.pm</code> öffnen und am Anfang die
16 Zeile "<span class="command"><strong>use Data::Dumper;</strong></span>" einfügen.</p></li><li class="listitem"><p>In <code class="filename">Form.pm</code> die Funktion
17 <code class="function">parse_template</code> suchen und hier die Zeile
18 <span class="command"><strong>print(STDERR Dumper($self));</strong></span> einfügen.</p></li><li class="listitem"><p>Einmal per Browser die gewünschte Vorlage "benutzen", z.B.
19 ein PDF für eine Rechnung erzeugen.</p></li><li class="listitem"><p>Im <code class="filename">error.log</code> Apache steht die Ausgabe
20 der Variablen <code class="varname">$self</code> in der Form <code class="varname">'key'
21 => 'value',</code>. Alle <code class="varname">key</code>s sind
22 verfügbar.</p></li></ul></div></div><div class="sect2" title="3.3.2. Variablen ausgeben"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.variablen-ausgeben"></a>3.3.2. Variablen ausgeben</h3></div></div></div><p>Um eine Variable auszugeben, müssen sie einfach nur zwischen die
23 Tags geschrieben werden, also z.B.
24 <code class="varname"><%variablenname%></code>.</p><p>Optional kann man auch mit Leerzeichen getrennte Flags angeben,
25 die man aber nur selten brauchen wird. Die Syntax sieht also so aus:
26 <code class="varname"><%variablenname FLAG1 FLAG2%></code>. Momentan
27 werden die folgenden Flags unterstützt:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
28 <code class="option">NOFORMAT</code> gilt nur für Zahlenwerte und gibt
29 den Wert ohne Formatierung, also ohne Tausendertrennzeichen mit
30 mit einem Punkt als Dezimaltrennzeichen aus. Nützlich z.B., wenn
31 damit in der Vorlage z.B. von LaTeX gerechnet werden soll.</p></li><li class="listitem"><p>
32 <code class="option">NOESCAPE</code> unterdrückt das Escapen von
33 Sonderzeichen für die Vorlagensprache. Wenn also in einer
34 Variablen bereits gültiger LaTeX-Code steht und dieser von LaTeX
35 auch ausgewertet und nicht wortwörtlich angezeigt werden soll, so
36 ist dieses Flag sinnvoll.</p></li></ul></div><p>Beispiel:</p><pre class="programlisting"><%quototal NOFORMAT%></pre></div><div class="sect2" title="3.3.3. Verwendung in Druckbefehlen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.verwendung-in-druckbefehlen"></a>3.3.3. Verwendung in Druckbefehlen</h3></div></div></div><p>In der Admininstration können Drucker definiert werden. Auch im
37 dort eingebbaren Druckbefehl können die hier aufgelisteten Variablen
38 und Kontrollstrukturen verwendet werden. Ihr Inhalt wird dabei nach
39 den Regeln der gängigen Shells formatiert, sodass Sonderzeichen wie
40 <code class="function">`...`</code> nicht zu unerwünschtem Verhalten
41 führen.</p><p>Dies erlaubt z.B. die Definition eines Faxes als Druckerbefehl,
42 für das die Telefonnummer eines Ansprechpartners als Teil der
43 Kommandozeile verwendet wird. Für ein fiktives Kommando könnte das
44 z.B. wie folgt aussehen:</p><pre class="programlisting">send_fax --number <%if cp_phone2%><%cp_phone2%><%else%><%cp_phone1%><%end%></pre></div><div class="sect2" title="3.3.4. Anfang und Ende der Tags verändern"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.tag-style"></a>3.3.4. Anfang und Ende der Tags verändern</h3></div></div></div><p>Der Standardstil für Tags sieht vor, dass ein Tag mit dem
45 Kleinerzeichen und einem Prozentzeichen beginnt und mit dem
46 Prozentzeichen und dem Größerzeichen endet, beispielsweise
47 <code class="function"><%customer%></code>. Da diese Form aber z.B. in
48 LaTeX zu Problemen führen kann, weil das Prozentzeichen dort
49 Kommentare einleitet, kann pro HTML- oder LaTeX-Dokumentenvorlage der
50 Stil umgestellt werden.</p><p>Dazu werden in die Datei Zeilen geschrieben, die mit dem für das
51 Format gültigen Kommentarzeichen anfangen, dann
52 <code class="function">config:</code> enthalten, die entsprechende Option
53 setzen und bei HTML-Dokumentenvorlagen mit dem Kommentarendzeichen
54 enden. Beispiel für LaTeX:</p><pre class="programlisting">% config: tag-style=($ $)</pre><p>Dies würde kivitendo dazu veranlassen, Variablen zu ersetzen,
55 wenn sie wie folgt aussehen: <code class="function">($customer$)</code>. Das
56 äquivalente Beispiel für HTML-Dokumentenvorlagen sieht so aus:</p><pre class="programlisting"><!-- config: tag-style=($ $) --></pre></div><div class="sect2" title="3.3.5. Zuordnung von den Dateinamen zu den Funktionen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.zuordnung-dateinamen"></a>3.3.5. Zuordnung von den Dateinamen zu den Funktionen</h3></div></div></div><p>Diese folgende kurze Auflistung zeigt, welche Vorlage bei
57 welcher Funktion ausgelesen wird. Dabei ist die Dateiendung
58 "<code class="filename">.ext</code>" geeignet zu ersetzen:
59 "<code class="filename">.tex</code>" für LaTeX-Vorlagen und
60 "<code class="filename">.odt</code>" für OpenDocument-Vorlagen.</p><div class="variablelist"><dl><dt><span class="term">
61 <code class="filename">bin_list.ext</code>
62 </span></dt><dd><p>Lagerliste</p></dd><dt><span class="term">
63 <code class="filename">check.ext</code>
64 </span></dt><dd><p>?</p></dd><dt><span class="term">
65 <code class="filename">invoice.ext</code>
66 </span></dt><dd><p>Rechnung</p></dd><dt><span class="term">
67 <code class="filename">packing_list.ext</code>
68 </span></dt><dd><p>Packliste</p></dd><dt><span class="term">
69 <code class="filename">pick_list.ext</code>
70 </span></dt><dd><p>Sammelliste</p></dd><dt><span class="term">
71 <code class="filename">purchase_delivery_order.ext</code>
72 </span></dt><dd><p>Lieferschein (Einkauf)</p></dd><dt><span class="term">
73 <code class="filename">purcharse_order.ext</code>
74 </span></dt><dd><p>Bestellung an Lieferanten</p></dd><dt><span class="term">
75 <code class="filename">request_quotation.ext</code>
76 </span></dt><dd><p>Anfrage an Lieferanten</p></dd><dt><span class="term">
77 <code class="filename">sales_delivery_order.ext</code>
78 </span></dt><dd><p>Lieferschein (Verkauf)</p></dd><dt><span class="term">
79 <code class="filename">sales_order.ext</code>
80 </span></dt><dd><p>Bestellung</p></dd><dt><span class="term">
81 <code class="filename">sales_quotation.ext</code>
82 </span></dt><dd><p>Angebot an Kunden</p></dd><dt><span class="term">
83 <code class="filename">zahlungserinnerung.ext</code>
84 </span></dt><dd><p>Mahnung (Dateiname im Programm konfigurierbar)</p></dd><dt><span class="term">
85 <code class="filename">zahlungserinnerung_invoice.ext</code>
86 </span></dt><dd><p>Rechnung über Mahngebühren (Dateiname im Programm
87 konfigurierbar)</p></dd></dl></div></div><div class="sect2" title="3.3.6. Sprache, Drucker und E-Mail"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.dateinamen-erweitert"></a>3.3.6. Sprache, Drucker und E-Mail</h3></div></div></div><p>Angeforderte Sprache und Druckerkürzel in den Dateinamen mit
88 eingearbeitet. So wird aus der Vorlage
89 <code class="filename">sales_order.ext</code> bei Sprache
90 <code class="function">de</code> und Druckerkürzel <code class="function">lpr2</code>
91 der Vorlagenname <code class="filename">sales_order_de_lpr2.ext</code>.
92 Zusätzlich können für E-Mails andere Vorlagen erstellt werden, diese
93 bekommen dann noch das Kürzel <code class="filename">_email</code>, der
94 vollständige Vorlagenname wäre dann
95 <code class="filename">sales_order_email_de_lpr2.ext</code>. In allen Fällen
96 kann eine Standarddatei <code class="filename">default.ext</code> hinterlegt
97 werden. Diese wird verwendet, wenn keine der anderen Varianten
98 gefunden wird.</p><p>Die vollständige Suchreihenfolge für einen Verkaufsauftrag mit
99 der Sprache "de" und dem Drucker "lpr2", der per E-Mail im Format PDF
100 verschickt wird, ist:</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
101 <code class="filename">sales_order_email_de_lpr2.tex</code>
102 </p></li><li class="listitem"><p>
103 <code class="filename">sales_order_de_lpr2.tex</code>
104 </p></li><li class="listitem"><p>
105 <code class="filename">sales_order.tex</code>
106 </p></li><li class="listitem"><p>
107 <code class="filename">default.tex</code>
108 </p></li></ol></div><p>Die kurzen Varianten dieser Vorlagentitel müssen dann entweder
109 Standardwerte anzeigen, oder die angeforderten Werte selbst auswerten,
110 siehe dazu <a class="xref" href="ch03s03.html#dokumentenvorlagen-und-variablen.allgemeine-variablen.meta" title="3.3.7.1. Metainformationen zur angeforderten Vorlage">Metainformationen zur angeforderten Vorlage</a>.</p></div><div class="sect2" title="3.3.7. Allgemeine Variablen, die in allen Vorlagen vorhanden sind"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.allgemeine-variablen"></a>3.3.7. Allgemeine Variablen, die in allen Vorlagen vorhanden
111 sind</h3></div></div></div><div class="sect3" title="3.3.7.1. Metainformationen zur angeforderten Vorlage"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemeine-variablen.meta"></a>3.3.7.1. Metainformationen zur angeforderten Vorlage</h4></div></div></div><p>Diese Variablen liefern Informationen darüber welche Variante
112 einer Vorlage der Benutzer angefragt hat. Sie sind nützlich für
113 Vorlagenautoren, die aus einer zentralen Layoutvorlage die einzelnen
114 Formulare einbinden möchten.</p><div class="variablelist"><dl><dt><span class="term">
115 <code class="varname">template_meta.formname</code>
116 </span></dt><dd><p>Basisname der Vorlage. Identisch mit der <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.zuordnung-dateinamen" title="3.3.5. Zuordnung von den Dateinamen zu den Funktionen">Zurordnung
117 zu den Dateinamen</a> ohne die Erweiterung. Ein
118 Verkaufsauftrag enthält hier
119 <code class="constant">sales_order</code>.</p></dd><dt><span class="term">
120 <code class="varname">template_meta.language.description</code>
121 </span></dt><dd><p>Beschreibung der verwendeten Sprache</p></dd><dt><span class="term">
122 <code class="varname">template_meta.language.template_code</code>
123 </span></dt><dd><p>Vorlagenkürzel der verwendeten Sprache, identisch mit
124 dem Kürzel das im Dateinamen verwendetet wird.</p></dd><dt><span class="term">
125 <code class="varname">template_meta.language.output_numberformat</code>
126 </span></dt><dd><p>Zahlenformat der verwendeten Sprache in der Form
127 "<code class="constant">1.000,00</code>". Experimentell! Nur
128 interessant für Vorlagen die mit unformatierten Werten
129 arbeiten.</p></dd><dt><span class="term">
130 <code class="varname">template_meta.language.output_dateformat</code>
131 </span></dt><dd><p>Datumsformat der verwendeten Sprache in der Form
132 "<code class="constant">dd.mm.yyyy</code>". Experimentell! Nur
133 interessant für Vorlagen die mit unformatierten Werten
134 arbeiten.</p></dd><dt><span class="term">
135 <code class="varname">template_meta.format</code>
136 </span></dt><dd><p>Das angeforderte Format. Kann im Moment die Werte
137 <code class="constant">pdf</code>, <code class="constant">postscript</code>,
138 <code class="constant">html</code>, <code class="constant">opendocument</code>,
139 <code class="constant">opendocument_pdf</code> und
140 <code class="constant">excel</code> enthalten.</p></dd><dt><span class="term">
141 <code class="varname">template_meta.extension</code>
142 </span></dt><dd><p>Dateierweiterung, wie im Dateinamen. Wird aus
143 <code class="constant">format</code> entschieden.</p></dd><dt><span class="term">
144 <code class="varname">template_meta.media</code>
145 </span></dt><dd><p>Ausgabemedium. Kann zur Zeit die Werte
146 <code class="constant">screen</code> für Bildschirm,
147 <code class="constant">email</code> für E-Mail (triggert das
148 <code class="constant">_email</code> Kürzel im Dateinamen),
149 <code class="constant">printer</code> für Drucker, und
150 <code class="constant">queue</code> für Warteschlange enthalten.</p></dd><dt><span class="term">
151 <code class="varname">template_meta.printer.description</code>
152 </span></dt><dd><p>Beschreibung des ausgewählten Druckers</p></dd><dt><span class="term">
153 <code class="varname">template_meta.printer.template_code</code>
154 </span></dt><dd><p>Vorlagenürzel des ausgewählten Druckers, identisch mit
155 dem Kürzel das im Dateinamen verwendetet wird.</p></dd><dt><span class="term">
156 <code class="varname">template_meta.tmpfile</code>
157 </span></dt><dd><p>Datei-Prefix für temporäre Dateien.</p></dd></dl></div></div><div class="sect3" title="3.3.7.2. Stammdaten von Kunden und Lieferanten"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemeine-variablen.kunden-lieferanten"></a>3.3.7.2. Stammdaten von Kunden und Lieferanten</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
158 <code class="varname">account_number</code>
159 </span></dt><dd><p>Kontonummer</p></dd><dt><span class="term">
160 <code class="varname">bank</code>
161 </span></dt><dd><p>Name der Bank</p></dd><dt><span class="term">
162 <code class="varname">bank_code</code>
163 </span></dt><dd><p>Bankleitzahl</p></dd><dt><span class="term">
164 <code class="varname">bic</code>
165 </span></dt><dd><p>Bank-Identifikations-Code (Bank Identifier Code,
166 BIC)</p></dd><dt><span class="term">
167 <code class="varname">business</code>
168 </span></dt><dd><p>Kunden-/Lieferantentyp</p></dd><dt><span class="term">
169 <code class="varname">city</code>
170 </span></dt><dd><p>Stadt</p></dd><dt><span class="term">
171 <code class="varname">contact</code>
172 </span></dt><dd><p>Kontakt</p></dd><dt><span class="term">
173 <code class="varname">country</code>
174 </span></dt><dd><p>Land</p></dd><dt><span class="term">
175 <code class="varname">c_vendor_id</code>
176 </span></dt><dd><p>Lieferantennummer beim Kunden (nur Kunden)</p></dd><dt><span class="term">
177 <code class="varname">v_customer_id</code>
178 </span></dt><dd><p>Kundennummer beim Lieferanten (nur Lieferanten)</p></dd><dt><span class="term">
179 <code class="varname">cp_email</code>
180 </span></dt><dd><p>Email des Ansprechpartners</p></dd><dt><span class="term">
181 <code class="varname">cp_givenname</code>
182 </span></dt><dd><p>Vorname des Ansprechpartners</p></dd><dt><span class="term">
183 <code class="varname">cp_greeting</code>
184 </span></dt><dd><p>Anrede des Ansprechpartners</p></dd><dt><span class="term">
185 <code class="varname">cp_name</code>
186 </span></dt><dd><p>Name des Ansprechpartners</p></dd><dt><span class="term">
187 <code class="varname">cp_phone1</code>
188 </span></dt><dd><p>Telefonnummer 1 des Ansprechpartners</p></dd><dt><span class="term">
189 <code class="varname">cp_phone2</code>
190 </span></dt><dd><p>Telefonnummer 2 des Ansprechpartners</p></dd><dt><span class="term">
191 <code class="varname">cp_title</code>
192 </span></dt><dd><p>Titel des Ansprechpartners</p></dd><dt><span class="term">
193 <code class="varname">creditlimit</code>
194 </span></dt><dd><p>Kreditlimit</p></dd><dt><span class="term">
195 <code class="varname">customeremail</code>
196 </span></dt><dd><p>Email des Kunden; nur für Kunden</p></dd><dt><span class="term">
197 <code class="varname">customerfax</code>
198 </span></dt><dd><p>Faxnummer des Kunden; nur für Kunden</p></dd><dt><span class="term">
199 <code class="varname">customernotes</code>
200 </span></dt><dd><p>Bemerkungen beim Kunden; nur für Kunden</p></dd><dt><span class="term">
201 <code class="varname">customernumber</code>
202 </span></dt><dd><p>Kundennummer; nur für Kunden</p></dd><dt><span class="term">
203 <code class="varname">customerphone</code>
204 </span></dt><dd><p>Telefonnummer des Kunden; nur für Kunden</p></dd><dt><span class="term">
205 <code class="varname">discount</code>
206 </span></dt><dd><p>Rabatt</p></dd><dt><span class="term">
207 <code class="varname">email</code>
208 </span></dt><dd><p>Emailadresse</p></dd><dt><span class="term">
209 <code class="varname">fax</code>
210 </span></dt><dd><p>Faxnummer</p></dd><dt><span class="term">
211 <code class="varname">gln</code>
212 </span></dt><dd><p>GLN (Globale Lokationsnummer)</p></dd><dt><span class="term">
213 <code class="varname">greeting</code>
214 </span></dt><dd><p>Anrede</p></dd><dt><span class="term">
215 <code class="varname">homepage</code>
216 </span></dt><dd><p>Homepage</p></dd><dt><span class="term">
217 <code class="varname">iban</code>
218 </span></dt><dd><p>Internationale Kontonummer (International Bank Account
219 Number, IBAN)</p></dd><dt><span class="term">
220 <code class="varname">language</code>
221 </span></dt><dd><p>Sprache</p></dd><dt><span class="term">
222 <code class="varname">name</code>
223 </span></dt><dd><p>Firmenname</p></dd><dt><span class="term">
224 <code class="varname">payment_description</code>
225 </span></dt><dd><p>Name der Zahlart</p></dd><dt><span class="term">
226 <code class="varname">payment_terms</code>
227 </span></dt><dd><p>Zahlungskonditionen</p></dd><dt><span class="term">
228 <code class="varname">phone</code>
229 </span></dt><dd><p>Telefonnummer</p></dd><dt><span class="term">
230 <code class="varname">shiptocity</code>
231 </span></dt><dd><p>Stadt (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
232 </p></dd><dt><span class="term">
233 <code class="varname">shiptocontact</code>
234 </span></dt><dd><p>Kontakt (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
235 </p></dd><dt><span class="term">
236 <code class="varname">shiptocountry</code>
237 </span></dt><dd><p>Land (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
238 </p></dd><dt><span class="term">
239 <code class="varname">shiptodepartment_1</code>
240 </span></dt><dd><p>Abteilung 1 (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
241 </p></dd><dt><span class="term">
242 <code class="varname">shiptodepartment_2</code>
243 </span></dt><dd><p>Abteilung 2 (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
244 </p></dd><dt><span class="term">
245 <code class="varname">shiptoemail</code>
246 </span></dt><dd><p>Email (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
247 </p></dd><dt><span class="term">
248 <code class="varname">shiptofax</code>
249 </span></dt><dd><p>Fax (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
250 </p></dd><dt><span class="term">
251 <code class="varname">shiptogln</code>
252 </span></dt><dd><p>GLN (Globale Lokationsnummer) (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
253 </p></dd><dt><span class="term">
254 <code class="varname">shiptoname</code>
255 </span></dt><dd><p>Firmenname (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
256 </p></dd><dt><span class="term">
257 <code class="varname">shiptophone</code>
258 </span></dt><dd><p>Telefonnummer (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
259 </p></dd><dt><span class="term">
260 <code class="varname">shiptostreet</code>
261 </span></dt><dd><p>Straße und Hausnummer (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
262 </p></dd><dt><span class="term">
263 <code class="varname">shiptozipcode</code>
264 </span></dt><dd><p>Postleitzahl (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
265 </p></dd><dt><span class="term">
266 <code class="varname">street</code>
267 </span></dt><dd><p>Straße und Hausnummer</p></dd><dt><span class="term">
268 <code class="varname">taxnumber</code>
269 </span></dt><dd><p>Steuernummer</p></dd><dt><span class="term">
270 <code class="varname">ustid</code>
271 </span></dt><dd><p>Umsatzsteuer-Identifikationsnummer</p></dd><dt><span class="term">
272 <code class="varname">vendoremail</code>
273 </span></dt><dd><p>Email des Lieferanten; nur für Lieferanten</p></dd><dt><span class="term">
274 <code class="varname">vendorfax</code>
275 </span></dt><dd><p>Faxnummer des Lieferanten; nur für Lieferanten</p></dd><dt><span class="term">
276 <code class="varname">vendornotes</code>
277 </span></dt><dd><p>Bemerkungen beim Lieferanten; nur für Lieferanten</p></dd><dt><span class="term">
278 <code class="varname">vendornumber</code>
279 </span></dt><dd><p>Lieferantennummer; nur für Lieferanten</p></dd><dt><span class="term">
280 <code class="varname">vendorphone</code>
281 </span></dt><dd><p>Telefonnummer des Lieferanten; nur für
282 Lieferanten</p></dd><dt><span class="term">
283 <code class="varname">zipcode</code>
284 </span></dt><dd><p>Postleitzahl</p></dd></dl></div><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"><a name="dokumentenvorlagen-und-variablen.anmerkung-shipto"></a>Anmerkung</th></tr><tr><td align="left" valign="top"><p>Anmerkung: Sind die <code class="varname">shipto*</code>-Felder in den
285 Stammdaten nicht eingetragen, so haben die Variablen
286 <code class="varname">shipto*</code> den gleichen Wert wie die die
287 entsprechenden Variablen der Lieferdaten. Das bedeutet, dass sich
288 einige <code class="varname">shipto*</code>-Variablen so nicht in den
289 Stammdaten wiederfinden sondern schlicht Kopien der
290 Lieferdatenvariablen sind (z.B.
291 <code class="varname">shiptocontact</code>).</p></td></tr></table></div></div><div class="sect3" title="3.3.7.3. Informationen über den Bearbeiter"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemein-bearbeiter"></a>3.3.7.3. Informationen über den Bearbeiter</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
292 <code class="varname">employee_address</code>
293 </span></dt><dd><p>Adressfeld</p></dd><dt><span class="term">
294 <code class="varname">employee_businessnumber</code>
295 </span></dt><dd><p>Firmennummer</p></dd><dt><span class="term">
296 <code class="varname">employee_company</code>
297 </span></dt><dd><p>Firmenname</p></dd><dt><span class="term">
298 <code class="varname">employee_co_ustid</code>
299 </span></dt><dd><p>Usatzsteuer-Identifikationsnummer</p></dd><dt><span class="term">
300 <code class="varname">employee_duns</code>
301 </span></dt><dd><p>DUNS-Nummer</p></dd><dt><span class="term">
302 <code class="varname">employee_email</code>
303 </span></dt><dd><p>Email</p></dd><dt><span class="term">
304 <code class="varname">employee_fax</code>
305 </span></dt><dd><p>Fax</p></dd><dt><span class="term">
306 <code class="varname">employee_name</code>
307 </span></dt><dd><p>voller Name</p></dd><dt><span class="term">
308 <code class="varname">employee_signature</code>
309 </span></dt><dd><p>Signatur</p></dd><dt><span class="term">
310 <code class="varname">employee_taxnumber</code>
311 </span></dt><dd><p>Steuernummer</p></dd><dt><span class="term">
312 <code class="varname">employee_tel</code>
313 </span></dt><dd><p>Telefonnummer</p></dd></dl></div></div><div class="sect3" title="3.3.7.4. Informationen über den Verkäufer"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemein-verkaeufer"></a>3.3.7.4. Informationen über den Verkäufer</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
314 <code class="varname">salesman_address</code>
315 </span></dt><dd><p>Adressfeld</p></dd><dt><span class="term">
316 <code class="varname">salesman_businessnumber</code>
317 </span></dt><dd><p>Firmennummer</p></dd><dt><span class="term">
318 <code class="varname">salesman_company</code>
319 </span></dt><dd><p>Firmenname</p></dd><dt><span class="term">
320 <code class="varname">salesman_co_ustid</code>
321 </span></dt><dd><p>Usatzsteuer-Identifikationsnummer</p></dd><dt><span class="term">
322 <code class="varname">salesman_duns</code>
323 </span></dt><dd><p>DUNS-Nummer</p></dd><dt><span class="term">
324 <code class="varname">salesman_email</code>
325 </span></dt><dd><p>Email</p></dd><dt><span class="term">
326 <code class="varname">salesman_fax</code>
327 </span></dt><dd><p>Fax</p></dd><dt><span class="term">
328 <code class="varname">salesman_name</code>
329 </span></dt><dd><p>voller Name</p></dd><dt><span class="term">
330 <code class="varname">salesman_signature</code>
331 </span></dt><dd><p>Signatur</p></dd><dt><span class="term">
332 <code class="varname">salesman_taxnumber</code>
333 </span></dt><dd><p>Steuernummer</p></dd><dt><span class="term">
334 <code class="varname">salesman_tel</code>
335 </span></dt><dd><p>Telefonnummer</p></dd></dl></div></div><div class="sect3" title="3.3.7.5. Variablen für die einzelnen Steuern"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemein-steuern"></a>3.3.7.5. Variablen für die einzelnen Steuern</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
336 <code class="varname">tax</code>
337 </span></dt><dd><p>Steuer</p></dd><dt><span class="term">
338 <code class="varname">taxbase</code>
339 </span></dt><dd><p>zu versteuernder Betrag</p></dd><dt><span class="term">
340 <code class="varname">taxdescription</code>
341 </span></dt><dd><p>Name der Steuer</p></dd><dt><span class="term">
342 <code class="varname">taxrate</code>
343 </span></dt><dd><p>Steuersatz</p></dd></dl></div></div><div class="sect3" title="3.3.7.6. Variablen für Lieferbedingungen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemein-lieferbedingungen"></a>3.3.7.6. Variablen für Lieferbedingungen</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
344 <code class="varname">delivery_term</code>
345 </span></dt><dd><p>Datenbank-Objekt der Lieferbedingung</p></dd><dt><span class="term">
346 <code class="varname">delivery_term.description</code>
347 </span></dt><dd><p>Beschreibung der Lieferbedingung</p></dd><dt><span class="term">
348 <code class="varname">delivery_term.description_long</code>
349 </span></dt><dd><p>Langtext bzw. übersetzter Langtext der
350 Lieferbedingung</p></dd></dl></div></div></div><div class="sect2" title="3.3.8. Variablen in Rechnungen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.invoice"></a>3.3.8. Variablen in Rechnungen</h3></div></div></div><div class="sect3" title="3.3.8.1. Allgemeine Variablen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.invoice-allgemein"></a>3.3.8.1. Allgemeine Variablen</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
351 <code class="varname">creditremaining</code>
352 </span></dt><dd><p>Verbleibender Kredit</p></dd><dt><span class="term">
353 <code class="varname">currency</code>
354 </span></dt><dd><p>Währung</p></dd><dt><span class="term">
355 <code class="varname">cusordnumber</code>
356 </span></dt><dd><p>Bestellnummer beim Kunden</p></dd><dt><span class="term">
357 <code class="varname">deliverydate</code>
358 </span></dt><dd><p>Lieferdatum</p></dd><dt><span class="term">
359 <code class="varname">duedate</code>
360 </span></dt><dd><p>Fälligkeitsdatum</p></dd><dt><span class="term">
361 <code class="varname">globalprojectnumber</code>
362 </span></dt><dd><p>Projektnummer des ganzen Beleges</p></dd><dt><span class="term">
363 <code class="varname">globalprojectdescription</code>
364 </span></dt><dd><p>Projekbeschreibung des ganzen Beleges</p></dd><dt><span class="term">
365 <code class="varname">intnotes</code>
366 </span></dt><dd><p>Interne Bemerkungen</p></dd><dt><span class="term">
367 <code class="varname">invdate</code>
368 </span></dt><dd><p>Rechnungsdatum</p></dd><dt><span class="term">
369 <code class="varname">invnumber</code>
370 </span></dt><dd><p>Rechnungsnummer</p></dd><dt><span class="term">
371 <code class="varname">invtotal</code>
372 </span></dt><dd><p>gesamter Rechnungsbetrag</p></dd><dt><span class="term">
373 <code class="varname">notes</code>
374 </span></dt><dd><p>Bemerkungen der Rechnung</p></dd><dt><span class="term">
375 <code class="varname">orddate</code>
376 </span></dt><dd><p>Auftragsdatum</p></dd><dt><span class="term">
377 <code class="varname">ordnumber</code>
378 </span></dt><dd><p>Auftragsnummer, wenn die Rechnung aus einem Auftrag
379 erstellt wurde</p></dd><dt><span class="term">
380 <code class="varname">payment_description</code>
381 </span></dt><dd><p>Name der Zahlart</p></dd><dt><span class="term">
382 <code class="varname">payment_terms</code>
383 </span></dt><dd><p>Zahlungskonditionen</p></dd><dt><span class="term">
384 <code class="varname">quodate</code>
385 </span></dt><dd><p>Angebotsdatum</p></dd><dt><span class="term">
386 <code class="varname">quonumber</code>
387 </span></dt><dd><p>Angebotsnummer</p></dd><dt><span class="term">
388 <code class="varname">rounding</code>
389 </span></dt><dd><p>Betrag, um den <code class="varname">invtotal</code> gerundet wurde
390 (kann positiv oder negativ sein)</p></dd><dt><span class="term">
391 <code class="varname">shippingpoint</code>
392 </span></dt><dd><p>Versandort</p></dd><dt><span class="term">
393 <code class="varname">shipvia</code>
394 </span></dt><dd><p>Transportmittel</p></dd><dt><span class="term">
395 <code class="varname">subtotal</code>
396 </span></dt><dd><p>Zwischensumme aller Posten ohne Steuern</p></dd><dt><span class="term">
397 <code class="varname">total</code>
398 </span></dt><dd><p>Restsumme der Rechnung (Summe abzüglich bereits
399 bezahlter Posten)</p></dd><dt><span class="term">
400 <code class="varname">transaction_description</code>
401 </span></dt><dd><p>Vorgangsbezeichnung</p></dd><dt><span class="term">
402 <code class="varname">transdate</code>
403 </span></dt><dd><p>Auftragsdatum wenn die Rechnung aus einem Auftrag
404 erstellt wurde</p></dd></dl></div></div><div class="sect3" title="3.3.8.2. Variablen für jeden Posten auf der Rechnung"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.invoice-posten"></a>3.3.8.2. Variablen für jeden Posten auf der Rechnung</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
405 <code class="varname">bin</code>
406 </span></dt><dd><p>Stellage</p></dd><dt><span class="term">
407 <code class="varname">description</code>
408 </span></dt><dd><p>Artikelbeschreibung</p></dd><dt><span class="term">
409 <code class="varname">cusordnumber_oe</code>
410 </span></dt><dd><p>Bestellnummer des Kunden aus dem Auftrag, aus dem der
411 Posten ursprünglich stammt (nur Verkauf)</p></dd><dt><span class="term">
412 <code class="varname">discount</code>
413 </span></dt><dd><p>Rabatt als Betrag</p></dd><dt><span class="term">
414 <code class="varname">discount_sub</code>
415 </span></dt><dd><p>Zwischensumme mit Rabatt</p></dd><dt><span class="term">
416 <code class="varname">donumber_do</code>
417 </span></dt><dd><p>Lieferscheinnummer des Lieferscheins, aus dem die
418 Position ursprünglich stammt, wenn die Rechnung im Rahmen des
419 Workflows aus einem Lieferschein erstellt wurde.</p></dd><dt><span class="term">
420 <code class="varname">drawing</code>
421 </span></dt><dd><p>Zeichnung</p></dd><dt><span class="term">
422 <code class="varname">ean</code>
423 </span></dt><dd><p>EAN-Code</p></dd><dt><span class="term">
424 <code class="varname">image</code>
425 </span></dt><dd><p>Grafik</p></dd><dt><span class="term">
426 <code class="varname">linetotal</code>
427 </span></dt><dd><p>Zeilensumme (Anzahl * Einzelpreis)</p></dd><dt><span class="term">
428 <code class="varname">longdescription</code>
429 </span></dt><dd><p>Langtext</p></dd><dt><span class="term">
430 <code class="varname">microfiche</code>
431 </span></dt><dd><p>Mikrofilm</p></dd><dt><span class="term">
432 <code class="varname">netprice</code>
433 </span></dt><dd><p>Alternative zu <code class="varname">sellprice</code>, aber
434 <code class="varname">netprice</code> entspricht dem effektiven
435 Einzelpreis und beinhaltet Zeilenrabatt und Preisfaktor.
436 <code class="varname">netprice</code> wird rückgerechnet aus Zeilensumme
437 / Menge. Diese Variable ist nützlich, wenn man den gewährten
438 Rabatt in der Druckvorlage nicht anzeigen möchte, aber Menge *
439 Einzelpreis trotzdem die angezeigte Zeilensumme ergeben soll.
440 <code class="varname">netprice</code> hat nichts mit Netto/Brutto im
441 Sinne von Steuern zu tun.</p></dd><dt><span class="term">
442 <code class="varname">nodiscount_linetotal</code>
443 </span></dt><dd><p>Zeilensumme ohne Rabatt</p></dd><dt><span class="term">
444 <code class="varname">nodiscount_sub</code>
445 </span></dt><dd><p>Zwischensumme ohne Rabatt</p></dd><dt><span class="term">
446 <code class="varname">number</code>
447 </span></dt><dd><p>Artikelnummer</p></dd><dt><span class="term">
448 <code class="varname">ordnumber_oe</code>
449 </span></dt><dd><p>Auftragsnummer des Originalauftrags, aus dem der Posten
450 ursprünglich stammt. Nützlich, wenn die Rechnung aus mehreren
451 Lieferscheinen zusammengefasst wurde, oder wenn zwischendurch
452 eine Sammelauftrag aus mehreren Aufträgen erstellt wurde. In
453 letzterem Fall wird die unsprüngliche Auftragsnummer
454 angezeigt.</p></dd><dt><span class="term">
455 <code class="varname">p_discount</code>
456 </span></dt><dd><p>Rabatt in Prozent</p></dd><dt><span class="term">
457 <code class="varname">partnotes</code>
458 </span></dt><dd><p>Die beim Artikel gespeicherten Bemerkungen</p></dd><dt><span class="term">
459 <code class="varname">partsgroup</code>
460 </span></dt><dd><p>Warengruppe</p></dd><dt><span class="term">
461 <code class="varname">price_factor</code>
462 </span></dt><dd><p>Der Preisfaktor als Zahl, sofern einer eingestellt
463 ist</p></dd><dt><span class="term">
464 <code class="varname">price_factor_name</code>
465 </span></dt><dd><p>Der Name des Preisfaktors, sofern einer eingestellt
466 ist</p></dd><dt><span class="term">
467 <code class="varname">projectnumber</code>
468 </span></dt><dd><p>Projektnummer</p></dd><dt><span class="term">
469 <code class="varname">projectdescription</code>
470 </span></dt><dd><p>Projektbeschreibung</p></dd><dt><span class="term">
471 <code class="varname">qty</code>
472 </span></dt><dd><p>Anzahl</p></dd><dt><span class="term">
473 <code class="varname">reqdate</code>
474 </span></dt><dd><p>Lieferdatum</p></dd><dt><span class="term">
475 <code class="varname">runningnumber</code>
476 </span></dt><dd><p>Position auf der Rechnung (1, 2, 3...)</p></dd><dt><span class="term">
477 <code class="varname">sellprice</code>
478 </span></dt><dd><p>Verkaufspreis</p></dd><dt><span class="term">
479 <code class="varname">serialnumber</code>
480 </span></dt><dd><p>Seriennummer</p></dd><dt><span class="term">
481 <code class="varname">tax_rate</code>
482 </span></dt><dd><p>Steuersatz</p></dd><dt><span class="term">
483 <code class="varname">transdate_do</code>
484 </span></dt><dd><p>Datum des Lieferscheins, wenn die Rechnung im Rahmen des
485 Workflows aus einem Lieferschein stammte.</p></dd><dt><span class="term">
486 <code class="varname">transdate_oe</code>
487 </span></dt><dd><p>Datum des Auftrags, wenn die Rechnung im Rahmen des
488 Workflows aus einem Auftrag erstellt wurde. Wenn es
489 Sammelaufträge gab wird das Datum des ursprünglichen Auftrags
490 genommen.</p></dd><dt><span class="term">
491 <code class="varname">transdate_quo</code>
492 </span></dt><dd><p>Datum des Angebots, wenn die Position im Rahmen des
493 Workflows aus einem Angebot stammte.</p></dd><dt><span class="term">
494 <code class="varname">unit</code>
495 </span></dt><dd><p>Einheit</p></dd><dt><span class="term">
496 <code class="varname">weight</code>
497 </span></dt><dd><p>Gewicht</p></dd></dl></div><p>Für jeden Posten gibt es ein Unterarray mit den Informationen
498 über Lieferanten und Lieferantenartikelnummer. Diese müssen mit
499 einer <code class="function">foreach</code>-Schleife ausgegeben werden, da
500 für jeden Artikel mehrere Lieferanteninformationen hinterlegt sein
501 können. Die Variablen dafür lauten:</p><div class="variablelist"><dl><dt><span class="term">
502 <code class="varname">make</code>
503 </span></dt><dd><p>Lieferant</p></dd><dt><span class="term">
504 <code class="varname">model</code>
505 </span></dt><dd><p>Lieferantenartikelnummer</p></dd></dl></div></div><div class="sect3" title="3.3.8.3. Variablen für die einzelnen Zahlungseingänge"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.invoice-zahlungen"></a>3.3.8.3. Variablen für die einzelnen Zahlungseingänge</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
506 <code class="varname">payment</code>
507 </span></dt><dd><p>Betrag</p></dd><dt><span class="term">
508 <code class="varname">paymentaccount</code>
509 </span></dt><dd><p>Konto</p></dd><dt><span class="term">
510 <code class="varname">paymentdate</code>
511 </span></dt><dd><p>Datum</p></dd><dt><span class="term">
512 <code class="varname">paymentmemo</code>
513 </span></dt><dd><p>Memo</p></dd><dt><span class="term">
514 <code class="varname">paymentsource</code>
515 </span></dt><dd><p>Beleg</p></dd></dl></div></div><div class="sect3" title="3.3.8.4. Benutzerdefinierte Kunden- und Lieferantenvariablen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.benutzerdefinierte-variablen-vc"></a>3.3.8.4. Benutzerdefinierte Kunden- und Lieferantenvariablen</h4></div></div></div><p>Die vom Benutzer definierten Variablen für Kunden und
516 Lieferanten stehen beim Ausdruck von Einkaufs- und Verkaufsbelegen
517 ebenfalls zur Verfügung. Ihre Namen setzen sich aus dem Präfix
518 <code class="varname">vc_cvar_</code> und dem vom Benutzer festgelegten
519 Variablennamen zusammen.</p><p>Beispiel: Der Benutzer hat eine Variable namens
520 <code class="varname">number_of_employees</code> definiert, die die Anzahl der
521 Mitarbeiter des Unternehmens enthält. Diese Variable steht dann
522 unter dem Namen <code class="varname">vc_cvar_number_of_employees</code> zur
523 Verfügung.</p><p>Die benutzerdefinierten Variablen der Lieferadressen stehen
524 unter einem ähnlichen Namensschema zur Verfügung. Hier lautet der
525 Präfix <code class="varname">shiptocvar_</code>.</p></div></div><div class="sect2" title="3.3.9. Variablen in Mahnungen und Rechnungen über Mahngebühren"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.dunning"></a>3.3.9. Variablen in Mahnungen und Rechnungen über Mahngebühren</h3></div></div></div><div class="sect3" title="3.3.9.1. Namen der Vorlagen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.dunning-vorlagennamen"></a>3.3.9.1. Namen der Vorlagen</h4></div></div></div><p>Die Namen der Vorlagen werden im System-Menü vom Benutzer
526 eingegeben. Wird für ein Mahnlevel die Option zur automatischen
527 Erstellung einer Rechnung über die Mahngebühren und Zinsen
528 aktiviert, so wird der Name der Vorlage für diese Rechnung aus dem
529 Vorlagenname für diese Mahnstufe mit dem Zusatz
530 <code class="constant">_invoice</code> gebildet. Weiterhin werden die Kürzel
531 für die ausgewählte Sprache und den ausgewählten Drucker
532 angehängt.</p></div><div class="sect3" title="3.3.9.2. Allgemeine Variablen in Mahnungen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.dunning-allgemein"></a>3.3.9.2. Allgemeine Variablen in Mahnungen</h4></div></div></div><p>Die Variablen des Bearbeiters, bzw. Verkäufers stehen wie gewohnt als
533 <code class="varname">employee_...</code> bzw. <code class="varname">salesman_...</code> zur Verfügung.
534 Werden mehrere Rechnungen in einer Mahnung zusammengefasst, so werden
535 die Metadaten (Bearbeiter, Abteilung, etc) der ersten angemahnten Rechnung
536 im Ausdruck genommen.</p><p>Die Adressdaten des Kunden stehen als Variablen <code class="varname">name</code>,
537 <code class="varname">street</code>, <code class="varname">zipcode</code>,
538 <code class="varname">city</code>, <code class="varname">country</code>,
539 <code class="varname">department_1</code>, <code class="varname">department_2</code>,
540 und <code class="varname">email</code> zur Verfügung. Der Ansprechpartner <code class="varname">cp_...</code>
541 steht auch zu Verfügung, wird allerdings auch nur von der ersten angemahnten Rechnung (s.o.)
542 genommen.</p><p>Weitere Variablen beinhalten:</p><div class="variablelist"><dl><dt><span class="term">
543 <code class="varname">dunning_date</code>
544 </span></dt><dd><p>Datum der Mahnung</p></dd><dt><span class="term">
545 <code class="varname">dunning_duedate</code>
546 </span></dt><dd><p>Fälligkeitsdatum für diese Mahhnung</p></dd><dt><span class="term">
547 <code class="varname">dunning_id</code>
548 </span></dt><dd><p>Mahnungsnummer</p></dd><dt><span class="term">
549 <code class="varname">fee</code>
550 </span></dt><dd><p>Kumulative Mahngebühren</p></dd><dt><span class="term">
551 <code class="varname">interest_rate</code>
552 </span></dt><dd><p>Zinssatz per anno in Prozent</p></dd><dt><span class="term">
553 <code class="varname">total_amount</code>
554 </span></dt><dd><p>Gesamter noch zu zahlender Betrag als
555 <code class="function">fee</code> + <code class="function">total_interest</code>
556 + <code class="function">total_open_amount</code>
557 </p></dd><dt><span class="term">
558 <code class="varname">total_interest</code>
559 </span></dt><dd><p>Zinsen per anno über alle Rechnungen</p></dd><dt><span class="term">
560 <code class="varname">total_open_amount</code>
561 </span></dt><dd><p>Summe über alle offene Beträge der Rechnungen</p></dd></dl></div></div><div class="sect3" title="3.3.9.3. Variablen für jede gemahnte Rechnung in einer Mahnung"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.dunning-details"></a>3.3.9.3. Variablen für jede gemahnte Rechnung in einer Mahnung</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
562 <code class="varname">dn_amount</code>
563 </span></dt><dd><p>Rechnungssumme (brutto)</p></dd><dt><span class="term">
564 <code class="varname">dn_duedate</code>
565 </span></dt><dd><p>Originales Fälligkeitsdatum der Rechnung</p></dd><dt><span class="term">
566 <code class="varname">dn_dunning_date</code>
567 </span></dt><dd><p>Datum der Mahnung</p></dd><dt><span class="term">
568 <code class="varname">dn_dunning_duedate</code>
569 </span></dt><dd><p>Fälligkeitsdatum der Mahnung</p></dd><dt><span class="term">
570 <code class="varname">dn_fee</code>
571 </span></dt><dd><p>Kummulative Mahngebühr</p></dd><dt><span class="term">
572 <code class="varname">dn_interest</code>
573 </span></dt><dd><p>Zinsen per anno für diese Rechnung</p></dd><dt><span class="term">
574 <code class="varname">dn_invnumber</code>
575 </span></dt><dd><p>Rechnungsnummer</p></dd><dt><span class="term">
576 <code class="varname">dn_linetotal</code>
577 </span></dt><dd><p>Noch zu zahlender Betrag (ergibt sich aus
578 <code class="varname">dn_open_amount</code> + <code class="varname">dn_fee</code>
579 + <code class="varname">dn_interest</code>)</p></dd><dt><span class="term">
580 <code class="varname">dn_netamount</code>
581 </span></dt><dd><p>Rechnungssumme (netto)</p></dd><dt><span class="term">
582 <code class="varname">dn_open_amount</code>
583 </span></dt><dd><p>Offener Rechnungsbetrag</p></dd><dt><span class="term">
584 <code class="varname">dn_ordnumber</code>
585 </span></dt><dd><p>Bestellnummer</p></dd><dt><span class="term">
586 <code class="varname">dn_transdate</code>
587 </span></dt><dd><p>Rechnungsdatum</p></dd><dt><span class="term">
588 <code class="varname">dn_curr</code>
589 </span></dt><dd><p>Währung, in der die Rechnung erstellt wurde. (Die
590 Rechnungsbeträge sind aber immer in der Hauptwährung)</p></dd></dl></div></div><div class="sect3" title="3.3.9.4. Variablen in automatisch erzeugten Rechnungen über Mahngebühren"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.dunning-invoice"></a>3.3.9.4. Variablen in automatisch erzeugten Rechnungen über
591 Mahngebühren</h4></div></div></div><p>Die Variablen des Verkäufers stehen wie gewohnt als
592 <code class="varname">employee_...</code> zur Verfügung. Die Adressdaten des
593 Kunden stehen als Variablen <code class="varname">name</code>,
594 <code class="varname">street</code>, <code class="varname">zipcode</code>,
595 <code class="varname">city</code>, <code class="varname">country</code>,
596 <code class="varname">department_1</code>, <code class="varname">department_2</code>,
597 und <code class="varname">email</code> zur Verfügung.</p><p>Weitere Variablen beinhalten:</p><div class="variablelist"><dl><dt><span class="term">
598 <code class="varname">duedate</code>
599 </span></dt><dd><p>Fälligkeitsdatum der Rechnung</p></dd><dt><span class="term">
600 <code class="varname">dunning_id</code>
601 </span></dt><dd><p>Mahnungsnummer</p></dd><dt><span class="term">
602 <code class="varname">fee</code>
603 </span></dt><dd><p>Mahngebühren</p></dd><dt><span class="term">
604 <code class="varname">interest</code>
605 </span></dt><dd><p>Zinsen</p></dd><dt><span class="term">
606 <code class="varname">invamount</code>
607 </span></dt><dd><p>Rechnungssumme (ergibt sich aus <code class="varname">fee</code> +
608 <code class="varname">interest</code>)</p></dd><dt><span class="term">
609 <code class="varname">invdate</code>
610 </span></dt><dd><p>Rechnungsdatum</p></dd><dt><span class="term">
611 <code class="varname">invnumber</code>
612 </span></dt><dd><p>Rechnungsnummer</p></dd></dl></div></div></div><div class="sect2" title="3.3.10. Variablen in anderen Vorlagen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.andere-vorlagen"></a>3.3.10. Variablen in anderen Vorlagen</h3></div></div></div><div class="sect3" title="3.3.10.1. Einführung"><div class="titlepage"><div><div><h4 class="title"><a name="d0e5546"></a>3.3.10.1. Einführung</h4></div></div></div><p>Die Variablen in anderen Vorlagen sind ähnlich wie in der
613 Rechnung. Allerdings heißen die Variablen, die mit
614 <code class="varname">inv</code> beginnen, jetzt anders. Bei den Angeboten
615 fangen sie mit <code class="varname">quo</code> für "quotation" an:
616 <code class="varname">quodate</code> für Angebotsdatum etc. Bei Bestellungen
617 wiederum fangen sie mit <code class="varname">ord</code> für "order" an:
618 <code class="varname">ordnumber</code> für Bestellnummer etc.</p><p>Manche Variablen sind in anderen Vorlagen hingegen gar nicht
619 vorhanden wie z.B. die für bereits verbuchte Zahlungseingänge. Dies
620 sind Variablen, die vom Geschäftsablauf her in der entsprechenden
621 Vorlage keine Bedeutung haben oder noch nicht belegt sein
622 können.</p><p>Im Folgenden werden nur wichtige Unterschiede zu den Variablen
623 in Rechnungen aufgeführt.</p></div><div class="sect3" title="3.3.10.2. Angebote und Preisanfragen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.andere-vorlagen-quotations"></a>3.3.10.2. Angebote und Preisanfragen</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
624 <code class="varname">quonumber</code>
625 </span></dt><dd><p>Angebots- bzw. Anfragenummer</p></dd><dt><span class="term">
626 <code class="varname">reqdate</code>
627 </span></dt><dd><p>Gültigkeitsdatum (bei Angeboten) bzw. Lieferdatum (bei
628 Preisanfragen)</p></dd><dt><span class="term">
629 <code class="varname">transdate</code>
630 </span></dt><dd><p>Angebots- bzw. Anfragedatum</p></dd></dl></div></div><div class="sect3" title="3.3.10.3. Auftragsbestätigungen und Lieferantenaufträge"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.andere-vorlagen-orders"></a>3.3.10.3. Auftragsbestätigungen und Lieferantenaufträge</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
631 <code class="varname">ordnumber</code>
632 </span></dt><dd><p>Auftragsnummer</p></dd><dt><span class="term">
633 <code class="varname">reqdate</code>
634 </span></dt><dd><p>Lieferdatum</p></dd><dt><span class="term">
635 <code class="varname">transdate</code>
636 </span></dt><dd><p>Auftragsdatum</p></dd></dl></div></div><div class="sect3" title="3.3.10.4. Lieferscheine (Verkauf und Einkauf)"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.andere-vorlagen-delivery-orders"></a>3.3.10.4. Lieferscheine (Verkauf und Einkauf)</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
637 <code class="varname">cusordnumber</code>
638 </span></dt><dd><p>Bestellnummer des Kunden (im Verkauf) bzw. Bestellnummer
639 des Lieferanten (im Einkauf)</p></dd><dt><span class="term">
640 <code class="varname">donumber</code>
641 </span></dt><dd><p>Lieferscheinnummer</p></dd><dt><span class="term">
642 <code class="varname">transdate</code>
643 </span></dt><dd><p>Lieferscheindatum</p></dd></dl></div><p>Für jede Position eines Lieferscheines gibt es ein Unterarray
644 mit den Informationen darüber, von welchem Lager und Lagerplatz aus
645 die Waren verschickt wurden (Verkaufslieferscheine) bzw. auf welchen
646 Lagerplatz sie eingelagert wurden. Diese müssen mittels einer
647 <code class="function">foreach</code>-Schleife ausgegeben werden. Diese
648 Variablen sind:</p><div class="variablelist"><dl><dt><span class="term">
649 <code class="varname">si_bin</code>
650 </span></dt><dd><p>Lagerplatz</p></dd><dt><span class="term">
651 <code class="varname">si_chargenumber</code>
652 </span></dt><dd><p>Chargennummer</p></dd><dt><span class="term">
653 <code class="varname">si_bestbefore</code>
654 </span></dt><dd><p>Mindesthaltbarkeit</p></dd><dt><span class="term">
655 <code class="varname">si_number</code>
656 </span></dt><dd><p>Artikelnummer</p></dd><dt><span class="term">
657 <code class="varname">si_qty</code>
658 </span></dt><dd><p>Anzahl bzw. Menge</p></dd><dt><span class="term">
659 <code class="varname">si_runningnumber</code>
660 </span></dt><dd><p>Positionsnummer (1, 2, 3 etc)</p></dd><dt><span class="term">
661 <code class="varname">si_unit</code>
662 </span></dt><dd><p>Einheit</p></dd><dt><span class="term">
663 <code class="varname">si_warehouse</code>
664 </span></dt><dd><p>Lager</p></dd></dl></div></div><div class="sect3" title="3.3.10.5. Variablen für Sammelrechnung"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.andere-vorlagen-statement"></a>3.3.10.5. Variablen für Sammelrechnung</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
665 <code class="varname">c0total</code>
666 </span></dt><dd><p>Gesamtbetrag aller Rechnungen mit Fälligkeit < 30
667 Tage</p></dd><dt><span class="term">
668 <code class="varname">c30total</code>
669 </span></dt><dd><p>Gesamtbetrag aller Rechnungen mit Fälligkeit >= 30
670 und < 60 Tage</p></dd><dt><span class="term">
671 <code class="varname">c60total</code>
672 </span></dt><dd><p>Gesamtbetrag aller Rechnungen mit Fälligkeit >= 60
673 und < 90 Tage</p></dd><dt><span class="term">
674 <code class="varname">c90total</code>
675 </span></dt><dd><p>Gesamtbetrag aller Rechnungen mit Fälligkeit >= 90
676 Tage</p></dd><dt><span class="term">
677 <code class="varname">total</code>
678 </span></dt><dd><p>Gesamtbetrag aller Rechnungen</p></dd></dl></div><p>Variablen für jede Rechnungsposition in Sammelrechnung:</p><div class="variablelist"><dl><dt><span class="term">
679 <code class="varname">invnumber</code>
680 </span></dt><dd><p>Rechnungsnummer</p></dd><dt><span class="term">
681 <code class="varname">invdate</code>
682 </span></dt><dd><p>Rechnungsdatum</p></dd><dt><span class="term">
683 <code class="varname">duedate</code>
684 </span></dt><dd><p>Fälligkeitsdatum</p></dd><dt><span class="term">
685 <code class="varname">amount</code>
686 </span></dt><dd><p>Summe der Rechnung</p></dd><dt><span class="term">
687 <code class="varname">open</code>
688 </span></dt><dd><p>Noch offener Betrag der Rechnung</p></dd><dt><span class="term">
689 <code class="varname">c0</code>
690 </span></dt><dd><p>Noch offener Rechnungsbetrag mit Fälligkeit < 30
691 Tage</p></dd><dt><span class="term">
692 <code class="varname">c30</code>
693 </span></dt><dd><p>Noch offener Rechnungsbetrag mit Fälligkeit >= 30 und
694 < 60 Tage</p></dd><dt><span class="term">
695 <code class="varname">c60</code>
696 </span></dt><dd><p>Noch offener Rechnungsbetrag mit Fälligkeit >= 60 und
697 < 90 Tage</p></dd><dt><span class="term">
698 <code class="varname">c90</code>
699 </span></dt><dd><p>Noch offener Rechnungsbetrag mit Fälligkeit >= 90
700 Tage</p></dd></dl></div></div></div><div class="sect2" title="3.3.11. Blöcke, bedingte Anweisungen und Schleifen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.bloecke"></a>3.3.11. Blöcke, bedingte Anweisungen und Schleifen</h3></div></div></div><div class="sect3" title="3.3.11.1. Einführung"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.bloecke.einfuehrung"></a>3.3.11.1. Einführung</h4></div></div></div><p>Der Parser kennt neben den Variablen einige weitere
701 Konstrukte, die gesondert behandelt werden. Diese sind wie
702 Variablennamen in spezieller Weise markiert:
703 <span class="command"><strong><%anweisung%> ... <%end%></strong></span>
704 </p><p>Anmerkung zum <span class="command"><strong><%end%></strong></span>: Der besseren
705 Verständlichkeit halber kann man nach dem <span class="command"><strong>end</strong></span>
706 noch beliebig weitere Wörter schreiben, um so zu markieren, welche
707 Anweisung (z.B. <span class="command"><strong>if</strong></span> oder
708 <span class="command"><strong>foreach</strong></span>) damit abgeschlossen wird.</p><p>Beispiel: Lautet der Beginn eines Blockes z.B.
709 <span class="command"><strong><%if type == "sales_quotation"%></strong></span>, so könnte
710 er mit <span class="command"><strong><%end%></strong></span> genauso abgeschlossen werden
711 wie mit <span class="command"><strong><%end if%></strong></span> oder auch
712 <span class="command"><strong><%end type == "sales_quotation"%></strong></span>.</p></div><div class="sect3" title="3.3.11.2. Der if-Block"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.bloecke.if"></a>3.3.11.2. Der if-Block</h4></div></div></div><pre class="programlisting"><%if variablenname%>
714 <%end%></pre><p>Eine normale "if-then"-Bedingung. Die Zeilen zwischen dem "if"
715 und dem "end" werden nur ausgegeben, wenn die Variable
716 <code class="varname">variablenname</code> gesetzt und ungleich 0 ist.</p><p>Handelt es sich bei der benannten Variable um ein Array, also
717 um einen Variablennamen, über den man mit <span class="command"><strong><%foreach
718 variablenname%></strong></span> iteriert, so wird mit diesem Konstrukt
719 darauf getestet, ob das Array Elemente enthält. Somit würde im
720 folgenden Beispiel nur dann eine Liste von Zahlungseingängen samt
721 ihrer Überschrift "Zahlungseingänge" ausgegeben, wenn tatsächlich
722 welche getätigt wurden:</p><pre class="programlisting"><%if payment%>
724 <%foreach payment%>
725 Am <%paymentdate%>: <%payment%> €
726 <%end foreach%>
727 <%end if%></pre><p>Die Bedingung kann auch negiert werden, indem das Wort
728 <code class="function">not</code> nach dem <code class="filename">if</code> verwendet
729 wird. Beispiel:</p><pre class="programlisting"><%if not cp_greeting%>
731 <%end%></pre><p>Zusätzlich zu dem einfachen Test, ob eine Variable gesetzt ist
732 oder nicht, bietet dieser Block auch die Möglichkeit, den Inhalt
733 einer Variablen mit einer festen Zeichenkette oder einer anderen
734 Variablen zu vergleichen. Ob der Vergleich mit einer Zeichenkette
735 oder einer anderen Variablen vorgenommen wird, hängt davon ab, ob
736 die rechte Seite des Vergleichsoperators in Anführungszeichen
737 gesetzt wird (Vergleich mit Zeichenkette) oder nicht (Vergleich mit
738 anderer Variablen). Zwei Beispiele, die beide Vergleiche
739 zeigen:</p><pre class="programlisting"><%if var1 == "Wert"%></pre><p>Testet die Variable <code class="varname">var1</code> auf
740 übereinstimmung mit der Zeichenkette <code class="constant">Wert</code>.
741 Mittels <code class="function">!=</code> anstelle von <code class="function">==</code>
742 würde auf Ungleichheit getestet.</p><pre class="programlisting"><%if var1 == var2%></pre><p>Testet die Variable <code class="varname">var1</code> auf
743 übereinstimmung mit der Variablen <code class="varname">var2</code>. Mittel
744 <code class="function">!=</code> anstelle von <code class="function">==</code> würde
745 auf Ungleichheit getestet.</p><p>Erfahrere Benutzer können neben der Tests auf (Un-)Gleichheit
746 auch Tests auf Übereinstimmung mit regulären Ausdrücken ohne
747 Berücksichtung der Groß- und Kleinschreibung durchführen. Dazu dient
748 dieselbe Syntax wie oben nur mit <code class="function">=~</code> und
749 <code class="function">!~</code> als Vergleichsoperatoren.</p><p>Beispiel für einen Test, ob die Variable
750 <code class="varname">intnotes</code> (interne Bemerkungen) das Wort
751 <code class="constant">schwierig</code> enthält:</p><pre class="programlisting"><%if intnotes =~ "schwierig"%></pre></div><div class="sect3" title="3.3.11.3. Der foreach-Block"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.bloecke.foreach"></a>3.3.11.3. Der foreach-Block</h4></div></div></div><pre class="programlisting"><%foreach variablenname%>
753 <%end%></pre><p>Fügt die Zeilen zwischen den beiden Anweisungen so oft ein,
754 wie das Perl-Array der Variablen <code class="varname">variablenname</code>
755 Elemente enthät. Dieses Konstrukt wird zur Ausgabe der einzelnen
756 Posten einer Rechnung / eines Angebots sowie zur Ausgabe der Steuern
757 benutzt. In jedem Durchlauf werden die <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.invoice-posten" title="3.3.8.2. Variablen für jeden Posten auf der Rechnung">zeilenbezogenen
758 Variablen</a> jeweils auf den Wert für die aktuelle Position
759 gesetzt.</p><p>Die Syntax sieht normalerweise wie folgt aus:</p><pre class="programlisting"><%foreach number%>
760 Position: <%runningnumber%>
761 Anzahl: <%qty%>
762 Artikelnummer: <%number%>
763 Beschreibung: <%description%>
765 <%end%></pre><p>Besonderheit in OpenDocument-Vorlagen: Tritt ein
766 <code class="function"><%foreach%></code>-Block innerhalb einer
767 Tabellenzelle auf, so wird die komplette Tabellenzeile so oft
768 wiederholt wie notwendig. Tritt er außerhalb auf, so wird nur der
769 Inhalt zwischen <code class="function"><%foreach%></code> und
770 <code class="function"><%end%></code> wiederholt, nicht aber die
771 komplette Zeile, in der er steht.</p></div></div><div class="sect2" title="3.3.12. Markup-Code zur Textformatierung innerhalb von Formularen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.markup"></a>3.3.12. Markup-Code zur Textformatierung innerhalb von
772 Formularen</h3></div></div></div><p>Wenn der Benutzer innhalb von Formularen in kivitendo Text
773 anders formatiert haben möchte, so ist dies begrenzt möglich.
774 kivitendo unterstützt die Textformatierung mit HTML-ähnlichen Tags.
775 Der Benutzer kann z.B. bei der Artikelbeschreibung auf einer Rechnung
776 Teile des Texts zwischen Start- und Endtags setzen. Dieser Teil wird
777 dann automatisch in Anweisungen für das ausgewählte Vorlagenformat
778 (HTML oder PDF über LaTeX) umgesetzt.</p><p>Die unterstützen Formatierungen sind:</p><div class="variablelist"><dl><dt><span class="term"><b>Text</b></span></dt><dd><p>Text wird in Fettdruck gesetzt.</p></dd><dt><span class="term"><i>Text</i></span></dt><dd><p>Text wird kursiv gesetzt.</p></dd><dt><span class="term"><u>Text</u></span></dt><dd><p>Text wird unterstrichen.</p></dd><dt><span class="term"><s>Text</s></span></dt><dd><p>Text wird durchgestrichen. Diese Formatierung ist nicht
779 bei der Ausgabe als PDF über LaTeX verfügbar.</p></dd><dt><span class="term"><bullet></span></dt><dd><p>Erzeugt einen ausgefüllten Kreis für Aufzählungen (siehe
780 unten).</p></dd></dl></div><p>Der Befehl <span class="command"><strong><bullet></strong></span> funktioniert
781 momentan auch nur in Latex-Vorlagen.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s02.html">Zurück</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Nach oben</a></td><td width="40%" align="right"> <a accesskey="n" href="ch03s04.html">Weiter</a></td></tr><tr><td width="40%" align="left" valign="top">3.2. Bankerweiterung </td><td width="20%" align="center"><a accesskey="h" href="index.html">Zum Anfang</a></td><td width="40%" align="right" valign="top"> 3.4. Excel-Vorlagen</td></tr></table></div></body></html>