pagebreak-Mechanismus entfernen
[kivitendo-erp.git] / doc / dokumentenvorlagen-und-variablen.html
1 <html>
2  <head>
3   <title>Dokumentenvorlagen und verf&uuml;gbare Variablen</title>
4   <style type="text/css">
5   <!--
6 .blue {
7            color: #000000;
8            background-color: #b0ecff;
9            border: 1px solid blue;
10            padding-left: 2px;
11            padding-right: 2px;
12            }
13
14 table {
15         color: #000000;
16         background-color: #fae8b8;
17         border: 1px solid #be5303;
18         border-collapse: collapse;
19         }
20
21 td {
22      border: 1px solid #be5303;
23      padding: 3px;
24      }
25     -->
26   </style>
27
28  </head>
29
30 <body>
31
32  <h1>Dokumentenvorlagen und verf&uuml;gbare Variablen</h1>
33
34  <p>geschrieben von <a href="mailto:m.bunkus@linet-services.de">Moritz
35    Bunkus</a>. Version: $Id$ </p>
36
37  <hr>
38
39  <h2><a name="inhaltsverzeichnis">Inhaltsverzeichnis</a></h2>
40
41  <ol>
42   <li><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
43     Inhaltsverzeichnis</a></li>
44
45   <li><a href="dokumentenvorlagen-und-variablen.html#einfuehrung">Einf&uuml;hrung</a>
46   </li>
47
48   <li><a href="dokumentenvorlagen-und-variablen.html#zuordnung_dateinamen">
49     Zuordnung von Dateinamen zu den Funktionen</a></li>
50
51   <li><a href="#variablen_ausgeben">Variablen ausgeben</a>
52   </li>
53
54   <li><a href="dokumentenvorlagen-und-variablen.html#tag_style">
55     Anfang und Ende der Tags ver&auml;ndern</a></li>
56
57   <li><a href="dokumentenvorlagen-und-variablen.html#allgemeine_variablen">
58     Allgemeine Variablen, die in allen Vorlagen vorhanden sind</a><br>
59
60    <ol>
61     <li><a href="dokumentenvorlagen-und-variablen.html#allgemein_stammdaten">
62       Stammdaten von Kunden und Lieferanten</a></li>
63
64     <li><a href="dokumentenvorlagen-und-variablen.html#allgemein_bearbeiter">
65       Informationen &uuml;ber den Bearbeiter</a></li>
66
67     <li><a href="dokumentenvorlagen-und-variablen.html#allgemein_verkaeufer">
68       Informationen &uuml;ber den Verk&auml;ufer</a></li>
69
70     <li><a href="dokumentenvorlagen-und-variablen.html#allgemein_steuern">
71       Variablen f&uuml;r jede Steuer</a></li>
72    </ol>
73   </li>
74
75   <li><a href="dokumentenvorlagen-und-variablen.html#invoice">
76     Variablen in Rechnungen</a>
77
78    <ol>
79     <li><a href="dokumentenvorlagen-und-variablen.html#invoice_allgemein">
80       Allgemeine Variablen</a></li>
81
82     <li><a href="dokumentenvorlagen-und-variablen.html#invoice_posten">
83       Variablen f&uuml;r jeden Posten auf der Rechnung</a></li>
84
85     <li><a href="dokumentenvorlagen-und-variablen.html#invoice_zahlungen">
86       Variablen f&uuml;r die Zahlungseing&auml;nge</a></li>
87
88     <li><a href="dokumentenvorlagen-und-variablen.html#invoice_benutzerdefinierte_variablen_vc">
89       Benutzerdefinierte Kunden- und Lieferantenvariablen</a></li>
90    </ol>
91   </li>
92
93   <li><a href="dokumentenvorlagen-und-variablen.html#dunning">
94     Variablen in Mahnungen und Rechnungen &uuml;ber Mahngeb&uuml;hren</a>
95
96    <ol>
97     <li><a href="dokumentenvorlagen-und-variablen.html#dunning_vorlagennamen">
98       Namen der Vorlagen</a></li>
99
100     <li><a href="dokumentenvorlagen-und-variablen.html#dunning_allgemein">
101       Allgemeine Variablen in Mahnungen</a></li>
102
103     <li><a href="dokumentenvorlagen-und-variablen.html#dunning_details">
104       Variablen f&uuml;r jede gemahnte Rechnung in einer Mahnung</a></li>
105
106     <li><a href="dokumentenvorlagen-und-variablen.html#dunning_invoice">
107       Variablen in automatisch erzeugten Rechnungen &uuml;ber Mahngeb&uuml;hren</a></li>
108    </ol>
109   </li>
110
111   <li><a href="dokumentenvorlagen-und-variablen.html#anderevorlagen">
112     Variablen in anderen Vorlagen</a>
113
114    <ol>
115     <li><a href="dokumentenvorlagen-und-variablen.html#anderevorlagen_quotations">Angebote und Preisanfragen</a></li>
116     <li><a href="dokumentenvorlagen-und-variablen.html#anderevorlagen_orders">Auftragsbest&auml;tigungen und Lieferantenauftr&auml;ge</a></li>
117     <li><a href="dokumentenvorlagen-und-variablen.html#anderevorlagen_delivery_orders">Lieferscheine (Verkauf und Einkauf)</a></li>
118     <li><a href="dokumentenvorlagen-und-variablen.html#anderevorlagen_statement">Sammelrechnung</a></li>
119    </ol>
120   </li>
121
122   <li><a href="dokumentenvorlagen-und-variablen.html#bloecke">
123     Bl&ouml;cke, bedingte Anweisungen und Schleifen</a>
124
125    <ol>
126     <li><a href="dokumentenvorlagen-und-variablen.html#bloecke_if">
127       Der <code>if</code>-Block</a></li>
128
129     <li><a href="dokumentenvorlagen-und-variablen.html#bloecke_foreach">
130       Die <code>foreach</code>-Schleife</a></li>
131    </ol>
132   </li>
133
134   <li><a href="dokumentenvorlagen-und-variablen.html#markup">
135     Markup-Code, der innerhalb von Formularen zur Textformatierung verwendet
136     werden kann</a></li>
137
138  </ol>
139
140  <hr>
141
142  <h2><a name="einfuehrung">Einf&uuml;hrung</a></h2>
143
144  <p>Dies ist eine Auflistung der Standard-Dokumentenvorlagen und aller
145   zur Bearbeitung verf&uuml;gbaren Variablen. Eine Variable wird in
146   einer Vorlage durch ihren Inhalt ersetzt, wenn sie in der Form
147   <code>&lt;%variablenname%&gt;</code> verwendet wird. F&uuml;r LaTeX-
148   und HTML-Vorlagen kann man die Form dieser Tags auch
149   <a href="dokumentenvorlagen-und-variablen.html#tag_style">
150    ver&auml;ndern</a>.
151  </p>
152
153  <p>Einige Zahlenwerte werden auch in unformatierter Form zur Verf&uuml;gung
154   gestellt (also z.B. 35 statt 35,00 oder 12.3 statt 12,30). Der Dezimaltrenner
155   ist dabei also immer ein Punkt unabhaengig vom eingestellten Zahlenformat.
156   Diese Variabelen kann man mit der Erweiterung _nofmt (f&uuml;r  no-format) aufrufen
157   (also z.B. netprice = 12,30 -- netprice_nofmt = 12.3). Variabeln die zus&auml;tzlich
158   unformatiert zur Verf&uuml;gung stehen sind unten als variable[_nofmt] gelistet.
159   Die Eckigen Klammern weisen also auf eine optionale Verw&auml;ndung der Erweiterung hin.
160   </p>
161
162  <p>Fr&uuml;her wurde hier nur &uuml;ber LaTeX gesprochen. Inzwischen
163   unterst&uuml;tzt Lx-Office aber auch OpenDocument-Vorlagen. Sofern
164   es nicht ausdr&uuml;cklich eingeschr&auml;nkt wird, gilt das im
165   Folgenden gesagte f&uuml;r alle Vorlagenarten.</p>
166
167  <p>Insgesamt sind technisch gesehen eine ganze Menge mehr Variablen
168   verf&uuml;gbar als hier aufgelistet werden. Die meisten davon k&ouml;nnen
169   allerdings innerhalb einer solchen Vorlage nicht sinnvoll verwendet
170   werden. Wenn eine Auflistung dieser Variablen gewollt ist, so kann diese wie
171   folgt erhalten werden:</p>
172
173  <ol>
174
175   <li><code>SL/Form.pm</code> &ouml;ffnen und am Anfang die Zeile
176    <pre>"use Data::Dumper;"</pre> einf&uuml;gen.</li>
177
178   <li>In <code>Form.pm</code> die Funktion <code>parse_template</code>
179    suchen und hier die Zeile <pre>print(STDERR Dumper($self));</pre>
180    einf&uuml;gen.</li>
181
182   <li>Einmal per Browser die gew&uuml;nschte Vorlage "benutzen", z.B. ein PDF
183    f&uuml;r eine Rechnung erzeugen.</li>
184
185   <li>Im <code>error.log</code> vom Apache steht die Ausgabe der Variablen
186    <code>$self</code> in der Form <code>'key' =&gt; 'value',</code>. Alle
187    <code>key</code>s sind verf&uuml;gbar.</li>
188
189  </ol>
190
191  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
192    zum Inhaltsverzeichnis</a></small><br>
193  <hr>
194
195  <h2><a name="variablen_ausgeben">Variablen ausgeben</a></h2>
196
197  <p>Um eine Variable auszugeben, müssen sie einfach nur zwischen die
198   Tags geschrieben werden, also
199   z.B. <code>&lt;%variablenname%&gt;</code>.</p>
200
201  <p>
202   Optional kann man auch mit Leerzeichen getrennte Flags angeben, die
203   man aber nur selten brauchen wird. Die Syntax sieht also so
204   aus: <code>&lt;%variablenname FLAG1 FLAG2%&gt;</code>. Momentan werden
205   die folgenden Flags unterstützt:
206  </p>
207
208  <ul>
209   <li>
210    <code>NOFORMAT</code> gilt nur für Zahlenwerte und gibt den Wert
211    ohne Formatierung, also ohne Tausendertrennzeichen mit mit einem
212    Punkt als Dezimaltrennzeichen aus. Nützlich z.B., wenn damit in der
213    Vorlage z.B. von LaTeX gerechnet werden soll.
214   </li>
215
216   <li>
217    <code>NOESCAPE</code> unterdrückt das Escapen von Sonderzeichen für
218    die Vorlagensprache. Wenn also in einer Variablen bereits gültiger
219    LaTeX-Code steht und dieser von LaTeX auch ausgewertet und nicht
220    wortwörtlich angezeigt werden soll, so ist dieses Flag sinnvoll.
221   </li>
222  </ul>
223
224  <p>
225   Beispiel: <code class="blue">&lt;%quototal NOFORMAT%&gt;</code>
226  </p>
227
228  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
229    zum Inhaltsverzeichnis</a></small><br>
230  <hr>
231
232  <h2><a name="tag_style">
233    Anfang und Ende der Tags ver&auml;ndern</a></h2>
234
235  <p>Der Standardstil f&uuml;r Tags sieht vor, dass ein Tag mit dem
236   Kleinerzeichen und einem Prozentzeichen beginnt und mit dem
237   Prozentzeichen und dem Gr&ouml;&szlig;erzeichen endet,
238   beispielsweise <code>&lt;%customer%&gt;</code>. Da diese Form aber
239   z.B. in LaTeX zu Problemen f&uuml;hren kann, weil das Prozentzeichen
240   dort Kommentare einleitet, kann pro HTML- oder
241   LaTeX-Dokumentenvorlage der Stil umgestellt werden.</p>
242
243  <p>Dazu werden in die Datei Zeilen geschrieben, die mit dem f&uuml;r
244   das Format g&uuml;ltigen Kommentarzeichen anfangen,
245   dann <code>config:</code> enthalten, die entsprechende Option setzen
246   und bei HTML-Dokumentenvorlagen mit dem Kommentarendzeichen
247   enden. Beispiel f&uuml;r LaTeX:</p>
248
249  <p><code>% config: tag-style=($ $)</code></p>
250
251  <p>Dies w&uuml;rde Lx-Office dazu veranlassen, Variablen zu ersetzen,
252   wenn sie wie folgt aussehen: <code>($customer$)</code>. Das
253   &auml;quivalente Beispiel f&uuml;r HTML-Dokumentenvorlagen sieht so
254   aus:</p>
255
256  <p><code>&lt;!-- config: tag-style=($ $) --&gt;</code></p>
257
258  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
259    zum Inhaltsverzeichnis</a></small><br>
260  <hr>
261
262  <h2><a name="zuordnung_dateinamen">
263    Zuordnung von den Dateinamen zu den Funktionen</a></h2>
264
265  <p>Diese folgende kurze Auflistung zeigt, welche Vorlage bei welcher
266   Funktion ausgelesen wird. Dabei ist die Dateiendung &quot;.ext&quot;
267   geeignet zu ersetzen: &quot;.tex&quot; f&uuml; LaTeX-Vorlagen und
268   &quot;.odt&quot; f&uuml;r OpenDocument-Vorlagen.</p>
269
270  <p>
271   <table border="1">
272    <tr>
273     <th>Dateiname</th>
274     <th>Bedeutung</th>
275    </tr>
276    <tr>
277     <td><code>bin_list.ext</code></td>
278     <td>Lagerliste</td>
279    </tr>
280    <tr>
281     <td><code>check.ext</code></td>
282     <td>?</td>
283    </tr>
284    <tr>
285     <td><code>invoice.ext</code></td>
286     <td>Rechnung</td>
287    </tr>
288    <tr>
289     <td><code>packing_list.ext</code></td>
290     <td>Packliste</td>
291    </tr>
292    <tr>
293     <td><code>pick_list.ext</code></td>
294     <td>Sammelliste</td>
295    </tr>
296    <tr>
297     <td><code>purchase_delivery_order.ext</code></td>
298     <td>Lieferschein (Einkauf)</td>
299    </tr>
300    <tr>
301     <td><code>purcharse_order.ext</code></td>
302     <td>Bestellung an Lieferanten</td>
303    </tr>
304    <tr>
305     <td><code>request_quotation.ext</code></td>
306     <td>Anfrage an Lieferanten</td>
307    </tr>
308    <tr>
309     <td><code>sales_delivery_order.ext</code></td>
310     <td>Lieferschein (Verkauf)</td>
311    </tr>
312    <tr>
313     <td><code>sales_order.ext</code></td>
314     <td>Bestellung</td>
315    </tr>
316    <tr>
317     <td><code>sales_quotation.ext</code></td>
318     <td>Angebot an Kunden</td>
319    </tr>
320    <tr>
321     <td><code>zahlungserinnerung.ext</code></td>
322     <td>Mahnung (Dateiname im Programm konfigurierbar)</td>
323    </tr>
324    <tr>
325     <td><code>zahlungserinnerung_invoice.ext</code></td>
326     <td>Rechnung &uuml;ber Mahngeb&uuml;hren (Dateiname im Programm konfigurierbar)</td>
327    </tr>
328   </table>
329  </p>
330
331  <a name="#dateinamen_erweitert"<h3>Sprache, Drucker und E-Mail</h3>
332
333  <p>Angeforderte Sprache und Druckerk&uuml;rzel in den Dateinamen mit eingearbeitet. So wird aus der Vorlage <code>sales_order.ext</code> bei Sprache <code>de</code> und Druckerk&uuml;rzel <code>lpr2</code> der Vorlagenname <code>sales_order_de_lpr2.ext</code>. Zus&auml;tzlich k&ouml;nnen f&uuml;r E-Mails andere Vorlagen erstellt werden, diese bekommen dann noch das K&uuml;rzel <code>_email</code>, der vollst&auml;ndige Vorlagenname w&auml;re dann <code>sales_order_email_de_lpr2.ext</code>. In allen F&auml;llen kann eine Standarddatei <code>default.ext</code> hinterlegt werden. Diese wird verwendet, wenn keine der anderen Varianten gefunden wird.</p>
334
335  <p>Die vollst&auml;ndige Suchreihenfolge f&uuml;r einen Verkaufsauftrag mit der Sprache "de" und dem Drucker "lpr2", der per E-Mail im Format PDF verschickt wird, ist:</p>
336  <p>
337   <table border='1'>
338    <tr><th>Reihenfolge der m&ouml;glichen Vorlagennamen</th></tr>
339    <tr><td><code>sales_order_email_de_lpr2.tex</code></td></tr>
340    <tr><td><code>sales_order_de_lpr2.tex</code></td></tr>
341    <tr><td><code>sales_order.tex</code></td></tr>
342    <tr><td><code>default.tex</code></td></tr>
343   </table>
344  </p>
345
346  <p>Die kurzen Varianten dieser Vorlagentitel m&uuml;ssen dann entweder Standardwerte anzeigen, oder die angeforderten Werte selbst auswerten, siehe dazu <a href="#allgemein_meta">Metadaten in Vorlagen</a></p>
347
348  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
349    zum Inhaltsverzeichnis</a></small><br>
350  <hr>
351
352  <h2><a name="allgemeine_variablen">
353    Allgemeine Variablen, die in allen Vorlagen vorhanden sind</a></h2>
354
355  <h3><a name="allgemein_meta">
356    Metainformationen zur angeforderten Vorlage:</a></h3>
357
358  <p>Diese Variablen liefern Informationen dar&uuml;ber welche Variante einer Vorlage der Benutzer angefragt hat. Sie sind n&uuml;tzlich f&uuml;r Vorlagenautoren, die aus einer zentralen Layoutvorlage die einzelnen Formulare einbinden m&ouml;chten.</p>
359
360  <p>
361   <table border="1">
362    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
363    <tr>
364     <td><code>template_meta.formname</code></td>
365     <td>Basisname der Vorlage. Identisch mit der <a href="#zuordnung_dateinamen">Zurordnung zu den Dateinamen</a> ohne die Erweiterung. Ein Verkaufsauftrag enth&auml;lt hier <code>sales_order</code>.</td>
366    </tr>
367    <tr>
368     <td><code>template_meta.language.description</code></td>
369     <td>Beschreibung der verwendeten Sprache</td>
370    </tr>
371    <tr>
372     <td><code>template_meta.language.template_code</code></td>
373     <td>Vorlagen&uuml;rzel der verwendeten Sprache, identisch mit dem K&uuml;rzel das im Dateinamen verwendetet wird.</td>
374    </tr>
375    <tr>
376     <td><code>template_meta.language.output_numberformat</code></td>
377     <td>Zahlenformat der verwendeten Sprache in der Form "1.000,00". <em>Experimentell!</em>. Nur interessant f&uuml;r Vorlagen die mit unformatierten Werten arbeiten.</td>
378    </tr>
379    <tr>
380     <td><code>template_meta.language.output_dateformat</code></td>
381     <td>Datumsformat der verwendeten Sprache in der Form "dd.mm.yyyy". <em>Experimentell!</em>. Nur interessant f&uuml;r Vorlagen die mit unformatierten Werten arbeiten.</td>
382    </tr>
383    <tr>
384     <td><code>template_meta.format</code></td>
385     <td>Das angeforderte Format. Kann im Moment die Werte <code>pdf</code>, <code>postscript</code>, <code>html</code>, <code>opendocument</code>, <code>opendocument_pdf</code> und <code>excel</code> enthalten.</td>
386    </tr>
387    <tr>
388     <td><code>template_meta.extension</code></td>
389     <td>Dateierweiterung, wie im Dateinamen. Wird aus <code>format</code> entschieden.</td>
390    </tr>
391    <tr>
392     <td><code>template_meta.media</code></td>
393     <td>Ausgabemedium. Kann zur Zeit die Werte <code>screen</code> f&uuml;r Bildschirm, <code>email</code> f&uuml;r E-Mmail (triggert das <code>_email</code> K&uuml;rzel im Dateinamen), <code>printer</code> f&uuml;r Drucker, und <code>queue</code> f&uuml;r Warteschlange enthalten.</td>
394    </tr>
395    <tr>
396     <td><code>template_meta.printer.description</code></td>
397     <td>Beschreibung des ausgew&auml;hlten Druckers</td>
398    </tr>
399    <tr>
400     <td><code>template_meta.printer.template_code</code></td>
401     <td>Vorlagen&uuml;rzel des ausgew&auml;hlten Druckers, identisch mit dem K&uuml;rzel das im Dateinamen verwendetet wird.</td>
402    </tr>
403   </table>
404  </p>
405
406  <h3><a name="allgemein_stammdaten">
407    Stammdaten von Kunden und Lieferanten:</a></h3>
408
409  <p>
410   <table border="1">
411    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
412    <tr>
413     <td><code>account_number</code></td>
414     <td>Kontonummer</td>
415    </tr>
416    <tr>
417     <td><code>bank</code></td>
418     <td>Name der Bank</td>
419    </tr>
420    <tr>
421     <td><code>bank_code</code></td>
422     <td>Bankleitzahl</td>
423    </tr>
424    <tr>
425     <td><code>bic</code></td>
426     <td>Bank-Identifikations-Code (Bank Identifier Code, BIC)</td>
427    </tr>
428    <tr>
429     <td><code>business</code></td>
430     <td>Kunden-/Lieferantentyp</td>
431    </tr>
432    <tr>
433     <td><code>city</code></td>
434     <td>Stadt</td>
435    </tr>
436    <tr>
437     <td><code>contact</code></td>
438     <td>Kontakt</td>
439    </tr>
440    <tr>
441     <td><code>country</code></td>
442     <td>Land</td>
443    </tr>
444    <tr>
445     <td><code>cp_email</code></td>
446     <td>Email des Ansprechpartners</td>
447    </tr>
448    <tr>
449     <td><code>cp_givenname</code></td>
450     <td>Vorname des Ansprechpartners</td>
451    </tr>
452    <tr>
453     <td><code>cp_greeting</code></td>
454     <td>Anrede des Ansprechpartners</td>
455    </tr>
456    <tr>
457     <td><code>cp_name</code></td>
458     <td>Name des Ansprechpartners</td>
459    </tr>
460    <tr>
461     <td><code>cp_phone1</code></td>
462     <td>Telefonnummer 1 des Ansprechpartners</td>
463    </tr>
464    <tr>
465     <td><code>cp_phone2</code></td>
466     <td>Telefonnummer 2 des Ansprechpartners</td>
467    </tr>
468    <tr>
469     <td><code>cp_title</code></td>
470     <td>Titel des Ansprechpartners</td>
471    </tr>
472    <tr>
473     <td><code>creditlimit</code></td>
474     <td>Kreditlimit</td>
475    </tr>
476    <tr>
477     <td><code>customeremail</code></td>
478     <td>Email des Kunden; nur f&uuml;r Kunden</td>
479    </tr>
480    <tr>
481     <td><code>customerfax</code></td>
482     <td>Faxnummer des Kunden; nur f&uuml;r Kunden</td>
483    </tr>
484    <tr>
485     <td><code>customernotes</code></td>
486     <td>Bemerkungen beim Kunden; nur f&uuml;r Kunden</td>
487    </tr>
488    <tr>
489     <td><code>customernumber</code></td>
490     <td>Kundennummer; nur f&uuml;r Kunden</td>
491    </tr>
492    <tr>
493     <td><code>customerphone</code></td>
494     <td>Telefonnummer des Kunden; nur f&uuml;r Kunden</td>
495    </tr>
496    <tr>
497     <td><code>discount</code></td>
498     <td>Rabatt</td>
499    </tr>
500    <tr>
501     <td><code>email</code></td>
502     <td>Emailadresse</td>
503    </tr>
504    <tr>
505     <td><code>fax</code></td>
506     <td>Faxnummer</td>
507    </tr>
508    <tr>
509     <td><code>homepage</code></td>
510     <td>Homepage</td>
511    </tr>
512    <tr>
513     <td><code>iban</code></td>
514     <td>Internationale Kontonummer (International Bank Account Number, IBAN)</td>
515    </tr>
516    <tr>
517     <td><code>language</code></td>
518     <td>Sprache</td>
519    </tr>
520    <tr>
521     <td><code>name</code></td>
522     <td>Firmenname</td>
523    </tr>
524    <tr>
525     <td><code>payment_description</code></td>
526     <td>Name der Zahlart</td>
527    </tr>
528    <tr>
529     <td><code>payment_terms</code></td>
530     <td>Zahlungskonditionen</td>
531    </tr>
532    <tr>
533     <td><code>phone</code></td>
534     <td>Telefonnummer</td>
535    </tr>
536    <tr>
537     <td><code>shiptocity</code></td>
538     <td>Stadt (Lieferadresse)
539      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
540    </tr>
541    <tr>
542     <td><code>shiptocontact</code></td>
543     <td>Kontakt (Lieferadresse)
544      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
545    </tr>
546    <tr>
547     <td><code>shiptocountry</code></td>
548     <td>Land (Lieferadresse)
549      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
550    </tr>
551    <tr>
552     <td><code>shiptodepartment1</code></td>
553     <td>Abteilung 1 (Lieferadresse)
554      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
555    </tr>
556    <tr>
557     <td><code>shiptodepartment2</code></td>
558     <td>Abteilung 2 (Lieferadresse)
559      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
560    </tr>
561    <tr>
562     <td><code>shiptoemail</code></td>
563     <td>Email (Lieferadresse)
564      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
565    </tr>
566    <tr>
567     <td><code>shiptofax</code></td>
568     <td>Fax (Lieferadresse)
569      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
570    </tr>
571    <tr>
572     <td><code>shiptoname</code></td>
573     <td>Firmenname (Lieferadresse)
574      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
575    </tr>
576    <tr>
577     <td><code>shiptophone</code></td>
578     <td>Telefonnummer (Lieferadresse)
579      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
580    </tr>
581    <tr>
582     <td><code>shiptostreet</code></td>
583     <td>Stra&szlig;e und Hausnummer (Lieferadresse)
584      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
585    </tr>
586    <tr>
587     <td><code>shiptozipcode</code></td>
588     <td>Postleitzahl (Lieferadresse)
589      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
590    </tr>
591    <tr>
592     <td><code>street</code></td>
593     <td>Stra&szlig;e und Hausnummer</td>
594    </tr>
595    <tr>
596     <td><code>taxnumber</code></td>
597     <td>Steuernummer</td>
598    </tr>
599    <tr>
600     <td><code>ustid</code></td>
601     <td>Usatzsteuer-Identifikationsnummer</td>
602    </tr>
603    <tr>
604    <tr>
605     <td><code>vendoremail</code></td>
606     <td>Email des Lieferanten; nur f&uuml;r Lieferanten</td>
607    </tr>
608    <tr>
609     <td><code>vendorfax</code></td>
610     <td>Faxnummer des Lieferanten; nur f&uuml;r Lieferanten</td>
611    </tr>
612    <tr>
613     <td><code>vendornotes</code></td>
614     <td>Bemerkungen beim Lieferanten; nur f&uuml;r Lieferanten</td>
615    </tr>
616    <tr>
617     <td><code>vendornumber</code></td>
618     <td>Lieferantennummer; nur f&uuml;r Lieferanten</td>
619    </tr>
620    <tr>
621     <td><code>vendorphone</code></td>
622     <td>Telefonnummer des Lieferanten; nur f&uuml;r Lieferanten</td>
623    </tr>
624    <tr>
625     <td><code>zipcode</code></td>
626     <td>Postleitzahl</td>
627    </tr>
628   </table>
629  </p>
630
631  <p><a name="anmerkung_shipto"><em>Anmerkung</em></a>: Sind die
632   <code>shipto*</code>-Felder in den Stammdaten nicht eingetragen, so haben
633   die Variablen <code>shipto*</code> den gleichen Wert wie die die
634   entsprechenden Variablen der Lieferdaten. Das bedeutet, dass sich einige
635   <code>shipto*</code>-Variablen so nicht in den Stammdaten wiederfinden
636   sondern schlicht Kopien der Lieferdatenvariablen sind
637   (z.B. <code>shiptocontact</code>).</p>
638
639  <h3><a name="allgemein_bearbeiter">
640    Informationen &uuml;ber den Bearbeiter:</a></h3>
641
642  <p>
643   <table border="1">
644    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
645    <tr>
646     <td><code>employee_address</code></td>
647     <td>Adressfeld</td>
648    </tr>
649    <tr>
650     <td><code>employee_businessnumber</code></td>
651     <td>Firmennummer</td>
652    </tr>
653    <tr>
654     <td><code>employee_company</code></td>
655     <td>Firmenname</td>
656    </tr>
657    <tr>
658     <td><code>employee_co_ustid</code></td>
659     <td>Usatzsteuer-Identifikationsnummer</td>
660    </tr>
661    <tr>
662     <td><code>employee_duns</code></td>
663     <td>DUNS-Nummer</td>
664    </tr>
665    <tr>
666     <td><code>employee_email</code></td>
667     <td>Email</td>
668    </tr>
669    <tr>
670     <td><code>employee_fax</code></td>
671     <td>Fax</td>
672    </tr>
673    <tr>
674     <td><code>employee_name</code></td>
675     <td>voller Name</td>
676    </tr>
677    <tr>
678     <td><code>employee_signature</code></td>
679     <td>Signatur</td>
680    </tr>
681    <tr>
682     <td><code>employee_taxnumber</code></td>
683     <td>Steuernummer</td>
684    </tr>
685    <tr>
686     <td><code>employee_tel</code></td>
687     <td>Telefonnummer</td>
688    </tr>
689   </table>
690  </p>
691
692  <h3><a name="allgemein_verkaeufer">
693    Informationen &uuml;ber den Verk&auml;ufer (nur bei Verkaufsmasken):</a></h3>
694
695  <p>
696   <table border="1">
697    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
698    <tr>
699     <td><code>salesman_address</code></td>
700     <td>Adressfeld</td>
701    </tr>
702    <tr>
703     <td><code>salesman_businessnumber</code></td>
704     <td>Firmennummer</td>
705    </tr>
706    <tr>
707     <td><code>salesman_company</code></td>
708     <td>Firmenname</td>
709    </tr>
710    <tr>
711     <td><code>salesman_co_ustid</code></td>
712     <td>Usatzsteuer-Identifikationsnummer</td>
713    </tr>
714    <tr>
715     <td><code>salesman_duns</code></td>
716     <td>DUNS-Nummer</td>
717    </tr>
718    <tr>
719     <td><code>salesman_email</code></td>
720     <td>Email</td>
721    </tr>
722    <tr>
723     <td><code>salesman_fax</code></td>
724     <td>Fax</td>
725    </tr>
726    <tr>
727     <td><code>salesman_name</code></td>
728     <td>voller Name</td>
729    </tr>
730    <tr>
731     <td><code>salesman_signature</code></td>
732     <td>Signatur</td>
733    </tr>
734    <tr>
735     <td><code>salesman_taxnumber</code></td>
736     <td>Steuernummer</td>
737    </tr>
738    <tr>
739     <td><code>salesman_tel</code></td>
740     <td>Telefonnummer</td>
741    </tr>
742   </table>
743  </p>
744
745  <h3><a name="allgemein_steuern">
746    Variablen f&uuml;r die einzelnen Steuern:</a></h3>
747
748  <p>
749   <table border="1">
750    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
751    <tr>
752     <td><code>tax</code></td>
753     <td>Steuer</td>
754    </tr>
755    <tr>
756     <td><code>taxbase</code></td>
757     <td>zu versteuernder Betrag</td>
758    </tr>
759    <tr>
760     <td><code>taxdescription</code></td>
761     <td>Name der Steuer</td>
762    </tr>
763    <tr>
764     <td><code>taxrate</code></td>
765     <td>Steuersatz</td>
766    </tr>
767   </table>
768  </p>
769
770  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
771    zum Inhaltsverzeichnis</a></small><br>
772  <hr>
773
774  <h2><a name="invoice">Variablen in Rechnungen</a></h2>
775
776  <h3><a name="invoice_allgemein">Allgemeine Variablen:</a></h3>
777
778  <p>
779   <table border="1">
780    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
781    <tr>
782     <td><code>creditremaining</code></td>
783     <td>Verbleibender Kredit</td>
784    </tr>
785    <tr>
786     <td><code>currency</code></td>
787     <td>W&auml;hrung</td>
788    </tr>
789    <tr>
790     <td><code>cusordnumber</code></td>
791     <td>Bestellnummer beim Kunden</td>
792    </tr>
793    <tr>
794     <td><code>deliverydate</code></td>
795     <td>Lieferdatum</td>
796    </tr>
797    <tr>
798     <td><code>duedate</code></td>
799     <td>F&auml;lligkeitsdatum</td>
800    </tr>
801    <tr>
802     <td><code>globalprojectnumber</code></td>
803     <td>Projektnummer des ganzen Beleges</td>
804    </tr>
805    <tr>
806     <td><code>globalprojectdescription</code></td>
807     <td>Projekbeschreibung des ganzen Beleges</td>
808    </tr>
809    <tr>
810     <td><code>intnotes</code></td>
811     <td>Interne Bemerkungen</td>
812    </tr>
813    <tr>
814     <td><code>invdate</code></td>
815     <td>Rechnungsdatum</td>
816    </tr>
817    <tr>
818     <td><code>invnumber</code></td>
819     <td>Rechnungsnummer</td>
820    </tr>
821    <tr>
822     <td><code>invtotal</code></td>
823     <td>gesamter Rechnungsbetrag</td>
824    </tr>
825    <tr>
826     <td><code>notes</code></td>
827     <td>Bemerkungen der Rechnung</td>
828    </tr>
829    <tr>
830     <td><code>orddate</code></td>
831     <td>Auftragsdatum</td>
832    </tr>
833    <tr>
834     <td><code>ordnumber</code></td>
835     <td>Auftragsnummer, wenn die Rechnung aus einem Auftrag erstellt wurde</td>
836    </tr>
837    <tr>
838     <td><code>payment_description</code></td>
839     <td>Name der Zahlart</td>
840    </tr>
841    <tr>
842     <td><code>payment_terms</code></td>
843     <td>Zahlungskonditionen</td>
844    </tr>
845    <tr>
846     <td><code>quodate</code></td>
847     <td>Angebotsdatum</td>
848    </tr>
849    <tr>
850     <td><code>quonumber</code></td>
851     <td>Angebotsnummer</td>
852    </tr>
853    <tr>
854     <td><code>shippingpoint</code></td>
855     <td>Versandort</td>
856    </tr>
857    <tr>
858     <td><code>shipvia</code></td>
859     <td>Transportmittel</td>
860    </tr>
861    <tr>
862     <td><code>subtotal[_nofmt]</code></td>
863     <td>Zwischensumme aller Posten ohne Steuern</td>
864    </tr>
865    <tr>
866     <td><code>total</code></td>
867     <td>Restsumme der Rechnung (Summe abz&uuml;glich bereits bezahlter Posten)</td>
868    </tr>
869    <tr>
870     <td><code>transaction_description</code></td>
871     <td>Vorgangsbezeichnung</td>
872    </tr>
873    <tr>
874     <td><code>transdate</code></td>
875     <td>Auftragsdatum wenn die Rechnung aus einem Auftrag erstellt wurde</td>
876    </tr>
877   </table>
878  </p>
879
880  <h3><a name="invoice_posten">
881    Variablen f&uuml;r jeden Posten auf der Rechnung:</a></h3>
882
883  <p>
884   <table border="1">
885    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
886    <tr>
887     <td><code>bin</code></td>
888     <td>Stellage</td>
889    </tr>
890    <tr>
891     <td><code>description</code></td>
892     <td>Artikelbeschreibung</td>
893    </tr>
894    <tr>
895     <td><code>discount[_nofmt]</code></td>
896     <td>Rabatt als Betrag</td>
897    </tr>
898    <tr>
899     <td><code>discount_sub[_nofmt]</code></td>
900     <td>Zwischensumme mit Rabatt</td>
901    </tr>
902    <tr>
903     <td><code>drawing</code></td>
904     <td>Zeichnung</td>
905    </tr>
906    <tr>
907     <td><code>ean</code></td>
908     <td>EAN-Code</td>
909    </tr>
910    <tr>
911     <td><code>image</code></td>
912     <td>Grafik</td>
913    </tr>
914    <tr>
915     <td><code>linetotal[_nofmt]</code></td>
916     <td>Zeilensumme (Anzahl * Einzelpreis)</td>
917    </tr>
918    <tr>
919     <td><code>longdescription</code></td>
920     <td>Langtext</td>
921    </tr>
922    <tr>
923     <td><code>microfiche</code></td>
924     <td>Mikrofilm</td>
925    </tr>
926    <tr>
927     <td><code>netprice[_nofmt]</code></td>
928     <td>Nettopreis</td>
929    </tr>
930    <tr>
931     <td><code>nodiscount_linetotal[_nofmt]</code></td>
932     <td>Zeilensumme ohne Rabatt</td>
933    </tr>
934    <tr>
935     <td><code>nodiscount_sub[_nofmt]</code></td>
936     <td>Zwischensumme ohne Rabatt</td>
937    </tr>
938    <tr>
939     <td><code>number</code></td>
940     <td>Artikelnummer</td>
941    </tr>
942    <tr>
943     <td><code>ordnumber_oe</code></td>
944     <td>Auftragsnummer des Originalauftrags, wenn die Rechnung aus einem Sammelauftrag erstellt wurde</td>
945    </tr>
946    <tr>
947    <td><code>p_discount</code></td>
948     <td>Rabatt in Prozent</td>
949    </tr>
950    <tr>
951     <td><code>partnotes</code></td>
952     <td>Die beim Artikel gespeicherten Bemerkungen</td>
953    </tr>
954    <tr>
955     <td><code>partsgroup</code></td>
956     <td>Warengruppe</td>
957    </tr>
958    <tr>
959     <td><code>price_factor</code></td>
960     <td>Der Preisfaktor als Zahl, sofern einer eingestellt ist</td>
961    </tr>
962    <tr>
963     <td><code>price_factor_name</code></td>
964     <td>Der Name des Preisfaktors, sofern einer eingestellt ist</td>
965    </tr>
966    <tr>
967     <td><code>projectnumber</code></td>
968     <td>Projektnummer</td>
969    </tr>
970    <tr>
971     <td><code>projectdescription</code></td>
972     <td>Projektbeschreibung</td>
973    </tr>
974    <tr>
975     <td><code>qty[_nofmt]</code></td>
976     <td>Anzahl</td>
977    </tr>
978    <tr>
979     <td><code>reqdate</code></td>
980     <td>Lieferdatum</td>
981    </tr>
982    <tr>
983     <td><code>runningnumber</code></td>
984     <td>Position auf der Rechnung (1, 2, 3...)</td>
985    </tr>
986    <tr>
987     <td><code>sellprice[_nofmt]</code></td>
988     <td>Verkaufspreis</td>
989    </tr>
990    <tr>
991     <td><code>serialnumber</code></td>
992     <td>Seriennummer</td>
993    </tr>
994    <tr>
995     <td><code>tax_rate</code></td>
996     <td>Steuersatz</td>
997    </tr>
998    <tr>
999     <td><code>transdate_oe</code></td>
1000     <td>Auftragsdatum des Originalauftrags, wenn die Rechnung aus einem Sammelauftrag erstellt wurde</td>
1001    </tr>
1002    <tr>
1003     <td><code>unit</code></td>
1004     <td>Einheit</td>
1005    </tr>
1006    <tr>
1007     <td><code>weight</code></td>
1008     <td>Gewicht</td>
1009    </tr>
1010   </table>
1011  </p>
1012
1013  <p>F&uuml;r jeden Posten gibt es ein Unterarray mit den Informationen &uuml;ber
1014   Lieferanten und Lieferantenartikelnummer. Diese m&uuml;ssen mit
1015   einer <code>foreach</code>-Schleife ausgegeben werden, da f&uuml;r jeden
1016   Artikel mehrere Lieferanteninformationen hinterlegt sein k&ouml;nnen. Die
1017   Variablen daf&uuml;r lauten:</p>
1018
1019  <p>
1020   <table border="1">
1021    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
1022    <tr>
1023     <td><code>make</code></td>
1024     <td>Lieferant</td>
1025    </tr>
1026    <tr>
1027     <td><code>model</code></td>
1028     <td>Lieferantenartikelnummer</td>
1029    </tr>
1030   </table>
1031  </p>
1032
1033  <h3><a name="invoice_zahlungen">
1034    Variablen f&uuml;r die einzelnen Zahlungseing&auml;nge:</a></h3>
1035
1036  <p>
1037   <table border="1">
1038    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
1039    <tr>
1040     <td><code>payment</code></td>
1041     <td>Betrag</td>
1042    </tr>
1043    <tr>
1044     <td><code>paymentaccount</code></td>
1045     <td>Konto</td>
1046    </tr>
1047    <tr>
1048     <td><code>paymentdate</code></td>
1049     <td>Datum</td>
1050    </tr>
1051    <tr>
1052     <td><code>paymentmemo</code></td>
1053     <td>Memo</td>
1054    </tr>
1055    <tr>
1056     <td><code>paymentsource</code></td>
1057     <td>Beleg</td>
1058    </tr>
1059   </table>
1060  </p>
1061
1062  <h3><a name="invoice_benutzerdefinierte_variablen_vc">
1063    Benutzerdefinierte Kunden- und Lieferantenvariablen:</a></h3>
1064
1065  <p>
1066   Die vom Benutzer definierten Variablen f&uuml;r Kunden und
1067   Lieferanten stehen beim Ausdruck von Einkaufs- und Verkaufsbelegen
1068   ebenfalls zur Verf&uuml;gung. Ihre Namen setzen sich aus dem
1069   Pr&auml;fix <code>vc_cvar_</code> und dem vom Benutzer festgelegten
1070   Variablennamen zusammen.</p>
1071
1072  <p>Beispiel: Der Benutzer hat eine Variable
1073   namens <code>number_of_employees</code> definiert, die die Anzahl
1074   der Mitarbeiter des Unternehmens enth&auml;lt. Diese Variable steht
1075   dann unter dem Namen <code>vc_cvar_number_of_employees</code> zur
1076   Verf&uuml;gung.</p>
1077
1078  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
1079    zum Inhaltsverzeichnis</a></small><br>
1080  <hr>
1081
1082  <h2><a name="dunning">Variablen in Mahnungen und Rechnungen &uuml;ber Mahngeb&uuml;hren</a></h2>
1083
1084  <h3><a name="dunning_vorlagennamen">Namen der Vorlagen</a></h3>
1085
1086  <p>Die Namen der Vorlagen werden im System-Men&uuml; vom Benutzer
1087   eingegeben. Wird f&uuml;r ein Mahnlevel die Option zur automatischen
1088   Erstellung einer Rechnung &uuml;ber die Mahngeb&uuml;hren und Zinsen
1089   aktiviert, so wird der Name der Vorlage f&uuml;r diese Rechnung aus
1090   dem Vorlagenname f&uuml;r diese Mahnstufe mit dem
1091   Zusatz <code>_invoice</code> gebildet. Weiterhin werden die
1092   K&uuml;rzel f&uuml;r die ausgew&auml;hlte Sprache und den
1093   ausgew&auml;hlten Drucker angeh&auml;ngt.</p>
1094
1095  <h3><a name="dunning_allgemein">Allgemeine Variablen in Mahnungen:</a></h3>
1096
1097  <p>Die Variablen des Verk&auml;ufers stehen wie gewohnt
1098   als <code>employee_...</code> zur Verf&uuml;gung. Die Adressdaten des
1099   Kunden stehen als Variablen <code>name</code>, <code>street</code>,
1100   <code>zipcode</code>, <code>city</code>, <code>country</code>,
1101   <code>department_1</code>, <code>department_2</code>, und
1102   <code>email</code> zur Verf&uuml;gung.
1103  </p>
1104
1105  <p>Weitere Variablen beinhalten:</p>
1106
1107  <p>
1108   <table border="1">
1109    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
1110    <tr>
1111     <td><code>dunning_date</code></td>
1112     <td>Datum der Mahnung</td>
1113    </tr>
1114    <tr>
1115     <td><code>dunning_duedate</code></td>
1116     <td>F&auml;lligkeitsdatum f&uuml;r diese Mahhnung</td>
1117    </tr>
1118    <tr>
1119     <td><code>dunning_id</code></td>
1120     <td>Mahnungsnummer</td>
1121    </tr>
1122    <tr>
1123     <td><code>fee</code></td>
1124     <td>Kummulative Mahngeb&uuml;hren</td>
1125    </tr>
1126    <tr>
1127     <td><code>interest_rate</code></td>
1128     <td>Zinssatz per anno in Prozent</td>
1129    </tr>
1130    <tr>
1131     <td><code>total_amount</code></td>
1132     <td>Gesamter noch zu zahlender Betrag als <code>fee</code> + <code>total_interest</code> + <code>total_open_amount</code></td>
1133    </tr>
1134    <tr>
1135     <td><code>total_interest</code></td>
1136     <td>Zinsen per anno &uuml;ber alle Rechnungen</td>
1137    </tr>
1138    <tr>
1139     <td><code>total_open_amount</code></td>
1140     <td>Summe &uuml;ber alle offene Betr&auml;ge der Rechnungen</td>
1141    </tr>
1142   </table>
1143  </p>
1144
1145  <h3><a name="dunning_details">
1146    Variablen f&uuml;r jede gemahnte Rechnung in einer Mahnung:</a></h3>
1147
1148  <p>
1149   <table border="1">
1150    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
1151    <tr>
1152     <td><code>dn_amount</code></td>
1153     <td>Rechnungssumme (brutto)</td>
1154    </tr>
1155    <tr>
1156     <td><code>dn_duedate</code></td>
1157     <td>Originales F&auml;lligkeitsdatum der Rechnung</td>
1158    </tr>
1159    <tr>
1160     <td><code>dn_dunning_date</code></td>
1161     <td>Datum der Mahnung</td>
1162    </tr>
1163    <tr>
1164     <td><code>dn_dunning_duedate</code></td>
1165     <td>F&auml;lligkeitsdatum der Mahnung</td>
1166    </tr>
1167    <tr>
1168     <td><code>dn_fee</code></td>
1169     <td>Kummulative Mahngeb&uuml;hr</td>
1170    </tr>
1171    <tr>
1172     <td><code>dn_interest</code></td>
1173     <td>Zinsen per anno f&uuml;r diese Rechnung</td>
1174    </tr>
1175    <tr>
1176     <td><code>dn_invnumber</code></td>
1177     <td>Rechnungsnummer</td>
1178    </tr>
1179    <tr>
1180     <td><code>dn_linetotal</code></td>
1181     <td>Noch zu zahlender Betrag (ergibt sich aus <code>dn_open_amount + dn_fee + dn_interest</code>)</td>
1182    </tr>
1183    <tr>
1184     <td><code>dn_netamount</code></td>
1185     <td>Rechnungssumme (netto)</td>
1186    </tr>
1187    <tr>
1188     <td><code>dn_open_amount</code></td>
1189     <td>Offener Rechnungsbetrag</td>
1190    </tr>
1191    <tr>
1192     <td><code>dn_ordnumber</code></td>
1193     <td>Bestellnummer</td>
1194    </tr>
1195    <tr>
1196     <td><code>dn_transdate</code></td>
1197     <td>Rechnungsdatum</td>
1198    </tr>
1199   </table>
1200  </p>
1201
1202  <h3><a name="dunning_invoice">Variablen in automatisch erzeugten
1203    Rechnungen &uuml;ber Mahngeb&uuml;hren</a></h3>
1204
1205  <p>Die Variablen des Verk&auml;ufers stehen wie gewohnt
1206   als <code>employee_...</code> zur Verf&uuml;gung. Die Adressdaten des
1207   Kunden stehen als Variablen <code>name</code>, <code>street</code>,
1208   <code>zipcode</code>, <code>city</code>, <code>country</code>,
1209   <code>department_1</code>, <code>department_2</code>, und
1210   <code>email</code> zur Verf&uuml;gung.
1211  </p>
1212
1213  <p>Weitere Variablen beinhalten:</p>
1214
1215  <p>
1216   <table border="1">
1217    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
1218    <tr>
1219     <td><code>duedate</code></td>
1220     <td>F&auml;lligkeitsdatum der Rechnung</td>
1221    </tr>
1222    <tr>
1223     <td><code>dunning_id</code></td>
1224     <td>Mahnungsnummer</td>
1225    </tr>
1226    <tr>
1227     <td><code>fee</code></td>
1228     <td>Mahngeb&uuml;hren</td>
1229    </tr>
1230    <tr>
1231     <td><code>interest</code></td>
1232     <td>Zinsen</td>
1233    </tr>
1234    <tr>
1235     <td><code>invamount</code></td>
1236     <td>Rechnungssumme (ergibt sich aus <code>fee + interest</code>)</td>
1237    </tr>
1238    <tr>
1239     <td><code>invdate</code></td>
1240     <td>Rechnungsdatum</td>
1241    </tr>
1242    <tr>
1243     <td><code>invnumber</code></td>
1244     <td>Rechnungsnummer</td>
1245    </tr>
1246   </table>
1247  </p>
1248
1249  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
1250    zum Inhaltsverzeichnis</a></small><br>
1251  <hr>
1252
1253  <h2><a name="anderevorlagen">
1254    Variablen in anderen Vorlagen</a></h2>
1255
1256  <p>Die Variablen in anderen Vorlagen sind &auml;hnlich wie in der
1257   Rechnung. Allerdings hei&szlig;en die Variablen, die mit <code>inv</code>
1258   beginnen, jetzt anders. Bei den Angeboten fangen sie mit <code>quo</code>
1259   f&uuml;r "quotation" an: <code>quodate</code> f&uuml;r Angebotsdatum
1260   etc. Bei Bestellungen wiederum fangen sie mit <code>ord</code> f&uuml;r
1261   "order" an: <code>ordnumber</code> f&uuml;r Bestellnummer etc.</p>
1262
1263  <p>Manche Variablen sind in anderen Vorlagen hingegen gar nicht vorhanden wie
1264   z.B. die f&uuml;r bereits verbuchte Zahlungseing&auml;nge. Dies sind
1265   Variablen, die vom Gesch&auml;ftsablauf her in der entsprechenden Vorlage
1266   keine Bedeutung haben oder noch nicht belegt sein k&ouml;nnen.</p>
1267
1268  <p>Im Folgenden werden nur wichtige Unterschiede zu den Variablen in
1269   Rechnungen aufgef&uuml;hrt.</p>
1270
1271  <h3><a name="anderevorlagen_quotations">Angebote und Preisanfragen</a></h3>
1272
1273  <p>
1274   <table border="1">
1275    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
1276    <tr>
1277     <td><code>quonumber</code></td>
1278     <td>Angebots- bzw. Anfragenummer</td>
1279    </tr>
1280    <tr>
1281     <td><code>reqdate</code></td>
1282     <td>G&uuml;ltigkeitsdatum (bei Angeboten) bzw. Lieferdatum (bei Preisanfragen)</td>
1283    </tr>
1284    <tr>
1285     <td><code>transdate</code></td>
1286     <td>Angebots- bzw. Anfragedatum</td>
1287    </tr>
1288   </table>
1289  </p>
1290
1291  <h3><a name="anderevorlagen_orders">Auftragsbest&auml;tigungen und Lieferantenauftr&auml;ge</a></h3>
1292
1293  <p>
1294   <table border="1">
1295    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
1296    <tr>
1297     <td><code>ordnumber</code></td>
1298     <td>Auftragsnummer</td>
1299    </tr>
1300    <tr>
1301     <td><code>reqdate</code></td>
1302     <td>Lieferdatum</td>
1303    </tr>
1304    <tr>
1305     <td><code>transdate</code></td>
1306     <td>Auftragsdatum</td>
1307    </tr>
1308   </table>
1309  </p>
1310
1311  <h3><a name="anderevorlagen_delivery_orders">Lieferscheine (Verkauf und Einkauf)</a></h3>
1312
1313  <p>
1314   <table border="1">
1315    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
1316    <tr>
1317     <td><code>cusordnumber</code></td>
1318     <td>Bestellnummer des Kunden (im Verkauf) bzw. Bestellnummer des Lieferanten (im Einkauf)</td>
1319    </tr>
1320    <tr>
1321     <td><code>donumber</code></td>
1322     <td>Lieferscheinnummer</td>
1323    </tr>
1324    <tr>
1325     <td><code>transdate</code></td>
1326     <td>Lieferscheindatum</td>
1327    </tr>
1328   </table>
1329  </p>
1330
1331  <p>F&uuml;r jede Position eines Lieferscheines gibt es ein Unterarray mit
1332   den Informationen dar&uuml;ber, von welchem Lager und Lagerplatz aus die
1333   Waren verschickt wurden (Verkaufslieferscheine) bzw. auf welchen
1334   Lagerplatz sie eingelagert wurden. Diese m&uuml;ssen mittels
1335   einer <code>foreach</code>-Schleife ausgegeben werden. Diese
1336   Variablen sind:</p>
1337
1338
1339  <p>F&uuml;r jede Position eines Lieferscheines gibt es ein Unterarray mit
1340   den Informationen dar&uuml;ber, von welchem Lager und Lagerplatz aus die
1341   Waren verschickt wurden (Verkaufslieferscheine) bzw. auf welchen
1342   Lagerplatz sie eingelagert wurden. Diese m&uuml;ssen mittels
1343   einer <code>foreach</code>-Schleife ausgegeben werden. Diese
1344   Variablen sind:</p>
1345
1346  <p>
1347   <table border="1">
1348    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
1349    <tr>
1350     <td><code>si_bin</code></td>
1351     <td>Lagerplatz</td>
1352    </tr>
1353    <tr>
1354     <td><code>si_chargenumber</code></td>
1355     <td>Chargennummer</td>
1356    </tr>
1357    <tr>
1358     <td><code>si_bestbefore</code></td>
1359     <td>Mindesthaltbarkeit</td>
1360    </tr>
1361    <tr>
1362     <td><code>si_number</code></td>
1363     <td>Artikelnummer</td>
1364    </tr>
1365    <tr>
1366     <td><code>si_qty</code></td>
1367     <td>Anzahl bzw. Menge</td>
1368    </tr>
1369    <tr>
1370     <td><code>si_runningnumber</code></td>
1371     <td>Positionsnummer (1, 2, 3 etc)</td>
1372    </tr>
1373    <tr>
1374     <td><code>si_unit</code></td>
1375     <td>Einheit</td>
1376    </tr>
1377    <tr>
1378     <td><code>si_warehouse</code></td>
1379     <td>Lager</td>
1380    </tr>
1381   </table>
1382  </p>
1383
1384  <h3><a name="anderevorlagen_statement">Sammelrechnung</a></h3>
1385
1386  <h3> Variablen f&uuml;r Sammelrechnung:</h3>
1387  <p>
1388   <table border="1">
1389    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
1390    <tr>
1391     <td><code>c0total</code></td>
1392     <td>Gesamtbetrag aller Rechnungen mit F&auml;lligkeit &lt; 30 Tage</td>
1393    </tr>
1394    <tr>
1395     <td><code>c30total</code></td>
1396     <td>Gesamtbetrag aller Rechnungen mit F&auml;lligkeit &gt;= 30 und &lt; 60 Tage</td>
1397    </tr>
1398    <tr>
1399     <td><code>c60total</code></td>
1400     <td>Gesamtbetrag aller Rechnungen mit F&auml;lligkeit &gt;= 60 und &lt; 90 Tage</td>
1401    </tr>
1402    <tr>
1403     <td><code>c90total</code></td>
1404     <td>Gesamtbetrag aller Rechnungen mit F&auml;lligkeit &gt;= 90 Tage</td>
1405    </tr>
1406    <tr>
1407     <td><code>total</code></td>
1408     <td>Gesamtbetrag aller Rechnungen</td>
1409    </tr>
1410   </table>
1411  </p>
1412
1413  <h3> Variablen f&uuml;r jede Rechnungsposition in Sammelrechnung:</h3>
1414  <p>
1415   <table border="1">
1416    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
1417    <tr>
1418     <td><code>invnumber</code></td>
1419     <td>Rechnungsnummer</td>
1420    </tr>
1421    <tr>
1422     <td><code>invdate</code></td>
1423     <td>Rechnungsdatum</td>
1424    </tr>
1425    <tr>
1426     <td><code>duedate</code></td>
1427     <td>F&auml;lligkeitsdatum</td>
1428    </tr>
1429    <tr>
1430     <td><code>amount</code></td>
1431     <td>Summe der Rechnung</td>
1432    </tr>
1433    <tr>
1434     <td><code>open</code></td>
1435     <td>Noch offener Betrag der Rechnung</td>
1436    </tr>
1437    <tr>
1438     <td><code>c0</code></td>
1439     <td>Noch offener Rechnungsbetrag mit F&auml;lligkeit &lt; 30 Tage</td>
1440    </tr>
1441    <tr>
1442     <td><code>c30</code></td>
1443     <td>Noch offener Rechnungsbetrag mit F&auml;lligkeit &gt;= 30 und &lt; 60 Tage</td>
1444    </tr>
1445    <tr>
1446     <td><code>c60</code></td>
1447     <td>Noch offener Rechnungsbetrag mit F&auml;lligkeit &gt;= 60 und &lt; 90 Tage</td>
1448    </tr>
1449    <tr>
1450     <td><code>c90</code></td>
1451     <td>Noch offener Rechnungsbetrag mit F&auml;lligkeit &gt;= 90 Tage</td>
1452    </tr>
1453   </table>
1454  </p>
1455
1456
1457
1458
1459  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
1460    zum Inhaltsverzeichnis</a></small><br>
1461  <hr>
1462
1463  <h2><a name="bloecke">
1464    Bl&ouml;cke, bedingte Anweisungen und Schleifen</a></h2>
1465
1466  <p>Der Parser kennt neben den Variablen einige weitere Konstrukte,
1467   die gesondert behandelt werden. Diese sind wie Variablennamen in
1468   spezieller Weise markiert: <code>&lt;%anweisung%&gt;
1469   ... &lt;%end%&gt;</code></p>
1470
1471  <p>Anmerkung zum <code>&lt;%end%&gt;</code>: Der besseren
1472   Verst&auml;ndlichkeit halber kann man nach dem <code>end</code> noch
1473   beliebig weitere W&ouml;rter schreiben, um so zu markieren, welche
1474   Anweisung (z.B. <code>if</code> oder <code>foreach</code>) damit
1475   abgeschlossen wird.</p>
1476
1477  <p>Beispiel: Lautet der Beginn eines Blockes
1478    z.B. <code class="blue">&lt;%if type ==
1479    &quot;sales_quotation&quot;%&gt;</code>, so k&ouml;nnte er mit
1480   <code class="blue">&lt;%end%&gt;</code> genauso abgeschlossen werden
1481   wie mit
1482   <code class="blue">&lt;%end if%&gt;</code> oder auch
1483   <code class="blue">&lt;%end type ==
1484   &quot;sales_quotation&quot;%&gt;</code>.</p>
1485
1486  <h3><a name="bloecke_if">Der <code>if</code>-Block</a></h3>
1487
1488  <p class="blue"><code>&lt;%if variablenname%&gt;<br>
1489    ...<br>
1490    &lt;%end%&gt;</code></p>
1491
1492  <p>Eine normale &quot;if-then&quot;-Bedingung. Die Zeilen zwischen
1493   dem &quot;if&quot; und dem &quot;end&quot; werden nur ausgegeben,
1494   wenn die Variable &quot;variablenname&quot; gesetzt und ungleich 0
1495   ist.</p>
1496
1497  <p>Die Bedingung kann auch negiert werden, indem das Wort
1498   &quot;not&quot; nach dem &quot;if&quot; verwendet
1499   wird. Beispiel: <code class="blue">&lt;%if not
1500   cp_greeting%&gt;</code></p>
1501
1502  <p>Zus&auml;tzlich zu dem einfachen Test, ob eine Variable gesetzt ist
1503   oder nicht, bietet dieser Block auch die M&ouml;glichkeit, den Inhalt
1504   einer Variablen mit einer festen Zeichenkette oder einer anderen
1505   Variablen zu vergleichen. Ob der Vergleich mit einer Zeichenkette
1506   oder einer anderen Variablen vorgenommen wird, h&auml;ngt davon ab, ob
1507   die rechte Seite des Vergleichsoperators in Anf&uuml;hrungszeichen
1508   gesetzt wird (Vergleich mit Zeichenkette) oder nicht (Vergleich mit
1509   anderer Variablen). Zwei Beispiele, die beide Vergleiche zeigen:</p>
1510
1511  <p><code class="blue">&lt;%if var1 == &quot;Wert&quot;%&gt;</code>
1512   testet die Variable &quot;var1&quot; auf &Uuml;bereinstimmung mit der
1513   Zeichenkette &quot;Wert&quot;. Mittels &quot;!=&quot; anstelle von
1514   &quot;==&quot; w&uuml;rde auf Ungleichheit getestet.</p>
1515
1516  <p><code class="blue">&lt;%if var1 == var2%&gt;</code> testet die
1517   Variable &quot;var1&quot; auf &Uuml;bereinstimmung mit der Variablen
1518   &quot;var2&quot;. Mittels &quot;!=&quot; anstelle von &quot;==&quot;
1519   w&uuml;rde auf Ungleichheit getestet.</p>
1520
1521  <p>Erfahrere Benutzer k&ouml;nnen neben der Tests auf (Un-)Gleichheit auch
1522   Tests auf &Uuml;bereinstimmung mit regul&auml;ren Ausdr&uuml;cken ohne
1523   Ber&uuml;cksichtung der Gro&szlig;- und Kleinschreibung durchf&uuml;hren. Dazu dient
1524   dieselbe Syntax wie oben nur mit &quot;=~&quot; und &quot;!~&quot;
1525   als Vergleichsoperatoren.</p>
1526
1527  <p>Beispiel f&uuml;r einen Test, ob die Variable &quot;intnotes&quot;
1528   (interne Bemerkungen) das Wort &quot;schwierig&quot; enth&auml;lt:
1529   <code class="blue">&lt;%if intnotes =~
1530   &quot;schwierig&quot;%&gt;</code></p>
1531
1532  <h3><a name="bloecke_foreach">Die <code>foreach</code>-Schleife</a></h3>
1533
1534  <p class="blue"><code>&lt;%foreach variablenname%&gt;<br>
1535    ...<br>
1536    &lt;%end%&gt;</code></p>
1537
1538  <p>F&uuml;gt die Zeilen zwischen den beiden Anweisungen so oft ein, wie das
1539   Perl-Array der Variablen "variablenname" Elemente enth&auml;t. Dieses
1540   Konstrukt wird zur Ausgabe der einzelnen Posten einer Rechnung / eines
1541   Angebots sowie zur Ausgabe der Steuern benutzt. In jedem Durchlauf werden
1542   die <a href="dokumentenvorlagen-und-variablen.html#invoice_posten">zeilenbezogenen
1543   Variablen</a> jeweils auf den Wert f&uuml;r die aktuelle Position
1544   gesetzt.</p>
1545
1546  <p>Die Syntax sieht normalerweise wie folgt aus:</p>
1547
1548  <p class="blue"><code>&lt;%foreach number%&gt;<br>
1549    Position: &lt;%runningnumber%&gt;<br>
1550    Anzahl: &lt;%qty%&gt;<br>
1551    Artikelnummer: &lt;%number%&gt;<br>
1552    Beschreibung: &lt;%description%&gt;<br>
1553    ...<br>
1554    &lt;%end%&gt;</code></p>
1555
1556  <p>Besonderheit in OpenDocument-Vorlagen: Tritt ein
1557   <code>&lt;%foreach%&gt;</code>-Block innerhalb einer Tabellenzelle
1558   auf, so wird die komplette Tabellenzeile so oft wiederholt wie
1559   notwendig. Tritt er au&szlig;erhalb auf, so wird nur der Inhalt
1560   zwischen <code>&lt;%foreach%&gt;</code> und <code>&lt;%end%&gt;</code>
1561   wiederholt, nicht aber die komplette Zeile, in der er steht.</p>
1562
1563  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
1564    zum Inhaltsverzeichnis</a></small><br>
1565  <hr>
1566
1567  <h2><a name="markup">
1568    Markup-Code, der innerhalb von Formularen zur Textformatierung
1569    verwendet werden kann</a></h2>
1570
1571  <p>Wenn der Benutzer innhalb von Formularen in Lx-Office Text anders
1572   formatiert haben m&ouml;chte, so ist dies begrenzt m&ouml;glich. Lx-Office
1573   unterst&uuml;tzt die Textformatierung mit HTML-&auml;hnlichen Tags. Der
1574   Benutzer kann z.B. bei der Artikelbeschreibung auf einer Rechnung Teile des
1575   Texts zwischen Start- und Endtags setzen. Dieser Teil wird dann automatisch
1576   in Anweisungen f&uuml;r das ausgew&auml;hlte Vorlagenformat (HTML oder
1577   PDF &uuml;ber LaTeX) umgesetzt.</p>
1578
1579  <p>Die unterst&uuml;tzen Formatierungen sind:</p>
1580
1581  <p>
1582   <table border="1">
1583    <tr><th>Formatierung</th><th>Auswirkung</th></tr>
1584    <tr>
1585     <td><code>&lt;b&gt;Text&lt;/b&gt;</code></td>
1586     <td>Text wird in <b>fettdruck</b> gesetzt.</td>
1587    </tr>
1588    <tr>
1589     <td><code>&lt;i&gt;Text&lt;/i&gt;</code></td>
1590     <td>Text wird <i>kursiv</i> gesetzt.</td>
1591    </tr>
1592    <tr>
1593     <td><code>&lt;u&gt;Text&lt;/u&gt;</code></td>
1594     <td>Text wird <u>unterstrichen</u>.</td>
1595    </tr>
1596    <tr>
1597     <td><code>&lt;s&gt;Text&lt;/s&gt;</code></td>
1598     <td>Text wird <s>durchgestrichen</s>. Diese Formatierung ist nicht bei der
1599      Ausgabe als PDF &uuml;ber LaTeX verf&uuml;gbar.</td>
1600    </tr>
1601    <tr>
1602     <td><code>&lt;pagebreak&gt;</code></td>
1603     <td>Erzwingt einen Seitenumbruch (siehe unten).</td>
1604    </tr>
1605    <tr>
1606     <td><code>&lt;bullet&gt;</code></td>
1607     <td>Erzeugt einen ausgef&uuml;llten Kreis f&uuml;r Aufz&auml;hlungen (&bull;) (siehe unten).</td>
1608    </tr>
1609   </table>
1610  </p>
1611
1612  <p>Eine Besonderheit ist der Befehl <code>&lt;pagebreak&gt;</code>,
1613   der nur in LaTeX-Vorlagen funktioniert und in anderen Vorlagen
1614   einfach gel&ouml;scht wird. Dieser erzwingt einen Seitenumbruch nach
1615   der aktuellen Rechnungsposition. Dementsprechend funktioniert er nur
1616   innerhalb von
1617   <code>&lt;%foreach...%&gt;</code>-Schleifen. Weiterhin ben&ouml;tigt
1618   er kein Endtag.</p>
1619
1620  <p>Auch <code>&lt;bullet&gt;</code> funktioniert momentan auch nur in Latex-Vorlagen.</p>
1621
1622  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
1623    zum Inhaltsverzeichnis</a></small><br>
1624  <hr>
1625
1626 </body>
1627 </html>