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