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