Überflüssige leere Tabellenzeile entfernt.
[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="dokumentenvorlagen-und-variablen.html#tag_style">
52     Anfang und Ende der Tags ver&auml;ndern</a></li>
53
54   <li><a href="dokumentenvorlagen-und-variablen.html#allgemeine_variablen">
55     Allgemeine Variablen, die in allen Vorlagen vorhanden sind</a><br>
56
57    <ol>
58     <li><a href="dokumentenvorlagen-und-variablen.html#allgemein_stammdaten">
59       Stammdaten von Kunden und Lieferanten</a></li>
60
61     <li><a href="dokumentenvorlagen-und-variablen.html#allgemein_bearbeiter">
62       Informationen &uuml;ber den Bearbeiter</a></li>
63
64     <li><a href="dokumentenvorlagen-und-variablen.html#allgemein_verkaeufer">
65       Informationen &uuml;ber den Verk&auml;ufer</a></li>
66
67     <li><a href="dokumentenvorlagen-und-variablen.html#allgemein_steuern">
68       Variablen f&uuml;r jede Steuer</a></li>
69    </ol>
70   </li>
71
72   <li><a href="dokumentenvorlagen-und-variablen.html#invoice">
73     Variablen in Rechnungen</a>
74
75    <ol>
76     <li><a href="dokumentenvorlagen-und-variablen.html#invoice_allgemein">
77       Allgemeine Variablen</a></li>
78
79     <li><a href="dokumentenvorlagen-und-variablen.html#invoice_posten">
80       Variablen f&uuml;r jeden Posten auf der Rechnung</a></li>
81
82     <li><a href="dokumentenvorlagen-und-variablen.html#invoice_zahlungen">
83       Variablen f&uuml;r die Zahlungseing&auml;nge</a></li>
84    </ol>
85   </li>
86
87   <li><a href="dokumentenvorlagen-und-variablen.html#dunning">
88     Variablen in Mahnungen und Rechnungen &uuml;ber Mahngeb&uuml;hren</a>
89
90    <ol>
91     <li><a href="dokumentenvorlagen-und-variablen.html#dunning_vorlagennamen">
92       Namen der Vorlagen</a></li>
93
94     <li><a href="dokumentenvorlagen-und-variablen.html#dunning_allgemein">
95       Allgemeine Variablen in Mahnungen</a></li>
96
97     <li><a href="dokumentenvorlagen-und-variablen.html#dunning_details">
98       Variablen f&uuml;r jede gemahnte Rechnung in einer Mahnung</a></li>
99
100     <li><a href="dokumentenvorlagen-und-variablen.html#dunning_invoice">
101       Variablen in automatisch erzeugten Rechnungen &uuml;ber Mahngeb&uuml;hren</a></li>
102    </ol>
103   </li>
104
105   <li><a href="dokumentenvorlagen-und-variablen.html#anderevorlagen">
106     Variablen in anderen Vorlagen</a></li>
107
108   <li><a href="dokumentenvorlagen-und-variablen.html#bloecke">
109     Bl&ouml;cke, bedingte Anweisungen und Schleifen</a>
110
111    <ol>
112     <li><a href="dokumentenvorlagen-und-variablen.html#bloecke_ifnot">
113       Der <code>if not</code>-Block</a></li>
114
115     <li><a href="dokumentenvorlagen-und-variablen.html#bloecke_if">
116       Der <code>if</code>-Block</a></li>
117
118     <li><a href="dokumentenvorlagen-und-variablen.html#bloecke_foreach">
119       Die <code>foreach</code>-Schleife</a></li>
120
121     <li><a href="dokumentenvorlagen-und-variablen.html#bloecke_pagebreak">
122       Der <code>pagebreak</code>-Block</a></li>
123    </ol>
124   </li>
125
126   <li><a href="dokumentenvorlagen-und-variablen.html#markup">
127     Markup-Code, der innerhalb von Formularen zur Textformatierung verwendet
128     werden kann</a></li>
129
130  </ol>
131
132  <hr>
133
134  <h2><a name="einfuehrung">Einf&uuml;hrung</a></h2>
135
136  <p>Dies ist eine Auflistung der Standard-Dokumentenvorlagen und aller
137   zur Bearbeitung verf&uuml;gbaren Variablen. Eine Variable wird in
138   einer Vorlage durch ihren Inhalt ersetzt, wenn sie in der Form
139   <code>&lt;%variablenname%&gt;</code> verwendet wird. F&uuml;r LaTeX-
140   und HTML-Vorlagen kann man die Form dieser Tags auch
141   <a href="dokumentenvorlagen-und-variablen.html#tag_style">
142    ver&auml;ndern</a>.
143  </p>
144
145  <p>Fr&uuml;her wurde hier nur &uuml;ber LaTeX gesprochen. Inzwischen
146   unterst&uuml;tzt Lx-Office aber auch OpenDocument-Vorlagen. Sofern
147   es nicht ausdr&uuml;cklich eingeschr&auml;nkt wird, gilt das im
148   Folgenden gesagte f&uuml;r alle Vorlagenarten.</p>
149
150  <p>Insgesamt sind technisch gesehen eine ganze Menge mehr Variablen
151   verf&uuml;gbar als hier aufgelistet werden. Die meisten davon k&ouml;nnen
152   allerdings innerhalb einer solchen Vorlage nicht sinnvoll verwendet
153   werden. Wenn eine Auflistung dieser Variablen gewollt ist, so kann diese wie
154   folgt erhalten werden:</p>
155
156  <ol>
157
158   <li><code>SL/Form.pm</code> &ouml;ffnen und am Anfang die Zeile
159    <pre>"use Data::Dumper;"</pre> einf&uuml;gen.</li>
160
161   <li>In <code>Form.pm</code> die Funktion <code>parse_template</code>
162    suchen und hier die Zeile <pre>print(STDERR Dumper($self));</pre>
163    einf&uuml;gen.</li>
164
165   <li>Einmal per Browser die gew&uuml;nschte Vorlage "benutzen", z.B. ein PDF
166    f&uuml;r eine Rechnung erzeugen.</li>
167
168   <li>Im <code>error.log</code> vom Apache steht die Ausgabe der Variablen
169    <code>$self</code> in der Form <code>'key' =&gt; 'value',</code>. Alle
170    <code>key</code>s sind verf&uuml;gbar.</li>
171
172  </ol>
173
174  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
175    zum Inhaltsverzeichnis</a></small><br>
176  <hr>
177
178  <h2><a name="tag_style">
179    Anfang und Ende der Tags ver&auml;ndern</a></h2>
180
181  <p>Der Standardstil f&uuml;r Tags sieht vor, dass ein Tag mit dem
182   Kleinerzeichen und einem Prozentzeichen beginnt und mit dem
183   Prozentzeichen und dem Gr&ouml;&szlig;erzeichen endet,
184   beispielsweise <code>&lt;%customer%&gt;</code>. Da diese Form aber
185   z.B. in LaTeX zu Problemen f&uuml;hren kann, weil das Prozentzeichen
186   dort Kommentare einleitet, kann pro HTML- oder
187   LaTeX-Dokumentenvorlage der Stil umgestellt werden.</p>
188
189  <p>Dazu werden in die Datei Zeilen geschrieben, die mit dem f&uuml;r
190   das Format g&uuml;ltigen Kommentarzeichen anfangen,
191   dann <code>config:</code> enthalten, die entsprechende Option setzen
192   und bei HTML-Dokumentenvorlagen mit dem Kommentarendzeichen
193   enden. Beispiel f&uuml;r LaTeX:</p>
194
195  <p><code>% config: tag-style=($ $)</code></p>
196
197  <p>Dies w&uuml;rde Lx-Office dazu veranlassen, Variablen zu ersetzen,
198   wenn sie wie folgt aussehen: <code>($customer$)</code>. Das
199   äquivalente Beispiel f&uuml;r HTML-Dokumentenvorlagen sieht so
200   aus:</p>
201
202  <p><code>&lt;!-- config: tag-stye=($ $)&gt;</code></p>
203
204  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
205    zum Inhaltsverzeichnis</a></small><br>
206  <hr>
207
208  <h2><a name="zuordnung_dateinamen">
209    Zuordnung von den Dateinamen zu den Funktionen</a></h2>
210
211  <p>Diese folgende kurze Auflistung zeigt, welche Vorlage bei welcher
212   Funktion ausgelesen wird. Dabei ist die Dateiendung &quot;.ext&quot;
213   geeignet zu ersetzen: &quot;.tex&quot; f&uuml; LaTeX-Vorlagen und
214   &quot;.odt&quot; f&uuml;r OpenDocument-Vorlagen.</p>
215
216  <ul>
217   <li><code>bin_list.ext</code> -- Lagerliste</li>
218   <li><code>check.ext</code> -- ?</li>
219   <li><code>invoice.ext</code> -- Rechnung</li>
220   <li><code>packing_list.ext</code> -- Verpackungsliste</li>
221   <li><code>pick_list.ext</code> -- Sammelliste</li>
222   <li><code>purcharse_order.ext</code> -- Bestellung an Lieferanten</li>
223   <li><code>request_quotation.ext</code> -- Anfrage an Lieferanten</li>
224   <li><code>sales_order.ext</code> -- Bestellung</li>
225   <li><code>sales_quotation.ext</code> -- Angebot an Kunden</li>
226  </ul>
227
228  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
229    zum Inhaltsverzeichnis</a></small><br>
230  <hr>
231
232  <h2><a name="allgemeine_variablen">
233    Allgemeine Variablen, die in allen Vorlagen vorhanden sind</a></h2>
234
235  <h3><a name="allgemein_stammdaten">
236    Stammdaten von Kunden und Lieferanten:</a></h3>
237
238  <p>
239   <table border="1">
240    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
241    <tr>
242     <td><code>account_number</code></td>
243     <td>Kontonummer</td>
244    </tr>
245    <tr>
246     <td><code>bank</code></td>
247     <td>Name der Bank</td>
248    </tr>
249    <tr>
250     <td><code>bank_code</code></td>
251     <td>Bankleitzahl</td>
252    </tr>
253    <tr>
254     <td><code>business</code></td>
255     <td>Kunden-/Lieferantentyp</td>
256    </tr>
257    <tr>
258     <td><code>city</code></td>
259     <td>Stadt</td>
260    </tr>
261    <tr>
262     <td><code>contact</code></td>
263     <td>Kontakt</td>
264    </tr>
265    <tr>
266     <td><code>country</code></td>
267     <td>Land</td>
268    </tr>
269    <tr>
270     <td><code>cp_email</code></td>
271     <td>Email des Ansprechpartners</td>
272    </tr>
273    <tr>
274     <td><code>cp_givenname</code></td>
275     <td>Vorname des Ansprechpartners</td>
276    </tr>
277    <tr>
278     <td><code>cp_greeting</code></td>
279     <td>Anrede des Ansprechpartners</td>
280    </tr>
281    <tr>
282     <td><code>cp_name</code></td>
283     <td>Name des Ansprechpartners</td>
284    </tr>
285    <tr>
286     <td><code>cp_phone1</code></td>
287     <td>Telefonnummer 1 des Ansprechpartners</td>
288    </tr>
289    <tr>
290     <td><code>cp_phone2</code></td>
291     <td>Telefonnummer 2 des Ansprechpartners</td>
292    </tr>
293    <tr>
294     <td><code>cp_title</code></td>
295     <td>Titel des Ansprechpartners</td>
296    </tr>
297    <tr>
298     <td><code>creditlimit</code></td>
299     <td>Kreditlimit</td>
300    </tr>
301    <tr>
302     <td><code>customeremail</code></td>
303     <td>Email des Kunden; nur f&uuml;r Kunden</td>
304    </tr>
305    <tr>
306     <td><code>customerfax</code></td>
307     <td>Faxnummer des Kunden; nur f&uuml;r Kunden</td>
308    </tr>
309    <tr>
310     <td><code>customernotes</code></td>
311     <td>Bemerkungen beim Kunden; nur f&uuml;r Kunden</td>
312    </tr>
313    <tr>
314     <td><code>customernumber</code></td>
315     <td>Kundennummer; nur f&uuml;r Kunden</td>
316    </tr>
317    <tr>
318     <td><code>customerphone</code></td>
319     <td>Telefonnummer des Kunden; nur f&uuml;r Kunden</td>
320    </tr>
321    <tr>
322     <td><code>discount</code></td>
323     <td>Rabatt</td>
324    </tr>
325    <tr>
326     <td><code>email</code></td>
327     <td>Emailadresse</td>
328    </tr>
329    <tr>
330     <td><code>fax</code></td>
331     <td>Faxnummer</td>
332    </tr>
333    <tr>
334     <td><code>homepage</code></td>
335     <td>Homepage</td>
336    </tr>
337    <tr>
338     <td><code>language</code></td>
339     <td>Sprache</td>
340    </tr>
341    <tr>
342     <td><code>name</code></td>
343     <td>Firmenname</td>
344    </tr>
345    <tr>
346     <td><code>payment_terms</code></td>
347     <td>Zahlungskonditionen</td>
348    </tr>
349    <tr>
350     <td><code>phone</code></td>
351     <td>Telefonnummer</td>
352    </tr>
353    <tr>
354     <td><code>shiptocity</code></td>
355     <td>Stadt (Lieferadresse)
356      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
357    </tr>
358    <tr>
359     <td><code>shiptocontact</code></td>
360     <td>Kontakt (Lieferadresse)
361      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
362    </tr>
363    <tr>
364     <td><code>shiptocountry</code></td>
365     <td>Land (Lieferadresse)
366      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
367    </tr>
368    <tr>
369     <td><code>shiptodepartment1</code></td>
370     <td>Abteilung 1 (Lieferadresse)
371      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
372    </tr>
373    <tr>
374     <td><code>shiptodepartment2</code></td>
375     <td>Abteilung 2 (Lieferadresse)
376      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
377    </tr>
378    <tr>
379     <td><code>shiptoemail</code></td>
380     <td>Email (Lieferadresse)
381      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
382    </tr>
383    <tr>
384     <td><code>shiptofax</code></td>
385     <td>Fax (Lieferadresse)
386      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
387    </tr>
388    <tr>
389     <td><code>shiptoname</code></td>
390     <td>Firmenname (Lieferadresse)
391      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
392    </tr>
393    <tr>
394     <td><code>shiptophone</code></td>
395     <td>Telefonnummer (Lieferadresse)
396      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
397    </tr>
398    <tr>
399     <td><code>shiptostreet</code></td>
400     <td>Straße und Hausnummer (Lieferadresse)
401      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
402    </tr>
403    <tr>
404     <td><code>shiptozipcode</code></td>
405     <td>Postleitzahl (Lieferadresse)
406      <a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
407    </tr>
408    <tr>
409     <td><code>street</code></td>
410     <td>Straße und Hausnummer</td>
411    </tr>
412    <tr>
413     <td><code>taxnumber</code></td>
414     <td>Steuernummer</td>
415    </tr>
416    <tr>
417     <td><code>vendoremail</code></td>
418     <td>Email des Lieferanten; nur f&uuml;r Lieferanten</td>
419    </tr>
420    <tr>
421     <td><code>vendorfax</code></td>
422     <td>Faxnummer des Lieferanten; nur f&uuml;r Lieferanten</td>
423    </tr>
424    <tr>
425     <td><code>vendornotes</code></td>
426     <td>Bemerkungen beim Lieferanten; nur f&uuml;r Lieferanten</td>
427    </tr>
428    <tr>
429     <td><code>vendornumber</code></td>
430     <td>Lieferantennummer; nur f&uuml;r Lieferanten</td>
431    </tr>
432    <tr>
433     <td><code>vendorphone</code></td>
434     <td>Telefonnummer des Lieferanten; nur f&uuml;r Lieferanten</td>
435    </tr>
436    <tr>
437     <td><code>zipcode</code></td>
438     <td>Postleitzahl</td>
439    </tr>
440   </table>
441  </p>
442
443  <p><a name="anmerkung_shipto"><em>Anmerkung</em></a>: Sind die
444   <code>shipto*</code>-Felder in den Stammdaten nicht eingetragen, so haben
445   die Variablen <code>shipto*</code> den gleichen Wert wie die die
446   entsprechenden Variablen der Lieferdaten. Das bedeutet, dass sich einige
447   <code>shipto*</code>-Variablen so nicht in den Stammdaten wiederfinden
448   sondern schlicht Kopien der Lieferdatenvariablen sind
449   (z.B. <code>shiptocontact</code>).</p>
450
451  <h3><a name="allgemein_bearbeiter">
452    Informationen &uuml;ber den Bearbeiter:</a></h3>
453
454  <p>
455   <table border="1">
456    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
457    <tr>
458     <td><code>employee_address</code></td>
459     <td>Adressfeld</td>
460    </tr>
461    <tr>
462     <td><code>employee_businessnumber</code></td>
463     <td>Firmennummer</td>
464    </tr>
465    <tr>
466     <td><code>employee_company</code></td>
467     <td>Firmenname</td>
468    </tr>
469    <tr>
470     <td><code>employee_co_ustid</code></td>
471     <td>Usatzsteuer-Identifikationsnummer</td>
472    </tr>
473    <tr>
474     <td><code>employee_duns</code></td>
475     <td>DUNS-Nummer</td>
476    </tr>
477    <tr>
478     <td><code>employee_email</code></td>
479     <td>Email</td>
480    </tr>
481    <tr>
482     <td><code>employee_fax</code></td>
483     <td>Fax</td>
484    </tr>
485    <tr>
486     <td><code>employee_name</code></td>
487     <td>voller Name</td>
488    </tr>
489    <tr>
490     <td><code>employee_signature</code></td>
491     <td>Signatur</td>
492    </tr>
493    <tr>
494     <td><code>employee_taxnumber</code></td>
495     <td>Steuernummer</td>
496    </tr>
497    <tr>
498     <td><code>employee_tel</code></td>
499     <td>Telefonnummer</td>
500    </tr>
501   </table>
502  </p>
503
504  <h3><a name="allgemein_verkaeufer">
505    Informationen &uuml;ber den Verk&auml;fer (nur bei Verkaufsmasken):</a></h3>
506
507  <p>
508   <table border="1">
509    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
510    <tr>
511     <td><code>salesman_address</code></td>
512     <td>Adressfeld</td>
513    </tr>
514    <tr>
515     <td><code>salesman_businessnumber</code></td>
516     <td>Firmennummer</td>
517    </tr>
518    <tr>
519     <td><code>salesman_company</code></td>
520     <td>Firmenname</td>
521    </tr>
522    <tr>
523     <td><code>salesman_co_ustid</code></td>
524     <td>Usatzsteuer-Identifikationsnummer</td>
525    </tr>
526    <tr>
527     <td><code>salesman_duns</code></td>
528     <td>DUNS-Nummer</td>
529    </tr>
530    <tr>
531     <td><code>salesman_email</code></td>
532     <td>Email</td>
533    </tr>
534    <tr>
535     <td><code>salesman_fax</code></td>
536     <td>Fax</td>
537    </tr>
538    <tr>
539     <td><code>salesman_name</code></td>
540     <td>voller Name</td>
541    </tr>
542    <tr>
543     <td><code>salesman_signature</code></td>
544     <td>Signatur</td>
545    </tr>
546    <tr>
547     <td><code>salesman_taxnumber</code></td>
548     <td>Steuernummer</td>
549    </tr>
550    <tr>
551     <td><code>salesman_tel</code></td>
552     <td>Telefonnummer</td>
553    </tr>
554   </table>
555  </p>
556
557  <h3><a name="allgemein_steuern">
558    Variablen f&uuml;r die einzelnen Steuern:</a></h3>
559
560  <p>
561   <table border="1">
562    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
563    <tr>
564     <td><code>tax</code></td>
565     <td>Steuer</td>
566    </tr>
567    <tr>
568     <td><code>taxbase</code></td>
569     <td>zu versteuernder Betrag</td>
570    </tr>
571    <tr>
572     <td><code>taxdescription</code></td>
573     <td>Name der Steuer</td>
574    </tr>
575    <tr>
576     <td><code>taxrate</code></td>
577     <td>Steuersatz</td>
578    </tr>
579   </table>
580  </p>
581
582  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
583    zum Inhaltsverzeichnis</a></small><br>
584  <hr>
585
586  <h2><a name="invoice">Variablen in Rechnungen</a></h2>
587
588  <h3><a name="invoice_allgemein">Allgemeine Variablen:</a></h3>
589
590  <p>
591   <table border="1">
592    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
593    <tr>
594     <td><code>creditremaining</code></td>
595     <td>Verbleibender Kredit</td>
596    </tr>
597    <tr>
598     <td><code>currency</code></td>
599     <td>Währung</td>
600    </tr>
601    <tr>
602     <td><code>cusordnumber</code></td>
603     <td>Bestellnummer beim Kunden</td>
604    </tr>
605    <tr>
606     <td><code>deliverydate</code></td>
607     <td>Lieferdatum</td>
608    </tr>
609    <tr>
610     <td><code>duedate</code></td>
611     <td>Fälligkeitsdatum</td>
612    </tr>
613    <tr>
614     <td><code>globalprojectnumber</code></td>
615     <td>Projektnummer des ganzen Beleges</td>
616    </tr>
617    <tr>
618     <td><code>intnotes</code></td>
619     <td>Interne Bemerkungen</td>
620    </tr>
621    <tr>
622     <td><code>invdate</code></td>
623     <td>Rechnungsdatum</td>
624    </tr>
625    <tr>
626     <td><code>invnumber</code></td>
627     <td>Rechnungsnummer</td>
628    </tr>
629    <tr>
630     <td><code>invtotal</code></td>
631     <td>gesamter Rechnungsbetrag</td>
632    </tr>
633    <tr>
634     <td><code>notes</code></td>
635     <td>Bemerkungen der Rechnung</td>
636    </tr>
637    <tr>
638     <td><code>orddate</code></td>
639     <td>Auftragsdatum</td>
640    </tr>
641    <tr>
642     <td><code>ordnumber</code></td>
643     <td>Auftragsnummer, wenn die Rechnung aus einem Auftrag erstellt wurde</td>
644    </tr>
645    <tr>
646     <td><code>payment_terms</code></td>
647     <td>Zahlungskonditionen</td>
648    </tr>
649    <tr>
650     <td><code>quodate</code></td>
651     <td>Angebotsdatum</td>
652    </tr>
653    <tr>
654     <td><code>quonumber</code></td>
655     <td>Angebotsnummer</td>
656    </tr>
657    <tr>
658     <td><code>shippingpoint</code></td>
659     <td>Versandort</td>
660    </tr>
661    <tr>
662     <td><code>shipvia</code></td>
663     <td>Transportmittel</td>
664    </tr>
665    <tr>
666     <td><code>subtotal</code></td>
667     <td>Zwischensumme aller Posten ohne Steuern</td>
668    </tr>
669    <tr>
670     <td><code>sumcarriedforward</code></td>
671     <td>Zwischensumme aller bisher ausgegebenen Posten. Sollte nur in einem
672      <a href="dokumentenvorlagen-und-variablen.html#bloecke_pagebreak">
673       <code>pagebreak</code></a>-Block verwendet werden.</td>
674    </tr>
675    <tr>
676     <td><code>total</code></td>
677     <td>Restsumme der Rechnung (Summe abz&uuml;glich bereits bezahlter Posten)</td>
678    </tr>
679    <tr>
680     <td><code>transaction_description</code></td>
681     <td>Vorgangsbezeichnung</td>
682    </tr>
683    <tr>
684     <td><code>transdate</code></td>
685     <td>Auftragsdatum wenn die Rechnung aus einem Auftrag erstellt wurde</td>
686    </tr>
687   </table>
688  </p>
689
690  <h3><a name="invoice_posten">
691    Variablen f&uuml;r jeden Posten auf der Rechnung:</a></h3>
692
693  <p>
694   <table border="1">
695    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
696    <tr>
697     <td><code>assembly</code></td>
698     <td>Erzeugnis</td>
699    </tr>
700    <tr>
701     <td><code>bin</code></td>
702     <td>Stellage</td>
703    </tr>
704    <tr>
705     <td><code>deliverydate_oe</code></td>
706     <td>Lieferdatum</td>
707    </tr>
708    <tr>
709     <td><code>description</code></td>
710     <td>Artikelbeschreibung</td>
711    </tr>
712    <tr>
713     <td><code>discount</code></td>
714     <td>Rabatt als Betrag</td>
715    </tr>
716    <tr>
717     <td><code>linetotal</code></td>
718     <td>Zeilensumme (Anzahl * Einzelpreis)</td>
719    </tr>
720    <tr>
721     <td><code>listprice</code></td>
722     <td>Listenpreis</td>
723    </tr>
724    <tr>
725     <td><code>netprice</code></td>
726     <td>Nettopreis</td>
727    </tr>
728    <tr>
729     <td><code>number</code></td>
730     <td>Artikelnummer</td>
731    </tr>
732    <tr>
733     <td><code>ordnumber_oe</code></td>
734     <td>Auftragsnummer des Originalauftrags, wenn die Rechnung aus einem Sammelauftrag erstellt wurde</td>
735    </tr>
736    <tr>
737    <td><code>p_discount</code></td>
738     <td>Rabatt in Prozent</td>
739    </tr>
740    <tr>
741     <td><code>partnotes</code></td>
742     <td>Die beim Artikel gespeicherten Bemerkungen</td>
743    </tr>
744    <tr>
745     <td><code>partsgroup</code></td>
746     <td>Warengruppe</td>
747    </tr>
748    <tr>
749     <td><code>price_factor</code></td>
750     <td>Der Preisfaktor als Zahl, sofern einer eingestellt ist</td>
751    </tr>
752    <tr>
753     <td><code>price_factor_name</code></td>
754     <td>Der Name des Preisfaktors, sofern einer eingestellt ist</td>
755    </tr>
756    <tr>
757     <td><code>projectnumber</code></td>
758     <td>Projektnummer</td>
759    </tr>
760    <tr>
761     <td><code>qty</code></td>
762     <td>Anzahl</td>
763    </tr>
764    <tr>
765     <td><code>runningnumber</code></td>
766     <td>Position auf der Rechnung (1, 2, 3...)</td>
767    </tr>
768    <tr>
769     <td><code>sellprice</code></td>
770     <td>Verkaufspreis</td>
771    </tr>
772    <tr>
773     <td><code>serialnumber</code></td>
774     <td>Seriennummer</td>
775    </tr>
776    <tr>
777     <td><code>transdate_oe</code></td>
778     <td>Auftragsdatum des Originalauftrags, wenn die Rechnung aus einem Sammelauftrag erstellt wurde</td>
779    </tr>
780    <tr>
781     <td><code>unit</code></td>
782     <td>Einheit</td>
783    </tr>
784   </table>
785  </p>
786
787  <h3><a name="invoice_zahlungen">
788    Variablen f&uuml;r die einzelnen Zahlungseingänge:</a></h3>
789
790  <p>
791   <table border="1">
792    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
793    <tr>
794     <td><code>datepaid</code></td>
795     <td>Datum</td>
796    </tr>
797    <tr>
798     <td><code>memo</code></td>
799     <td>Memo</td>
800    </tr>
801    <tr>
802     <td><code>paid</code></td>
803     <td>Betrag</td>
804    </tr>
805    <tr>
806     <td><code>source</code></td>
807     <td>Beleg</td>
808    </tr>
809    <tr>
810     <td><code>exchangerate</code></td>
811     <td>Wechselkurs</td>
812    </tr>
813    <tr>
814     <td><code>forex</code></td>
815     <td>Konto</td>
816    </tr>
817   </table>
818  </p>
819
820  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
821    zum Inhaltsverzeichnis</a></small><br>
822  <hr>
823
824  <h2><a name="dunning">Variablen in Mahnungen und Rechnungen &uuml;ber Mahngeb&uuml;hren</a></h2>
825
826  <h3><a name="dunning_vorlagennamen">Namen der Vorlagen</a></h3>
827
828  <p>Die Namen der Vorlagen werden im System-Men&uuml; vom Benutzer
829   eingegeben. Wird f&uuml;r ein Mahnlevel die Option zur automatischen
830   Erstellung einer Rechnung &uuml;ber die Mahngeb&uuml;hren und Zinsen
831   aktiviert, so wird der Name der Vorlage f&uuml;r diese Rechnung aus
832   dem Vorlagenname f&uuml;r diese Mahnstufe mit dem
833   Zusatz <code>_invoice</code> gebildet. Weiterhin werden die
834   K&uuml;rzel f&uuml;r die ausgew&auml;hlte Sprache und den
835   ausgew&auml;hlten Drucker angeh&auml;ngt.</p>
836
837  <h3><a name="dunning_allgemein">Allgemeine Variablen in Mahnungen:</a></h3>
838
839  <p>Die Variablen des Verkäufers stehen wie gewohnt
840   als <code>employee_...</code> zur Verfügung. Die Adressdaten des
841   Kunden stehen als Variablen <code>name</code>, <code>street</code>,
842   <code>zipcode</code>, <code>city</code>, <code>country</code>,
843   <code>department_1</code>, <code>department_2</code>, und
844   <code>email</code> zur Verfügung.
845  </p>
846
847  <p>Weitere Variablen beinhalten:</p>
848
849  <p>
850   <table border="1">
851    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
852    <tr>
853     <td><code>dunning_date</code></td>
854     <td>Datum der Mahnung</td>
855    </tr>
856    <tr>
857     <td><code>dunning_duedate</code></td>
858     <td>F&auml;lligkeitsdatum f&uuml;r diese Mahhnung</td>
859    </tr>
860    <tr>
861     <td><code>fee</code></td>
862     <td>Kummulative Mahngebühren</td>
863    </tr>
864    <tr>
865     <td><code>interest_rate</code></td>
866     <td>Zinssatz per anno in Prozent</td>
867    </tr>
868    <tr>
869     <td><code>total_amount</code></td>
870     <td>Gesamter noch zu zahlender Betrag als <code>fee</code> + <code>total_interest</code> + <code>total_open_amount</code></td>
871    </tr>
872    <tr>
873     <td><code>total_interest</code></td>
874     <td>Zinsen per anno &uuml;ber alle Rechnungen</td>
875    </tr>
876    <tr>
877     <td><code>total_open_amount</code></td>
878     <td>Summe &uuml;ber alle offene Betr&auml;ge der Rechnungen</td>
879    </tr>
880   </table>
881  </p>
882
883  <h3><a name="dunning_details">
884    Variablen f&uuml;r jede gemahnte Rechnung in einer Mahnung:</a></h3>
885
886  <p>
887   <table border="1">
888    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
889    <tr>
890     <td><code>dn_amount</code></td>
891     <td>Rechnungssumme (brutto)</td>
892    </tr>
893    <tr>
894     <td><code>dn_duedate</code></td>
895     <td>Originales F&auml;lligkeitsdatum der Rechnung</td>
896    </tr>
897    <tr>
898     <td><code>dn_dunning_date</code></td>
899     <td>Datum der Mahnung</td>
900    </tr>
901    <tr>
902     <td><code>dn_dunning_duedate</code></td>
903     <td>F&auml;lligkeitsdatum der Mahnung</td>
904    </tr>
905    <tr>
906     <td><code>dn_fee</code></td>
907     <td>Kummulative Mahngeb&uuml;hr</td>
908    </tr>
909    <tr>
910     <td><code>dn_interest</code></td>
911     <td>Zinsen per anno f&uuml;r diese Rechnung</td>
912    </tr>
913    <tr>
914     <td><code>dn_invnumber</code></td>
915     <td>Rechnungsnummer</td>
916    </tr>
917    <tr>
918     <td><code>dn_linetotal</code></td>
919     <td>Noch zu zahlender Betrag (ergibt sich aus <code>dn_open_amount + dn_fee + dn_interest</code>)</td>
920    </tr>
921    <tr>
922     <td><code>dn_netamount</code></td>
923     <td>Rechnungssumme (netto)</td>
924    </tr>
925    <tr>
926     <td><code>dn_open_amount</code></td>
927     <td>Offener Rechnungsbetrag</td>
928    </tr>
929    <tr>
930     <td><code>dn_ordnumber</code></td>
931     <td>Bestellnummer</td>
932    </tr>
933    <tr>
934     <td><code>dn_transdate</code></td>
935     <td>Rechnungsdatum</td>
936    </tr>
937   </table>
938  </p>
939
940  <h3><a name="dunning_invoice">Variablen in automatisch erzeugten
941    Rechnungen &uuml;ber Mahngeb&uuml;hren</a></h3>
942
943  <p>Die Variablen des Verkäufers stehen wie gewohnt
944   als <code>employee_...</code> zur Verfügung. Die Adressdaten des
945   Kunden stehen als Variablen <code>name</code>, <code>street</code>,
946   <code>zipcode</code>, <code>city</code>, <code>country</code>,
947   <code>department_1</code>, <code>department_2</code>, und
948   <code>email</code> zur Verfügung.
949  </p>
950
951  <p>Weitere Variablen beinhalten:</p>
952
953  <p>
954   <table border="1">
955    <tr><th>Variablenname</th><th>Bedeutung</th></tr>
956    <tr>
957     <td><code>duedate</code></td>
958     <td>Fälligkeitsdatum der Rechnung</td>
959    </tr>
960    <tr>
961     <td><code>dunning_id</code></td>
962     <td>Mahnungsnummer</td>
963    </tr>
964    <tr>
965     <td><code>fee</code></td>
966     <td>Mahngeb&uuml;hren</td>
967    </tr>
968    <tr>
969     <td><code>interest</code></td>
970     <td>Zinsen</td>
971    </tr>
972    <tr>
973     <td><code>invamount</code></td>
974     <td>Rechnungssumme (ergibt sich aus <code>fee + interest</code>)</td>
975    </tr>
976    <tr>
977     <td><code>invdate</code></td>
978     <td>Rechnungsdatum</td>
979    </tr>
980    <tr>
981     <td><code>invnumber</code></td>
982     <td>Rechnungsnummer</td>
983    </tr>
984   </table>
985  </p>
986
987  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
988    zum Inhaltsverzeichnis</a></small><br>
989  <hr>
990
991  <h2><a name="anderevorlagen">
992    Variablen in anderen Vorlagen</a></h2>
993
994  <p>Die Variablen in anderen Vorlagen sind &auml;hnlich wie in der
995   Rechnung. Allerdings hei&szlig;en die Variablen, die mit <code>inv</code>
996   beginnen, jetzt anders. Bei den Angeboten fangen sie mit <code>quo</code>
997   f&uuml;r "quotation" an: <code>quodate</code> f&uuml;r Angebotsdatum
998   etc. Bei Bestellungen wiederum fangen sie mit <code>ord</code> f&uuml;r
999   "order" an: <code>ordnumber</code> f&uuml;r Bestellnummer etc.</p>
1000
1001  <p>Manche Variablen sind in anderen Vorlagen hingegen gar nicht vorhanden wie
1002   z.B. die f&uuml;r bereits verbuchte Zahlungseing&auml;nge. Dies sind
1003   Variablen, die vom Gesch&auml;ftsablauf her in der entsprechenden Vorlage
1004   keine Bedeutung haben oder noch nicht belegt sein k&ouml;nnen.</p>
1005
1006  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
1007    zum Inhaltsverzeichnis</a></small><br>
1008  <hr>
1009
1010  <h2><a name="bloecke">
1011    Bl&ouml;cke, bedingte Anweisungen und Schleifen</a></h2>
1012
1013  <p>Der Parser kennt neben den Variablen einige weitere Konstrukte, die
1014   gesondert behandelt werden. Diese sind wie Variablennamen in spezieller
1015   Weise markiert: <code>&lt;%anweisung%&gt;</code></p>
1016
1017  <h3><a name="bloecke_ifnot">Der <code>if not</code>-Block</a></h3>
1018
1019  <p class="blue"><code>&lt;%if not variablenname%&gt;<br>
1020    ...<br>
1021    &lt;%end&gt;</code></p>
1022
1023  <p>Eine normale "if-not-then"-Bedingung. Die Zeilen zwischen dem "if not" und
1024   dem "end" werden nur ausgegeben, wenn die Variable "variablenname" nicht
1025   gesetzt oder gleich 0 ist.</p>
1026
1027  <h3><a name="bloecke_if">Der <code>if</code>-Block</a></h3>
1028
1029  <p class="blue"><code>&lt;%if variablenname%&gt;<br>
1030    ...<br>
1031    &lt;%end&gt;</code></p>
1032
1033  <p>Eine normale "if-then"-Bedingung. Die Zeilen zwischen dem "if" und dem
1034   "end" werden nur ausgegeben, wenn die Variable "variablenname" gesetzt und
1035   ungleich 0 ist.</p>
1036
1037  <h3><a name="bloecke_foreach">Die <code>foreach</code>-Schleife</a></h3>
1038
1039  <p class="blue"><code>&lt;%foreach variablenname%&gt;<br>
1040    ...<br>
1041    &lt;%end&gt;</code></p>
1042
1043  <p>F&uuml;gt die Zeilen zwischen den beiden Anweisungen so oft ein, wie das
1044   Perl-Array der Variablen "variablenname" Elemente enth&auml;t. Dieses
1045   Konstrukt wird zur Ausgabe der einzelnen Posten einer Rechnung / eines
1046   Angebots sowie zur Ausgabe der Steuern benutzt. In jedem Durchlauf werden
1047   die <a href="dokumentenvorlagen-und-variablen.html#invoice_posten">zeilenbezogenen
1048   Variablen</a> jeweils auf den Wert f&uuml;r die aktuelle Position
1049   gesetzt.</p>
1050
1051  <p>Die Syntax sieht normalerweise wie folgt aus:</p>
1052
1053  <p class="blue"><code>&lt;%foreach number%&gt;<br>
1054    Position: &lt;%runningnumber%&gt;<br>
1055    Anzahl: &lt;%qty%&gt;<br>
1056    Artikelnummer: &lt;%number%&gt;<br>
1057    Beschreibung: &lt;%description%&gt;<br>
1058    ...<br>
1059    &lt;%end&gt;</code></p>
1060
1061  <p>Besonderheit in OpenDocument-Vorlagen: Tritt ein
1062   <code>&lt;foreach&gt;</code>-Block innerhalb einer Tabellenzelle
1063   auf, so wird die komplette Tabellenzeile so oft wiederholt wie
1064   notwendig. Tritt er au&szlig;erhalb auf, so wird nur der Inhalt
1065   zwischen <code>&lt;foreach&gt;</code> und <code>&lt;end&gt;</code>
1066   wiederholt, nicht aber die komplette Zeile, in der er steht.</p>
1067
1068  <h3><a name="bloecke_pagebreak">Der <code>pagebreak</code>-Block</a></h3>
1069
1070  <p class="blue"><code>&lt;%pagebreak ZpZ ZeS ZzS%&gt;<br>
1071    ...<br>
1072    &lt;%end&gt;</code></p>
1073
1074  <p>Dieser Block existiert nur in LaTeX-Vorlagen.</p>
1075
1076  <p>Dieser Block legt das Verhalten beim manuellen Einf&uuml;gen eines
1077   Seitenumbruchs fest. Normalerweise bricht LaTeX die Seiten selber um. Beim
1078   Rechnungsdruck ist das oft nicht gew&uuml;nscht, oder man m&ouml;chte im
1079   Falle eines Seitenumbruchs den &Uuml;bertrag etc. mit ausgeben. Deswegen
1080   versucht der Parser, manuell Seitenumbr&uuml;che einzuf&uuml;gen,
1081   w&auml;hrend er einen <code>foreach</code>-Block auswertet, weil hier die
1082   manuellen Seitenumbr&uuml;che erforderlich werden. Daf&uuml;r ben&ouml;tigt
1083   der Parser aber drei Informationen:</p>
1084
1085  <p>
1086   <ol>
1087    <li>Wieviele Zeichen passen bei der Variablen "description" pro Posten
1088     in eine Zeile? Das ist der Parameter "ZpZ" (Zeichen pro Zeile).</li>
1089    <li>Wieviele Zeilen/Posten passen auf die erste Seite? Das
1090     ist der Parameter "ZeS" (Zeilen erste Seite).</li>
1091    <li>Wieviele Zeilen/Posten passen auf die zweite und alle nachfolgenden
1092     Seiten? Das ist der Parameter "ZzS" (Zeilen zweite Seite).</li>
1093   </ol>
1094  </p>
1095
1096  <p>Diese Parameter sind drei Zahlen, die manuell durch Verwendung von langen
1097   Warenbezeichnungen und Rechnungen mit vielen Posten bestimmt werden
1098   m&uuml;ssen.</p>
1099
1100  <p>&Uuml;blicherweise wird in diesem Block zuerst die aktuelle Tabelle
1101   geschlossen, eventuell Text eingef&uuml;gt (z.B. "Fortsetzung auf der
1102   n&auml;chsten Seite"), dann ein Seitenumbruch erzwungen, eventuell Text
1103   eingef&uuml;gt (z.B. "&Uuml;bertrag von der vorherigen Seite:
1104   &lt;%sumcarriedforward%&gt; EUR") und die Tabelle wieder ge&ouml;ffnet.</p>
1105
1106  <p>Wird kein manueller Seitenumbruch gew&uuml;scht, so kann dieser Block
1107   komplett entfallen.</p>
1108
1109  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
1110    zum Inhaltsverzeichnis</a></small><br>
1111  <hr>
1112
1113  <h2><a name="markup">
1114    Markup-Code, der innerhalb von Formularen zur Textformatierung
1115    verwendet werden kann</a></h2>
1116
1117  <p>Wenn der Benutzer innhalb von Formularen in Lx-Office Text anders
1118   formatiert haben m&ouml;chte, so ist dies begrenzt m&ouml;glich. Lx-Office
1119   unterst&uuml;tzt die Textformatierung mit HTML-&auml;hnlichen Tags. Der
1120   Benutzer kann z.B. bei der Artikelbeschreibung auf einer Rechnung Teile des
1121   Texts zwischen Start- und Endtags setzen. Dieser Teil wird dann automatisch
1122   in Anweisungen f&uuml;r das ausgew&auml;hlte Vorlagenformat (HTML oder
1123   PDF &uuml;ber LaTeX) umgesetzt.</p>
1124
1125  <p>Die unterst&uuml;tzen Formatierungen sind:</p>
1126
1127  <p>
1128   <table border="1">
1129    <tr><th>Formatierung</th><th>Auswirkung</th></tr>
1130    <tr>
1131     <td><code>&lt;b&gt;Text&lt;/b&gt;</code></td>
1132     <td>Text wird in <b>fettdruck</b> gesetzt.</td>
1133    </tr>
1134    <tr>
1135     <td><code>&lt;i&gt;Text&lt;/i&gt;</code></td>
1136     <td>Text wird <i>kursiv</i> gesetzt.</td>
1137    </tr>
1138    <tr>
1139     <td><code>&lt;u&gt;Text&lt;/u&gt;</code></td>
1140     <td>Text wird <u>unterstrichen</u>.</td>
1141    </tr>
1142    <tr>
1143     <td><code>&lt;s&gt;Text&lt;/s&gt;</code></td>
1144     <td>Text wird <s>durchgestrichen</s>. Diese Formatierung ist nicht bei der
1145      Ausgabe als PDF &uuml;ber LaTeX verf&uuml;gbar.</td>
1146    </tr>
1147    <tr>
1148     <td><code>&lt;pagebreak&gt;</code></td>
1149     <td>Erzwingt einen Seitenumbruch (siehe unten).</td>
1150    </tr>
1151   </table>
1152  </p>
1153
1154  <p>Eine Besonderheit ist der Befehl <code>&lt;pagebreak&gt;</code>,
1155   der nur in LaTeX-Vorlagen funktioniert und in anderen Vorlagen
1156   einfach gel&ouml;scht wird. Dieser erzwingt unabh&auml;ngig von der
1157   im <a
1158   href="dokumentenvorlagen-und-variablen.html#bloecke_pagebreak">pagebreak-Block</a>
1159   voreingestellten Werte einen Seitenumbruch nach der aktuellen
1160   Rechnungsposition. Dementsprechend funktioniert er nur innerhalb von
1161   <code>&lt;foreach...&gt;</code>-Schleifen. Weiterhin ben&ouml;tigt er kein
1162   Endtag.</p>
1163
1164  <small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
1165    zum Inhaltsverzeichnis</a></small><br>
1166  <hr>
1167
1168 </body>
1169 </html>