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