2 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
3 <title>3.3. Dokumentenvorlagen und verfügbare Variablen</title><link rel="stylesheet" type="text/css" href="style.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1-RC2"><link rel="home" href="index.html" title="kivitendo 3.9.2: Installation, Konfiguration, Entwicklung"><link rel="up" href="ch03.html" title="Kapitel 3. Features und Funktionen"><link rel="prev" href="ch03s02.html" title="3.2. Bankerweiterung"><link rel="next" href="ch03s04.html" title="3.4. Excel-Vorlagen"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3.3. Dokumentenvorlagen und verfügbare Variablen</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s02.html">Zurück</a> </td><th width="60%" align="center">Kapitel 3. Features und Funktionen</th><td width="20%" align="right"> <a accesskey="n" href="ch03s04.html">Weiter</a></td></tr></table><hr></div><div class="sect1" title="3.3. Dokumentenvorlagen und verfügbare Variablen"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="dokumentenvorlagen-und-variablen"></a>3.3. Dokumentenvorlagen und verfügbare Variablen</h2></div></div></div><div class="sect2" title="3.3.1. Einführung"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.einf%C3%BChrung"></a>3.3.1. Einführung</h3></div></div></div><p>Dies ist eine Auflistung der Standard-Dokumentenvorlagen und
4 aller zur Bearbeitung verfügbaren Variablen. Eine Variable wird in
5 einer Vorlage durch ihren Inhalt ersetzt, wenn sie in der Form
6 <code class="function"><%variablenname%></code> verwendet wird. Für
7 LaTeX- und HTML-Vorlagen kann man die Form dieser Tags auch verändern
8 (siehe <a class="xref" href="ch03s03.html#dokumentenvorlagen-und-variablen.tag-style" title="3.3.4. Anfang und Ende der Tags verändern">Anfang und Ende der Tags verändern</a>).</p><p>kivitendo unterstützt LaTeX-, HTML- und OpenDocument-Vorlagen.
9 Sofern es nicht ausdrücklich eingeschränkt wird, gilt das im Folgenden
10 gesagte für alle Vorlagenarten.</p><p>Insgesamt sind technisch gesehen eine ganze Menge mehr Variablen
11 verfügbar als hier aufgelistet werden. Die meisten davon können
12 allerdings innerhalb einer solchen Vorlage nicht sinnvoll verwendet
13 werden. Wenn eine Auflistung dieser Variablen gewollt ist, so kann
14 diese wie folgt erhalten werden:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
15 <code class="filename">SL/Form.pm</code> öffnen und am Anfang die
16 Zeile "<span class="command"><strong>use Data::Dumper;</strong></span>" einfügen.</p></li><li class="listitem"><p>In <code class="filename">Form.pm</code> die Funktion
17 <code class="function">parse_template</code> suchen und hier die Zeile
18 <span class="command"><strong>print(STDERR Dumper($self));</strong></span> einfügen.</p></li><li class="listitem"><p>Einmal per Browser die gewünschte Vorlage "benutzen", z.B.
19 ein PDF für eine Rechnung erzeugen.</p></li><li class="listitem"><p>Im <code class="filename">error.log</code> Apache steht die Ausgabe
20 der Variablen <code class="varname">$self</code> in der Form <code class="varname">'key'
21 => 'value',</code>. Alle <code class="varname">key</code>s sind
22 verfügbar.</p></li></ul></div></div><div class="sect2" title="3.3.2. Variablen ausgeben"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.variablen-ausgeben"></a>3.3.2. Variablen ausgeben</h3></div></div></div><p>Um eine Variable auszugeben, müssen sie einfach nur zwischen die
23 Tags geschrieben werden, also z.B.
24 <code class="varname"><%variablenname%></code>.</p><p>Optional kann man auch mit Leerzeichen getrennte Flags angeben,
25 die man aber nur selten brauchen wird. Die Syntax sieht also so aus:
26 <code class="varname"><%variablenname FLAG1 FLAG2%></code>. Momentan
27 werden die folgenden Flags unterstützt:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
28 <code class="option">NOFORMAT</code> gilt nur für Zahlenwerte und gibt
29 den Wert ohne Formatierung, also ohne Tausendertrennzeichen mit
30 mit einem Punkt als Dezimaltrennzeichen aus. Nützlich z.B., wenn
31 damit in der Vorlage z.B. von LaTeX gerechnet werden soll.</p></li><li class="listitem"><p>
32 <code class="option">NOESCAPE</code> unterdrückt das Escapen von
33 Sonderzeichen für die Vorlagensprache. Wenn also in einer
34 Variablen bereits gültiger LaTeX-Code steht und dieser von LaTeX
35 auch ausgewertet und nicht wortwörtlich angezeigt werden soll, so
36 ist dieses Flag sinnvoll.</p></li></ul></div><p>Beispiel:</p><pre class="programlisting"><%quototal NOFORMAT%></pre></div><div class="sect2" title="3.3.3. Verwendung in Druckbefehlen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.verwendung-in-druckbefehlen"></a>3.3.3. Verwendung in Druckbefehlen</h3></div></div></div><p>In der Admininstration können Drucker definiert werden. Auch im
37 dort eingebbaren Druckbefehl können die hier aufgelisteten Variablen
38 und Kontrollstrukturen verwendet werden. Ihr Inhalt wird dabei nach
39 den Regeln der gängigen Shells formatiert, sodass Sonderzeichen wie
40 <code class="function">`...`</code> nicht zu unerwünschtem Verhalten
41 führen.</p><p>Dies erlaubt z.B. die Definition eines Faxes als Druckerbefehl,
42 für das die Telefonnummer eines Ansprechpartners als Teil der
43 Kommandozeile verwendet wird. Für ein fiktives Kommando könnte das
44 z.B. wie folgt aussehen:</p><pre class="programlisting">send_fax --number <%if cp_phone2%><%cp_phone2%><%else%><%cp_phone1%><%end%></pre></div><div class="sect2" title="3.3.4. Anfang und Ende der Tags verändern"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.tag-style"></a>3.3.4. Anfang und Ende der Tags verändern</h3></div></div></div><p>Der Standardstil für Tags sieht vor, dass ein Tag mit dem
45 Kleinerzeichen und einem Prozentzeichen beginnt und mit dem
46 Prozentzeichen und dem Größerzeichen endet, beispielsweise
47 <code class="function"><%customer%></code>. Da diese Form aber z.B. in
48 LaTeX zu Problemen führen kann, weil das Prozentzeichen dort
49 Kommentare einleitet, kann pro HTML- oder LaTeX-Dokumentenvorlage der
50 Stil umgestellt werden.</p><p>Dazu werden in die Datei Zeilen geschrieben, die mit dem für das
51 Format gültigen Kommentarzeichen anfangen, dann
52 <code class="function">config:</code> enthalten, die entsprechende Option
53 setzen und bei HTML-Dokumentenvorlagen mit dem Kommentarendzeichen
54 enden. Beispiel für LaTeX:</p><pre class="programlisting">% config: tag-style=($ $)</pre><p>Dies würde kivitendo dazu veranlassen, Variablen zu ersetzen,
55 wenn sie wie folgt aussehen: <code class="function">($customer$)</code>. Das
56 äquivalente Beispiel für HTML-Dokumentenvorlagen sieht so aus:</p><pre class="programlisting"><!-- config: tag-style=($ $) --></pre></div><div class="sect2" title="3.3.5. Zuordnung von den Dateinamen zu den Funktionen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.zuordnung-dateinamen"></a>3.3.5. Zuordnung von den Dateinamen zu den Funktionen</h3></div></div></div><p>Diese folgende kurze Auflistung zeigt, welche Vorlage bei
57 welcher Funktion ausgelesen wird. Dabei ist die Dateiendung
58 "<code class="filename">.ext</code>" geeignet zu ersetzen:
59 "<code class="filename">.tex</code>" für LaTeX-Vorlagen und
60 "<code class="filename">.odt</code>" für OpenDocument-Vorlagen.</p><div class="variablelist"><dl><dt><span class="term">
61 <code class="filename">bin_list.ext</code>
62 </span></dt><dd><p>Lagerliste</p></dd><dt><span class="term">
63 <code class="filename">check.ext</code>
64 </span></dt><dd><p>?</p></dd><dt><span class="term">
65 <code class="filename">invoice.ext</code>
66 </span></dt><dd><p>Rechnung</p></dd><dt><span class="term">
67 <code class="filename">packing_list.ext</code>
68 </span></dt><dd><p>Packliste</p></dd><dt><span class="term">
69 <code class="filename">pick_list.ext</code>
70 </span></dt><dd><p>Sammelliste</p></dd><dt><span class="term">
71 <code class="filename">purchase_delivery_order.ext</code>
72 </span></dt><dd><p>Lieferschein (Einkauf)</p></dd><dt><span class="term">
73 <code class="filename">purcharse_order.ext</code>
74 </span></dt><dd><p>Bestellung an Lieferanten</p></dd><dt><span class="term">
75 <code class="filename">request_quotation.ext</code>
76 </span></dt><dd><p>Anfrage an Lieferanten</p></dd><dt><span class="term">
77 <code class="filename">sales_delivery_order.ext</code>
78 </span></dt><dd><p>Lieferschein (Verkauf)</p></dd><dt><span class="term">
79 <code class="filename">sales_order.ext</code>
80 </span></dt><dd><p>Bestellung</p></dd><dt><span class="term">
81 <code class="filename">sales_quotation.ext</code>
82 </span></dt><dd><p>Angebot an Kunden</p></dd><dt><span class="term">
83 <code class="filename">zahlungserinnerung.ext</code>
84 </span></dt><dd><p>Mahnung (Dateiname im Programm konfigurierbar)</p></dd><dt><span class="term">
85 <code class="filename">zahlungserinnerung_invoice.ext</code>
86 </span></dt><dd><p>Rechnung über Mahngebühren (Dateiname im Programm
87 konfigurierbar)</p></dd></dl></div></div><div class="sect2" title="3.3.6. Sprache, Drucker und E-Mail"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.dateinamen-erweitert"></a>3.3.6. Sprache, Drucker und E-Mail</h3></div></div></div><p>Angeforderte Sprache und Druckerkürzel in den Dateinamen mit
88 eingearbeitet. So wird aus der Vorlage
89 <code class="filename">sales_order.ext</code> bei Sprache
90 <code class="function">de</code> und Druckerkürzel <code class="function">lpr2</code>
91 der Vorlagenname <code class="filename">sales_order_de_lpr2.ext</code>.
92 Zusätzlich können für E-Mails andere Vorlagen erstellt werden, diese
93 bekommen dann noch das Kürzel <code class="filename">_email</code>, der
94 vollständige Vorlagenname wäre dann
95 <code class="filename">sales_order_email_de_lpr2.ext</code>. In allen Fällen
96 kann eine Standarddatei <code class="filename">default.ext</code> hinterlegt
97 werden. Diese wird verwendet, wenn keine der anderen Varianten
98 gefunden wird.</p><p>Die vollständige Suchreihenfolge für einen Verkaufsauftrag mit
99 der Sprache "de" und dem Drucker "lpr2", der per E-Mail im Format PDF
100 verschickt wird, ist:</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>
101 <code class="filename">sales_order_email_de_lpr2.tex</code>
102 </p></li><li class="listitem"><p>
103 <code class="filename">sales_order_de_lpr2.tex</code>
104 </p></li><li class="listitem"><p>
105 <code class="filename">sales_order.tex</code>
106 </p></li><li class="listitem"><p>
107 <code class="filename">default.tex</code>
108 </p></li></ol></div><p>Die kurzen Varianten dieser Vorlagentitel müssen dann entweder
109 Standardwerte anzeigen, oder die angeforderten Werte selbst auswerten,
110 siehe dazu <a class="xref" href="ch03s03.html#dokumentenvorlagen-und-variablen.allgemeine-variablen.meta" title="3.3.7.1. Metainformationen zur angeforderten Vorlage">Metainformationen zur angeforderten Vorlage</a>.</p></div><div class="sect2" title="3.3.7. Allgemeine Variablen, die in allen Vorlagen vorhanden sind"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.allgemeine-variablen"></a>3.3.7. Allgemeine Variablen, die in allen Vorlagen vorhanden
111 sind</h3></div></div></div><div class="sect3" title="3.3.7.1. Metainformationen zur angeforderten Vorlage"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemeine-variablen.meta"></a>3.3.7.1. Metainformationen zur angeforderten Vorlage</h4></div></div></div><p>Diese Variablen liefern Informationen darüber welche Variante
112 einer Vorlage der Benutzer angefragt hat. Sie sind nützlich für
113 Vorlagenautoren, die aus einer zentralen Layoutvorlage die einzelnen
114 Formulare einbinden möchten.</p><div class="variablelist"><dl><dt><span class="term">
115 <code class="varname">template_meta.formname</code>
116 </span></dt><dd><p>Basisname der Vorlage. Identisch mit der <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.zuordnung-dateinamen" title="3.3.5. Zuordnung von den Dateinamen zu den Funktionen">Zurordnung
117 zu den Dateinamen</a> ohne die Erweiterung. Ein
118 Verkaufsauftrag enthält hier
119 <code class="constant">sales_order</code>.</p></dd><dt><span class="term">
120 <code class="varname">template_meta.language.description</code>
121 </span></dt><dd><p>Beschreibung der verwendeten Sprache</p></dd><dt><span class="term">
122 <code class="varname">template_meta.language.template_code</code>
123 </span></dt><dd><p>Vorlagenkürzel der verwendeten Sprache, identisch mit
124 dem Kürzel das im Dateinamen verwendetet wird.</p></dd><dt><span class="term">
125 <code class="varname">template_meta.language.output_numberformat</code>
126 </span></dt><dd><p>Zahlenformat der verwendeten Sprache in der Form
127 "<code class="constant">1.000,00</code>". Experimentell! Nur
128 interessant für Vorlagen die mit unformatierten Werten
129 arbeiten.</p></dd><dt><span class="term">
130 <code class="varname">template_meta.language.output_dateformat</code>
131 </span></dt><dd><p>Datumsformat der verwendeten Sprache in der Form
132 "<code class="constant">dd.mm.yyyy</code>". Experimentell! Nur
133 interessant für Vorlagen die mit unformatierten Werten
134 arbeiten.</p></dd><dt><span class="term">
135 <code class="varname">template_meta.format</code>
136 </span></dt><dd><p>Das angeforderte Format. Kann im Moment die Werte
137 <code class="constant">pdf</code>, <code class="constant">postscript</code>,
138 <code class="constant">html</code>, <code class="constant">opendocument</code>,
139 <code class="constant">opendocument_pdf</code> und
140 <code class="constant">excel</code> enthalten.</p></dd><dt><span class="term">
141 <code class="varname">template_meta.extension</code>
142 </span></dt><dd><p>Dateierweiterung, wie im Dateinamen. Wird aus
143 <code class="constant">format</code> entschieden.</p></dd><dt><span class="term">
144 <code class="varname">template_meta.media</code>
145 </span></dt><dd><p>Ausgabemedium. Kann zur Zeit die Werte
146 <code class="constant">screen</code> für Bildschirm,
147 <code class="constant">email</code> für E-Mail (triggert das
148 <code class="constant">_email</code> Kürzel im Dateinamen),
149 <code class="constant">printer</code> für Drucker, und
150 <code class="constant">queue</code> für Warteschlange enthalten.</p></dd><dt><span class="term">
151 <code class="varname">template_meta.printer.description</code>
152 </span></dt><dd><p>Beschreibung des ausgewählten Druckers</p></dd><dt><span class="term">
153 <code class="varname">template_meta.printer.template_code</code>
154 </span></dt><dd><p>Vorlagenürzel des ausgewählten Druckers, identisch mit
155 dem Kürzel das im Dateinamen verwendetet wird.</p></dd><dt><span class="term">
156 <code class="varname">template_meta.tmpfile</code>
157 </span></dt><dd><p>Datei-Prefix für temporäre Dateien.</p></dd></dl></div></div><div class="sect3" title="3.3.7.2. Stammdaten von Kunden und Lieferanten"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemeine-variablen.kunden-lieferanten"></a>3.3.7.2. Stammdaten von Kunden und Lieferanten</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
158 <code class="varname">account_number</code>
159 </span></dt><dd><p>Kontonummer</p></dd><dt><span class="term">
160 <code class="varname">bank</code>
161 </span></dt><dd><p>Name der Bank</p></dd><dt><span class="term">
162 <code class="varname">bank_code</code>
163 </span></dt><dd><p>Bankleitzahl</p></dd><dt><span class="term">
164 <code class="varname">bic</code>
165 </span></dt><dd><p>Bank-Identifikations-Code (Bank Identifier Code,
166 BIC)</p></dd><dt><span class="term">
167 <code class="varname">business</code>
168 </span></dt><dd><p>Kunden-/Lieferantentyp</p></dd><dt><span class="term">
169 <code class="varname">city</code>
170 </span></dt><dd><p>Stadt</p></dd><dt><span class="term">
171 <code class="varname">contact</code>
172 </span></dt><dd><p>Kontakt</p></dd><dt><span class="term">
173 <code class="varname">country</code>
174 </span></dt><dd><p>Land</p></dd><dt><span class="term">
175 <code class="varname">c_vendor_id</code>
176 </span></dt><dd><p>Lieferantennummer beim Kunden (nur Kunden)</p></dd><dt><span class="term">
177 <code class="varname">v_customer_id</code>
178 </span></dt><dd><p>Kundennummer beim Lieferanten (nur Lieferanten)</p></dd><dt><span class="term">
179 <code class="varname">cp_email</code>
180 </span></dt><dd><p>Email des Ansprechpartners</p></dd><dt><span class="term">
181 <code class="varname">cp_givenname</code>
182 </span></dt><dd><p>Vorname des Ansprechpartners</p></dd><dt><span class="term">
183 <code class="varname">cp_greeting</code>
184 </span></dt><dd><p>Anrede des Ansprechpartners</p></dd><dt><span class="term">
185 <code class="varname">cp_name</code>
186 </span></dt><dd><p>Name des Ansprechpartners</p></dd><dt><span class="term">
187 <code class="varname">cp_phone1</code>
188 </span></dt><dd><p>Telefonnummer 1 des Ansprechpartners</p></dd><dt><span class="term">
189 <code class="varname">cp_phone2</code>
190 </span></dt><dd><p>Telefonnummer 2 des Ansprechpartners</p></dd><dt><span class="term">
191 <code class="varname">cp_title</code>
192 </span></dt><dd><p>Titel des Ansprechpartners</p></dd><dt><span class="term">
193 <code class="varname">creditlimit</code>
194 </span></dt><dd><p>Kreditlimit</p></dd><dt><span class="term">
195 <code class="varname">customeremail</code>
196 </span></dt><dd><p>Email des Kunden; nur für Kunden</p></dd><dt><span class="term">
197 <code class="varname">customerfax</code>
198 </span></dt><dd><p>Faxnummer des Kunden; nur für Kunden</p></dd><dt><span class="term">
199 <code class="varname">customernotes</code>
200 </span></dt><dd><p>Bemerkungen beim Kunden; nur für Kunden</p></dd><dt><span class="term">
201 <code class="varname">customernumber</code>
202 </span></dt><dd><p>Kundennummer; nur für Kunden</p></dd><dt><span class="term">
203 <code class="varname">customerphone</code>
204 </span></dt><dd><p>Telefonnummer des Kunden; nur für Kunden</p></dd><dt><span class="term">
205 <code class="varname">discount</code>
206 </span></dt><dd><p>Rabatt</p></dd><dt><span class="term">
207 <code class="varname">email</code>
208 </span></dt><dd><p>Emailadresse</p></dd><dt><span class="term">
209 <code class="varname">fax</code>
210 </span></dt><dd><p>Faxnummer</p></dd><dt><span class="term">
211 <code class="varname">gln</code>
212 </span></dt><dd><p>GLN (Globale Lokationsnummer)</p></dd><dt><span class="term">
213 <code class="varname">greeting</code>
214 </span></dt><dd><p>Anrede</p></dd><dt><span class="term">
215 <code class="varname">homepage</code>
216 </span></dt><dd><p>Homepage</p></dd><dt><span class="term">
217 <code class="varname">iban</code>
218 </span></dt><dd><p>Internationale Kontonummer (International Bank Account
219 Number, IBAN)</p></dd><dt><span class="term">
220 <code class="varname">language</code>
221 </span></dt><dd><p>Sprache</p></dd><dt><span class="term">
222 <code class="varname">name</code>
223 </span></dt><dd><p>Firmenname</p></dd><dt><span class="term">
224 <code class="varname">natural_person</code>
225 </span></dt><dd><p>Flag "natürliche Person"; Siehe auch
226 <a class="xref" href="ch03s03.html#dokumentenvorlagen-und-variablen.anrede" title="3.3.13. Hinweise zur Anrede">Hinweise zur Anrede</a>
227 </p></dd><dt><span class="term">
228 <code class="varname">payment_description</code>
229 </span></dt><dd><p>Name der Zahlart</p></dd><dt><span class="term">
230 <code class="varname">payment_terms</code>
231 </span></dt><dd><p>Zahlungskonditionen</p></dd><dt><span class="term">
232 <code class="varname">phone</code>
233 </span></dt><dd><p>Telefonnummer</p></dd><dt><span class="term">
234 <code class="varname">shiptocity</code>
235 </span></dt><dd><p>Stadt (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
236 </p></dd><dt><span class="term">
237 <code class="varname">shiptocontact</code>
238 </span></dt><dd><p>Kontakt (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
239 </p></dd><dt><span class="term">
240 <code class="varname">shiptocountry</code>
241 </span></dt><dd><p>Land (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
242 </p></dd><dt><span class="term">
243 <code class="varname">shiptodepartment_1</code>
244 </span></dt><dd><p>Abteilung 1 (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
245 </p></dd><dt><span class="term">
246 <code class="varname">shiptodepartment_2</code>
247 </span></dt><dd><p>Abteilung 2 (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
248 </p></dd><dt><span class="term">
249 <code class="varname">shiptoemail</code>
250 </span></dt><dd><p>Email (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
251 </p></dd><dt><span class="term">
252 <code class="varname">shiptofax</code>
253 </span></dt><dd><p>Fax (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
254 </p></dd><dt><span class="term">
255 <code class="varname">shiptogln</code>
256 </span></dt><dd><p>GLN (Globale Lokationsnummer) (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
257 </p></dd><dt><span class="term">
258 <code class="varname">shiptoname</code>
259 </span></dt><dd><p>Firmenname (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
260 </p></dd><dt><span class="term">
261 <code class="varname">shiptophone</code>
262 </span></dt><dd><p>Telefonnummer (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
263 </p></dd><dt><span class="term">
264 <code class="varname">shiptostreet</code>
265 </span></dt><dd><p>Straße und Hausnummer (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
266 </p></dd><dt><span class="term">
267 <code class="varname">shiptozipcode</code>
268 </span></dt><dd><p>Postleitzahl (Lieferadresse) <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.anmerkung-shipto" title="Anmerkung">*</a>
269 </p></dd><dt><span class="term">
270 <code class="varname">street</code>
271 </span></dt><dd><p>Straße und Hausnummer</p></dd><dt><span class="term">
272 <code class="varname">taxnumber</code>
273 </span></dt><dd><p>Steuernummer</p></dd><dt><span class="term">
274 <code class="varname">ustid</code>
275 </span></dt><dd><p>Umsatzsteuer-Identifikationsnummer</p></dd><dt><span class="term">
276 <code class="varname">vendoremail</code>
277 </span></dt><dd><p>Email des Lieferanten; nur für Lieferanten</p></dd><dt><span class="term">
278 <code class="varname">vendorfax</code>
279 </span></dt><dd><p>Faxnummer des Lieferanten; nur für Lieferanten</p></dd><dt><span class="term">
280 <code class="varname">vendornotes</code>
281 </span></dt><dd><p>Bemerkungen beim Lieferanten; nur für Lieferanten</p></dd><dt><span class="term">
282 <code class="varname">vendornumber</code>
283 </span></dt><dd><p>Lieferantennummer; nur für Lieferanten</p></dd><dt><span class="term">
284 <code class="varname">vendorphone</code>
285 </span></dt><dd><p>Telefonnummer des Lieferanten; nur für
286 Lieferanten</p></dd><dt><span class="term">
287 <code class="varname">zipcode</code>
288 </span></dt><dd><p>Postleitzahl</p></dd></dl></div><div class="note" title="Anmerkung" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Anmerkung]" src="system/docbook-xsl/images/note.png"></td><th align="left"><a name="dokumentenvorlagen-und-variablen.anmerkung-shipto"></a>Anmerkung</th></tr><tr><td align="left" valign="top"><p>Anmerkung: Sind die <code class="varname">shipto*</code>-Felder in den
289 Stammdaten nicht eingetragen, so haben die Variablen
290 <code class="varname">shipto*</code> den gleichen Wert wie die die
291 entsprechenden Variablen der Lieferdaten. Das bedeutet, dass sich
292 einige <code class="varname">shipto*</code>-Variablen so nicht in den
293 Stammdaten wiederfinden sondern schlicht Kopien der
294 Lieferdatenvariablen sind (z.B.
295 <code class="varname">shiptocontact</code>).</p></td></tr></table></div></div><div class="sect3" title="3.3.7.3. Informationen über den Bearbeiter"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemein-bearbeiter"></a>3.3.7.3. Informationen über den Bearbeiter</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
296 <code class="varname">employee_address</code>
297 </span></dt><dd><p>Adressfeld</p></dd><dt><span class="term">
298 <code class="varname">employee_businessnumber</code>
299 </span></dt><dd><p>Firmennummer</p></dd><dt><span class="term">
300 <code class="varname">employee_company</code>
301 </span></dt><dd><p>Firmenname</p></dd><dt><span class="term">
302 <code class="varname">employee_co_ustid</code>
303 </span></dt><dd><p>Usatzsteuer-Identifikationsnummer</p></dd><dt><span class="term">
304 <code class="varname">employee_duns</code>
305 </span></dt><dd><p>DUNS-Nummer</p></dd><dt><span class="term">
306 <code class="varname">employee_email</code>
307 </span></dt><dd><p>Email</p></dd><dt><span class="term">
308 <code class="varname">employee_fax</code>
309 </span></dt><dd><p>Fax</p></dd><dt><span class="term">
310 <code class="varname">employee_name</code>
311 </span></dt><dd><p>voller Name</p></dd><dt><span class="term">
312 <code class="varname">employee_signature</code>
313 </span></dt><dd><p>Signatur</p></dd><dt><span class="term">
314 <code class="varname">employee_taxnumber</code>
315 </span></dt><dd><p>Steuernummer</p></dd><dt><span class="term">
316 <code class="varname">employee_tel</code>
317 </span></dt><dd><p>Telefonnummer</p></dd></dl></div></div><div class="sect3" title="3.3.7.4. Informationen über den Verkäufer"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemein-verkaeufer"></a>3.3.7.4. Informationen über den Verkäufer</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
318 <code class="varname">salesman_address</code>
319 </span></dt><dd><p>Adressfeld</p></dd><dt><span class="term">
320 <code class="varname">salesman_businessnumber</code>
321 </span></dt><dd><p>Firmennummer</p></dd><dt><span class="term">
322 <code class="varname">salesman_company</code>
323 </span></dt><dd><p>Firmenname</p></dd><dt><span class="term">
324 <code class="varname">salesman_co_ustid</code>
325 </span></dt><dd><p>Usatzsteuer-Identifikationsnummer</p></dd><dt><span class="term">
326 <code class="varname">salesman_duns</code>
327 </span></dt><dd><p>DUNS-Nummer</p></dd><dt><span class="term">
328 <code class="varname">salesman_email</code>
329 </span></dt><dd><p>Email</p></dd><dt><span class="term">
330 <code class="varname">salesman_fax</code>
331 </span></dt><dd><p>Fax</p></dd><dt><span class="term">
332 <code class="varname">salesman_name</code>
333 </span></dt><dd><p>voller Name</p></dd><dt><span class="term">
334 <code class="varname">salesman_signature</code>
335 </span></dt><dd><p>Signatur</p></dd><dt><span class="term">
336 <code class="varname">salesman_taxnumber</code>
337 </span></dt><dd><p>Steuernummer</p></dd><dt><span class="term">
338 <code class="varname">salesman_tel</code>
339 </span></dt><dd><p>Telefonnummer</p></dd></dl></div></div><div class="sect3" title="3.3.7.5. Variablen für die einzelnen Steuern"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemein-steuern"></a>3.3.7.5. Variablen für die einzelnen Steuern</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
340 <code class="varname">tax</code>
341 </span></dt><dd><p>Steuer</p></dd><dt><span class="term">
342 <code class="varname">taxbase</code>
343 </span></dt><dd><p>zu versteuernder Betrag</p></dd><dt><span class="term">
344 <code class="varname">taxdescription</code>
345 </span></dt><dd><p>Name der Steuer</p></dd><dt><span class="term">
346 <code class="varname">taxrate</code>
347 </span></dt><dd><p>Steuersatz</p></dd></dl></div></div><div class="sect3" title="3.3.7.6. Variablen für Lieferbedingungen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.allgemein-lieferbedingungen"></a>3.3.7.6. Variablen für Lieferbedingungen</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
348 <code class="varname">delivery_term</code>
349 </span></dt><dd><p>Datenbank-Objekt der Lieferbedingung</p></dd><dt><span class="term">
350 <code class="varname">delivery_term.description</code>
351 </span></dt><dd><p>Beschreibung der Lieferbedingung</p></dd><dt><span class="term">
352 <code class="varname">delivery_term.description_long</code>
353 </span></dt><dd><p>Langtext bzw. übersetzter Langtext der
354 Lieferbedingung</p></dd></dl></div></div><div class="sect3" title="3.3.7.7. Informationen über abweichende Rechnungsadressen (nur Verkaufsbelege)"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.abweichende-rechnungsadresse"></a>3.3.7.7. Informationen über abweichende Rechnungsadressen (nur Verkaufsbelege)</h4></div></div></div><p>
355 Abweichende Rechnungsadressen gibt es nur in Verkaufsbelegen. Die entsprechenden Variablen sind nur dann mit Inhalt gefüllt,
356 wenn im Beleg eine abweichende Rechnungsadresse ausgewählt wurde. Ob eine Adresse überhaupt ausgewählt wurde, kann über die
357 Variable <code class="literal">billing_address_id</code> getestet werden, die die Datenbank-ID der abweichenden Rechnungsadresse enthält,
358 wenn eine ausgewählt ist.
360 Die Variablennamen starten alle mit dem Präfix <code class="literal">billing_address_</code> und heißen anschließend so, wie ihre Pendants
361 aus der Standard-Rechnungsadresse des Kunden. Beispiel: die Postleitzahl, die in der normalen Rechnungsadresse in
362 <code class="literal">zipcode</code> steht, steht für die abweichende Rechnungsadresse in <code class="literal">billing_address_zipcode</code>.
364 Die folgenden Variablen stehen so zur Verfügung: <code class="literal">billing_address_name</code>,
365 <code class="literal">billing_address_department_1</code>, <code class="literal">billing_address_department_2</code>,
366 <code class="literal">billing_address_contact</code>, <code class="literal">billing_address_street</code>,
367 <code class="literal">billing_address_zipcode</code>, <code class="literal">billing_address_city</code>, <code class="literal">billing_address_country</code>,
368 <code class="literal">billing_address_gln</code>, <code class="literal">billing_address_email</code>, <code class="literal">billing_address_phone</code> und
369 <code class="literal">billing_address_fax</code>.
370 </p></div></div><div class="sect2" title="3.3.8. Variablen in Rechnungen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.invoice"></a>3.3.8. Variablen in Rechnungen</h3></div></div></div><div class="sect3" title="3.3.8.1. Allgemeine Variablen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.invoice-allgemein"></a>3.3.8.1. Allgemeine Variablen</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
371 <code class="varname">creditremaining</code>
372 </span></dt><dd><p>Verbleibender Kredit</p></dd><dt><span class="term">
373 <code class="varname">currency</code>
374 </span></dt><dd><p>Währung</p></dd><dt><span class="term">
375 <code class="varname">cusordnumber</code>
376 </span></dt><dd><p>Bestellnummer beim Kunden</p></dd><dt><span class="term">
377 <code class="varname">deliverydate</code>
378 </span></dt><dd><p>Lieferdatum</p></dd><dt><span class="term">
379 <code class="varname">duedate</code>
380 </span></dt><dd><p>Fälligkeitsdatum</p></dd><dt><span class="term">
381 <code class="varname">globalprojectnumber</code>
382 </span></dt><dd><p>Projektnummer des ganzen Beleges</p></dd><dt><span class="term">
383 <code class="varname">globalprojectdescription</code>
384 </span></dt><dd><p>Projekbeschreibung des ganzen Beleges</p></dd><dt><span class="term">
385 <code class="varname">intnotes</code>
386 </span></dt><dd><p>Interne Bemerkungen</p></dd><dt><span class="term">
387 <code class="varname">invdate</code>
388 </span></dt><dd><p>Rechnungsdatum</p></dd><dt><span class="term">
389 <code class="varname">invnumber</code>
390 </span></dt><dd><p>Rechnungsnummer</p></dd><dt><span class="term">
391 <code class="varname">invtotal</code>
392 </span></dt><dd><p>gesamter Rechnungsbetrag</p></dd><dt><span class="term">
393 <code class="varname">notes</code>
394 </span></dt><dd><p>Bemerkungen der Rechnung</p></dd><dt><span class="term">
395 <code class="varname">orddate</code>
396 </span></dt><dd><p>Auftragsdatum</p></dd><dt><span class="term">
397 <code class="varname">ordnumber</code>
398 </span></dt><dd><p>Auftragsnummer, wenn die Rechnung aus einem Auftrag
399 erstellt wurde</p></dd><dt><span class="term">
400 <code class="varname">payment_description</code>
401 </span></dt><dd><p>Name der Zahlart</p></dd><dt><span class="term">
402 <code class="varname">payment_terms</code>
403 </span></dt><dd><p>Zahlungskonditionen</p></dd><dt><span class="term">
404 <code class="varname">quodate</code>
405 </span></dt><dd><p>Angebotsdatum</p></dd><dt><span class="term">
406 <code class="varname">quonumber</code>
407 </span></dt><dd><p>Angebotsnummer</p></dd><dt><span class="term">
408 <code class="varname">rounding</code>
409 </span></dt><dd><p>Betrag, um den <code class="varname">invtotal</code> gerundet
410 wurde (kann positiv oder negativ sein)</p></dd><dt><span class="term">
411 <code class="varname">shippingpoint</code>
412 </span></dt><dd><p>Versandort</p></dd><dt><span class="term">
413 <code class="varname">shipvia</code>
414 </span></dt><dd><p>Transportmittel</p></dd><dt><span class="term">
415 <code class="varname">subtotal</code>
416 </span></dt><dd><p>Zwischensumme aller Posten ohne Steuern</p></dd><dt><span class="term">
417 <code class="varname">total</code>
418 </span></dt><dd><p>Restsumme der Rechnung (Summe abzüglich bereits
419 bezahlter Posten)</p></dd><dt><span class="term">
420 <code class="varname">transaction_description</code>
421 </span></dt><dd><p>Vorgangsbezeichnung</p></dd><dt><span class="term">
422 <code class="varname">transdate</code>
423 </span></dt><dd><p>Auftragsdatum wenn die Rechnung aus einem Auftrag
424 erstellt wurde</p></dd></dl></div></div><div class="sect3" title="3.3.8.2. Variablen für die schweizer QR-Rechnung"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6096"></a>3.3.8.2. Variablen für die schweizer QR-Rechnung</h4></div></div></div><p>Diese Variablen können mit dem LaTeX Modul qrbill verwendet
425 werden: <a class="ulink" href="https://ctan.org/pkg/qrbill?lang=de" target="_top">https://ctan.org/pkg/qrbill?lang=de</a>
426 </p><p>Für die Erstellung von QR-Rechnungen mit OpenDocument Vorlagen
427 siehe: <a class="xref" href="ch02s15.html" title="2.15. OpenDocument-Vorlagen">Abschnitt 2.15, „OpenDocument-Vorlagen“</a>
428 </p><div class="variablelist"><dl><dt><span class="term">qrbill_iban</span></dt><dd><p>IBAN/QR-IBAN des Rechnungsstellers, aus <span class="emphasis"><em>System
429 → Bankkonten</em></span>
430 </p></dd><dt><span class="term">qrbill_biller_countrycode</span></dt><dd><p>Länderkürzel des Rechnungsstellers gem. ISO 3166, aus
431 <span class="emphasis"><em>Mandantenkonfiguration → Firmenname und
433 </p></dd><dt><span class="term">qrbill_customer_countrycode</span></dt><dd><p>Länderkürzel des Rechnungsempfängers gem. ISO 3166, aus
434 der jeweiligen Rechnung</p></dd><dt><span class="term">qrbill_amount</span></dt><dd><p>Betrag für die QR-Rechnung (Zahl ohne
435 Tausendertrennzeichen mit zwei Nachkommastellen), entsprechend
436 total</p></dd><dt><span class="term">qr_reference</span></dt><dd><p>QR-Referenz der jeweiligen Rechnung, sofern in der
437 <span class="emphasis"><em>Mandantenkonfiguration → Features → Variante QR-IBAN
438 mit QR-Referenz erzeugen</em></span> aktiviert ist</p></dd></dl></div></div><div class="sect3" title="3.3.8.3. Variablen für jeden Posten auf der Rechnung"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.invoice-posten"></a>3.3.8.3. Variablen für jeden Posten auf der Rechnung</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
439 <code class="varname">bin</code>
440 </span></dt><dd><p>Stellage</p></dd><dt><span class="term">
441 <code class="varname">description</code>
442 </span></dt><dd><p>Artikelbeschreibung</p></dd><dt><span class="term">
443 <code class="varname">cusordnumber_oe</code>
444 </span></dt><dd><p>Bestellnummer des Kunden aus dem Auftrag, aus dem der
445 Posten ursprünglich stammt (nur Verkauf)</p></dd><dt><span class="term">
446 <code class="varname">discount</code>
447 </span></dt><dd><p>Rabatt als Betrag</p></dd><dt><span class="term">
448 <code class="varname">discount_sub</code>
449 </span></dt><dd><p>Zwischensumme mit Rabatt</p></dd><dt><span class="term">
450 <code class="varname">donumber_do</code>
451 </span></dt><dd><p>Lieferscheinnummer des Lieferscheins, aus dem die
452 Position ursprünglich stammt, wenn die Rechnung im Rahmen des
453 Workflows aus einem Lieferschein erstellt wurde.</p></dd><dt><span class="term">
454 <code class="varname">drawing</code>
455 </span></dt><dd><p>Zeichnung</p></dd><dt><span class="term">
456 <code class="varname">ean</code>
457 </span></dt><dd><p>EAN-Code</p></dd><dt><span class="term">
458 <code class="varname">image</code>
459 </span></dt><dd><p>Grafik</p></dd><dt><span class="term">
460 <code class="varname">linetotal</code>
461 </span></dt><dd><p>Zeilensumme (Anzahl * Einzelpreis)</p></dd><dt><span class="term">
462 <code class="varname">longdescription</code>
463 </span></dt><dd><p>Langtext, vorbelegt mit dem Feld Bemerkungen der entsprechenden Ware</p></dd><dt><span class="term">
464 <code class="varname">microfiche</code>
465 </span></dt><dd><p>Mikrofilm</p></dd><dt><span class="term">
466 <code class="varname">netprice</code>
467 </span></dt><dd><p>Alternative zu <code class="varname">sellprice</code>, aber
468 <code class="varname">netprice</code> entspricht dem effektiven
469 Einzelpreis und beinhaltet Zeilenrabatt und Preisfaktor.
470 <code class="varname">netprice</code> wird rückgerechnet aus Zeilensumme
471 / Menge. Diese Variable ist nützlich, wenn man den gewährten
472 Rabatt in der Druckvorlage nicht anzeigen möchte, aber Menge *
473 Einzelpreis trotzdem die angezeigte Zeilensumme ergeben soll.
474 <code class="varname">netprice</code> hat nichts mit Netto/Brutto im
475 Sinne von Steuern zu tun.</p></dd><dt><span class="term">
476 <code class="varname">nodiscount_linetotal</code>
477 </span></dt><dd><p>Zeilensumme ohne Rabatt</p></dd><dt><span class="term">
478 <code class="varname">nodiscount_sub</code>
479 </span></dt><dd><p>Zwischensumme ohne Rabatt</p></dd><dt><span class="term">
480 <code class="varname">number</code>
481 </span></dt><dd><p>Artikelnummer</p></dd><dt><span class="term">
482 <code class="varname">ordnumber_oe</code>
483 </span></dt><dd><p>Auftragsnummer des Originalauftrags, aus dem der Posten
484 ursprünglich stammt. Nützlich, wenn die Rechnung aus mehreren
485 Lieferscheinen zusammengefasst wurde, oder wenn zwischendurch
486 eine Sammelauftrag aus mehreren Aufträgen erstellt wurde. In
487 letzterem Fall wird die unsprüngliche Auftragsnummer
488 angezeigt.</p></dd><dt><span class="term">
489 <code class="varname">p_discount</code>
490 </span></dt><dd><p>Rabatt in Prozent</p></dd><dt><span class="term">
491 <code class="varname">partnotes</code>
492 </span></dt><dd><p>Die beim Artikel gespeicherten Bemerkungen</p></dd><dt><span class="term">
493 <code class="varname">partsgroup</code>
494 </span></dt><dd><p>Warengruppe</p></dd><dt><span class="term">
495 <code class="varname">price_factor</code>
496 </span></dt><dd><p>Der Preisfaktor als Zahl, sofern einer eingestellt
497 ist</p></dd><dt><span class="term">
498 <code class="varname">price_factor_name</code>
499 </span></dt><dd><p>Der Name des Preisfaktors, sofern einer eingestellt
500 ist</p></dd><dt><span class="term">
501 <code class="varname">projectnumber</code>
502 </span></dt><dd><p>Projektnummer</p></dd><dt><span class="term">
503 <code class="varname">projectdescription</code>
504 </span></dt><dd><p>Projektbeschreibung</p></dd><dt><span class="term">
505 <code class="varname">qty</code>
506 </span></dt><dd><p>Anzahl</p></dd><dt><span class="term">
507 <code class="varname">reqdate</code>
508 </span></dt><dd><p>Lieferdatum</p></dd><dt><span class="term">
509 <code class="varname">runningnumber</code>
510 </span></dt><dd><p>Position auf der Rechnung (1, 2, 3...)</p></dd><dt><span class="term">
511 <code class="varname">sellprice</code>
512 </span></dt><dd><p>Verkaufspreis</p></dd><dt><span class="term">
513 <code class="varname">serialnumber</code>
514 </span></dt><dd><p>Seriennummer</p></dd><dt><span class="term">
515 <code class="varname">tax_rate</code>
516 </span></dt><dd><p>Steuersatz</p></dd><dt><span class="term">
517 <code class="varname">transdate_do</code>
518 </span></dt><dd><p>Datum des Lieferscheins, wenn die Rechnung im Rahmen des
519 Workflows aus einem Lieferschein stammte.</p></dd><dt><span class="term">
520 <code class="varname">transdate_oe</code>
521 </span></dt><dd><p>Datum des Auftrags, wenn die Rechnung im Rahmen des
522 Workflows aus einem Auftrag erstellt wurde. Wenn es
523 Sammelaufträge gab wird das Datum des ursprünglichen Auftrags
524 genommen.</p></dd><dt><span class="term">
525 <code class="varname">transdate_quo</code>
526 </span></dt><dd><p>Datum des Angebots, wenn die Position im Rahmen des
527 Workflows aus einem Angebot stammte.</p></dd><dt><span class="term">
528 <code class="varname">unit</code>
529 </span></dt><dd><p>Einheit</p></dd><dt><span class="term">
530 <code class="varname">weight</code>
531 </span></dt><dd><p>Gewicht</p></dd></dl></div><p>Für jeden Posten gibt es ein Unterarray mit den Informationen
532 über Lieferanten und Lieferantenartikelnummer, Kunde und Kundenartikelnummer
533 und Kunden- bzw. Lieferantentyp und zugehöriger Artikelnummer mit Beschreibung
534 und Langtext. Diese müssen jeweils mit
535 einer <code class="function">foreach</code>-Schleife ausgegeben werden, da
536 für jeden Artikel mehrere Lieferanten- und Kundeninformationen bzw.
537 kunden- bzw. lieferantenspezifische Informationen hinterlegt sein
538 können. Die Variablen dafür lauten:</p><div class="variablelist"><dl><dt><span class="term">
539 <code class="varname">make</code>
540 </span></dt><dd><p>Lieferant</p></dd><dt><span class="term">
541 <code class="varname">model</code>
542 </span></dt><dd><p>Lieferantenartikelnummer</p></dd><dt><span class="term">
543 <code class="varname">mm_part_description</code>
544 </span></dt><dd><p>Lieferantenartikelbeschreibung</p></dd><dt><span class="term">
545 <code class="varname">mm_part_longdescription</code>
546 </span></dt><dd><p>Lieferantenartikelbeschreibung (Langtext)</p></dd><dt><span class="term">
547 <code class="varname">customer_make</code>
548 </span></dt><dd><p>Kunde</p></dd><dt><span class="term">
549 <code class="varname">customer_model</code>
550 </span></dt><dd><p>Kundenartikelnummer</p></dd><dt><span class="term">
551 <code class="varname">cm_part_description</code>
552 </span></dt><dd><p>Kundenartikelbeschreibung</p></dd><dt><span class="term">
553 <code class="varname">cm_part_longdescription</code>
554 </span></dt><dd><p>Kundenartikelbeschreibung (Langtext)</p></dd><dt><span class="term">
555 <code class="varname">business_make</code>
556 </span></dt><dd><p>Kunden-/Lieferantentyp</p></dd><dt><span class="term">
557 <code class="varname">business_model</code>
558 </span></dt><dd><p>Kunden-/Lieferantentyp-spezifische Artikelnummer</p></dd><dt><span class="term">
559 <code class="varname">bm_part_description</code>
560 </span></dt><dd><p>Kunden-/Lieferantentyp-spezifische Artikelbeschreibung</p></dd><dt><span class="term">
561 <code class="varname">bm_part_longdescription</code>
562 </span></dt><dd><p>Kunden-/Lieferantentyp-spezifische Artikelbeschreibung (Langtext)</p></dd></dl></div></div><div class="sect3" title="3.3.8.4. Benutzerdefinierte Variablen für jeden Posten auf der Rechnung"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.invoice-posten-cvars"></a>3.3.8.4. Benutzerdefinierte Variablen für jeden Posten auf der Rechnung</h4></div></div></div><p>
563 Für jeden Posten stehen auch die benutzerdefinierten Variablen zum
564 Artikel zur Verfügung. Ihre Namen bestehen aus dem Präfix
565 <code class="varname">ic_cvar_</code> und dem vom Benutzer festgelegten
568 Ebenso stehen die benutzerdefinierten Variablen zum positionsbezogenen
569 Projekt unter dem Namen mit dem Präfix <code class="varname">project_cvar_</code>
570 und dem vom Benutzer festgelegten Variablennamen zur Verfügung.
571 </p></div><div class="sect3" title="3.3.8.5. Variablen für die einzelnen Zahlungseingänge"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.invoice-zahlungen"></a>3.3.8.5. Variablen für die einzelnen Zahlungseingänge</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
572 <code class="varname">payment</code>
573 </span></dt><dd><p>Betrag</p></dd><dt><span class="term">
574 <code class="varname">paymentaccount</code>
575 </span></dt><dd><p>Konto</p></dd><dt><span class="term">
576 <code class="varname">paymentdate</code>
577 </span></dt><dd><p>Datum</p></dd><dt><span class="term">
578 <code class="varname">paymentmemo</code>
579 </span></dt><dd><p>Memo</p></dd><dt><span class="term">
580 <code class="varname">paymentsource</code>
581 </span></dt><dd><p>Beleg</p></dd></dl></div></div><div class="sect3" title="3.3.8.6. Benutzerdefinierte Kunden- und Lieferantenvariablen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.benutzerdefinierte-variablen-vc"></a>3.3.8.6. Benutzerdefinierte Kunden- und Lieferantenvariablen</h4></div></div></div><p>Die vom Benutzer definierten Variablen für Kunden und
582 Lieferanten stehen beim Ausdruck von Einkaufs- und Verkaufsbelegen
583 ebenfalls zur Verfügung. Ihre Namen setzen sich aus dem Präfix
584 <code class="varname">vc_cvar_</code> und dem vom Benutzer festgelegten
585 Variablennamen zusammen.</p><p>Beispiel: Der Benutzer hat eine Variable namens
586 <code class="varname">number_of_employees</code> definiert, die die Anzahl der
587 Mitarbeiter des Unternehmens enthält. Diese Variable steht dann
588 unter dem Namen <code class="varname">vc_cvar_number_of_employees</code> zur
589 Verfügung.</p><p>Die benutzerdefinierten Variablen der Lieferadressen stehen
590 unter einem ähnlichen Namensschema zur Verfügung. Hier lautet der
591 Präfix <code class="varname">shiptocvar_</code>.</p><p>Analog stehen die benutzerdefinierten Variablen für
592 Ansprechpersonen mit dem Namenspräfix <code class="varname">cp_cvar_</code>
593 zur Verfügung.</p><p>Auch für das globale Projekt des Belegs stehen die
594 benutzerdefinierten Variablen mit dem Namenspräfix
595 <code class="varname">project_cvar_</code> zur Verfügung.</p></div></div><div class="sect2" title="3.3.9. Variablen in Mahnungen und Rechnungen über Mahngebühren"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.dunning"></a>3.3.9. Variablen in Mahnungen und Rechnungen über Mahngebühren</h3></div></div></div><div class="sect3" title="3.3.9.1. Namen der Vorlagen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.dunning-vorlagennamen"></a>3.3.9.1. Namen der Vorlagen</h4></div></div></div><p>Die Namen der Vorlagen werden im System-Menü vom Benutzer
596 eingegeben. Wird für ein Mahnlevel die Option zur automatischen
597 Erstellung einer Rechnung über die Mahngebühren und Zinsen
598 aktiviert, so wird der Name der Vorlage für diese Rechnung aus dem
599 Vorlagenname für diese Mahnstufe mit dem Zusatz
600 <code class="constant">_invoice</code> gebildet. Weiterhin werden die Kürzel
601 für die ausgewählte Sprache und den ausgewählten Drucker
602 angehängt.</p></div><div class="sect3" title="3.3.9.2. Allgemeine Variablen in Mahnungen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.dunning-allgemein"></a>3.3.9.2. Allgemeine Variablen in Mahnungen</h4></div></div></div><p>Die Variablen des Bearbeiters, bzw. Verkäufers stehen wie
603 gewohnt als <code class="varname">employee_...</code> bzw.
604 <code class="varname">salesman_...</code> zur Verfügung. Werden mehrere
605 Rechnungen in einer Mahnung zusammengefasst, so werden die Metadaten
606 (Bearbeiter, Abteilung, etc) der ersten angemahnten Rechnung im
607 Ausdruck genommen.</p><p>Die Adressdaten des Kunden stehen als Variablen
608 <code class="varname">name</code>, <code class="varname">street</code>,
609 <code class="varname">zipcode</code>, <code class="varname">city</code>,
610 <code class="varname">country</code>, <code class="varname">department_1</code>,
611 <code class="varname">department_2</code>, und <code class="varname">email</code> zur
612 Verfügung. Der Ansprechpartner <code class="varname">cp_...</code> steht auch
613 zu Verfügung, wird allerdings auch nur von der ersten angemahnten
614 Rechnung (s.o.) genommen.</p><p>Weitere Variablen beinhalten:</p><div class="variablelist"><dl><dt><span class="term">
615 <code class="varname">dunning_date</code>
616 </span></dt><dd><p>Datum der Mahnung</p></dd><dt><span class="term">
617 <code class="varname">dunning_duedate</code>
618 </span></dt><dd><p>Fälligkeitsdatum für diese Mahhnung</p></dd><dt><span class="term">
619 <code class="varname">dunning_id</code>
620 </span></dt><dd><p>Mahnungsnummer</p></dd><dt><span class="term">
621 <code class="varname">fee</code>
622 </span></dt><dd><p>Kumulative Mahngebühren</p></dd><dt><span class="term">
623 <code class="varname">interest_rate</code>
624 </span></dt><dd><p>Zinssatz per anno in Prozent</p></dd><dt><span class="term">
625 <code class="varname">total_amount</code>
626 </span></dt><dd><p>Gesamter noch zu zahlender Betrag als
627 <code class="function">fee</code> + <code class="function">total_interest</code>
628 + <code class="function">total_open_amount</code>
629 </p></dd><dt><span class="term">
630 <code class="varname">total_interest</code>
631 </span></dt><dd><p>Zinsen per anno über alle Rechnungen</p></dd><dt><span class="term">
632 <code class="varname">total_open_amount</code>
633 </span></dt><dd><p>Summe über alle offene Beträge der Rechnungen</p></dd></dl></div></div><div class="sect3" title="3.3.9.3. Variablen für jede gemahnte Rechnung in einer Mahnung"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.dunning-details"></a>3.3.9.3. Variablen für jede gemahnte Rechnung in einer Mahnung</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
634 <code class="varname">dn_amount</code>
635 </span></dt><dd><p>Rechnungssumme (brutto)</p></dd><dt><span class="term">
636 <code class="varname">dn_duedate</code>
637 </span></dt><dd><p>Originales Fälligkeitsdatum der Rechnung</p></dd><dt><span class="term">
638 <code class="varname">dn_dunning_date</code>
639 </span></dt><dd><p>Datum der Mahnung</p></dd><dt><span class="term">
640 <code class="varname">dn_dunning_duedate</code>
641 </span></dt><dd><p>Fälligkeitsdatum der Mahnung</p></dd><dt><span class="term">
642 <code class="varname">dn_fee</code>
643 </span></dt><dd><p>Kummulative Mahngebühr</p></dd><dt><span class="term">
644 <code class="varname">dn_interest</code>
645 </span></dt><dd><p>Zinsen per anno für diese Rechnung</p></dd><dt><span class="term">
646 <code class="varname">dn_invnumber</code>
647 </span></dt><dd><p>Rechnungsnummer</p></dd><dt><span class="term">
648 <code class="varname">dn_linetotal</code>
649 </span></dt><dd><p>Noch zu zahlender Betrag (ergibt sich aus
650 <code class="varname">dn_open_amount</code> + <code class="varname">dn_fee</code>
651 + <code class="varname">dn_interest</code>)</p></dd><dt><span class="term">
652 <code class="varname">dn_netamount</code>
653 </span></dt><dd><p>Rechnungssumme (netto)</p></dd><dt><span class="term">
654 <code class="varname">dn_open_amount</code>
655 </span></dt><dd><p>Offener Rechnungsbetrag</p></dd><dt><span class="term">
656 <code class="varname">dn_ordnumber</code>
657 </span></dt><dd><p>Bestellnummer</p></dd><dt><span class="term">
658 <code class="varname">dn_transdate</code>
659 </span></dt><dd><p>Rechnungsdatum</p></dd><dt><span class="term">
660 <code class="varname">dn_curr</code>
661 </span></dt><dd><p>Währung, in der die Rechnung erstellt wurde. (Die
662 Rechnungsbeträge sind aber immer in der Hauptwährung)</p></dd></dl></div></div><div class="sect3" title="3.3.9.4. Variablen in automatisch erzeugten Rechnungen über Mahngebühren"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.dunning-invoice"></a>3.3.9.4. Variablen in automatisch erzeugten Rechnungen über
663 Mahngebühren</h4></div></div></div><p>Die Variablen des Verkäufers stehen wie gewohnt als
664 <code class="varname">employee_...</code> zur Verfügung. Die Adressdaten des
665 Kunden stehen als Variablen <code class="varname">name</code>,
666 <code class="varname">street</code>, <code class="varname">zipcode</code>,
667 <code class="varname">city</code>, <code class="varname">country</code>,
668 <code class="varname">department_1</code>, <code class="varname">department_2</code>,
669 und <code class="varname">email</code> zur Verfügung.</p><p>Weitere Variablen beinhalten:</p><div class="variablelist"><dl><dt><span class="term">
670 <code class="varname">duedate</code>
671 </span></dt><dd><p>Fälligkeitsdatum der Rechnung</p></dd><dt><span class="term">
672 <code class="varname">dunning_id</code>
673 </span></dt><dd><p>Mahnungsnummer</p></dd><dt><span class="term">
674 <code class="varname">fee</code>
675 </span></dt><dd><p>Mahngebühren</p></dd><dt><span class="term">
676 <code class="varname">interest</code>
677 </span></dt><dd><p>Zinsen</p></dd><dt><span class="term">
678 <code class="varname">invamount</code>
679 </span></dt><dd><p>Rechnungssumme (ergibt sich aus <code class="varname">fee</code> +
680 <code class="varname">interest</code>)</p></dd><dt><span class="term">
681 <code class="varname">invdate</code>
682 </span></dt><dd><p>Rechnungsdatum</p></dd><dt><span class="term">
683 <code class="varname">invnumber</code>
684 </span></dt><dd><p>Rechnungsnummer</p></dd></dl></div></div></div><div class="sect2" title="3.3.10. Variablen in anderen Vorlagen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.andere-vorlagen"></a>3.3.10. Variablen in anderen Vorlagen</h3></div></div></div><div class="sect3" title="3.3.10.1. Einführung"><div class="titlepage"><div><div><h4 class="title"><a name="d0e7058"></a>3.3.10.1. Einführung</h4></div></div></div><p>Die Variablen in anderen Vorlagen sind ähnlich wie in der
685 Rechnung. Allerdings heißen die Variablen, die mit
686 <code class="varname">inv</code> beginnen, jetzt anders. Bei den Angeboten
687 fangen sie mit <code class="varname">quo</code> für "quotation" an:
688 <code class="varname">quodate</code> für Angebotsdatum etc. Bei Bestellungen
689 wiederum fangen sie mit <code class="varname">ord</code> für "order" an:
690 <code class="varname">ordnumber</code> für Bestellnummer etc.</p><p>Manche Variablen sind in anderen Vorlagen hingegen gar nicht
691 vorhanden wie z.B. die für bereits verbuchte Zahlungseingänge. Dies
692 sind Variablen, die vom Geschäftsablauf her in der entsprechenden
693 Vorlage keine Bedeutung haben oder noch nicht belegt sein
694 können.</p><p>Im Folgenden werden nur wichtige Unterschiede zu den Variablen
695 in Rechnungen aufgeführt.</p></div><div class="sect3" title="3.3.10.2. Angebote und Preisanfragen"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.andere-vorlagen-quotations"></a>3.3.10.2. Angebote und Preisanfragen</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
696 <code class="varname">quonumber</code>
697 </span></dt><dd><p>Angebots- bzw. Anfragenummer</p></dd><dt><span class="term">
698 <code class="varname">reqdate</code>
699 </span></dt><dd><p>Gültigkeitsdatum (bei Angeboten) bzw. Lieferdatum (bei
700 Preisanfragen)</p></dd><dt><span class="term">
701 <code class="varname">transdate</code>
702 </span></dt><dd><p>Angebots- bzw. Anfragedatum</p></dd></dl></div></div><div class="sect3" title="3.3.10.3. Auftragsbestätigungen und Lieferantenaufträge"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.andere-vorlagen-orders"></a>3.3.10.3. Auftragsbestätigungen und Lieferantenaufträge</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
703 <code class="varname">ordnumber</code>
704 </span></dt><dd><p>Auftragsnummer</p></dd><dt><span class="term">
705 <code class="varname">reqdate</code>
706 </span></dt><dd><p>Lieferdatum</p></dd><dt><span class="term">
707 <code class="varname">transdate</code>
708 </span></dt><dd><p>Auftragsdatum</p></dd></dl></div></div><div class="sect3" title="3.3.10.4. Lieferscheine (Verkauf und Einkauf)"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.andere-vorlagen-delivery-orders"></a>3.3.10.4. Lieferscheine (Verkauf und Einkauf)</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
709 <code class="varname">cusordnumber</code>
710 </span></dt><dd><p>Bestellnummer des Kunden (im Verkauf) bzw. Bestellnummer
711 des Lieferanten (im Einkauf)</p></dd><dt><span class="term">
712 <code class="varname">donumber</code>
713 </span></dt><dd><p>Lieferscheinnummer</p></dd><dt><span class="term">
714 <code class="varname">transdate</code>
715 </span></dt><dd><p>Lieferscheindatum</p></dd></dl></div><p>Für jede Position eines Lieferscheines gibt es ein Unterarray
716 mit den Informationen darüber, von welchem Lager und Lagerplatz aus
717 die Waren verschickt wurden (Verkaufslieferscheine) bzw. auf welchen
718 Lagerplatz sie eingelagert wurden. Diese müssen mittels einer
719 <code class="function">foreach</code>-Schleife ausgegeben werden. Diese
720 Variablen sind:</p><div class="variablelist"><dl><dt><span class="term">
721 <code class="varname">si_bin</code>
722 </span></dt><dd><p>Lagerplatz</p></dd><dt><span class="term">
723 <code class="varname">si_chargenumber</code>
724 </span></dt><dd><p>Chargennummer</p></dd><dt><span class="term">
725 <code class="varname">si_bestbefore</code>
726 </span></dt><dd><p>Mindesthaltbarkeit</p></dd><dt><span class="term">
727 <code class="varname">si_number</code>
728 </span></dt><dd><p>Artikelnummer</p></dd><dt><span class="term">
729 <code class="varname">si_qty</code>
730 </span></dt><dd><p>Anzahl bzw. Menge</p></dd><dt><span class="term">
731 <code class="varname">si_runningnumber</code>
732 </span></dt><dd><p>Positionsnummer (1, 2, 3 etc)</p></dd><dt><span class="term">
733 <code class="varname">si_unit</code>
734 </span></dt><dd><p>Einheit</p></dd><dt><span class="term">
735 <code class="varname">si_warehouse</code>
736 </span></dt><dd><p>Lager</p></dd></dl></div></div><div class="sect3" title="3.3.10.5. Variablen für Sammelrechnung"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.andere-vorlagen-statement"></a>3.3.10.5. Variablen für Sammelrechnung</h4></div></div></div><div class="variablelist"><dl><dt><span class="term">
737 <code class="varname">c0total</code>
738 </span></dt><dd><p>Gesamtbetrag aller Rechnungen mit Fälligkeit < 30
739 Tage</p></dd><dt><span class="term">
740 <code class="varname">c30total</code>
741 </span></dt><dd><p>Gesamtbetrag aller Rechnungen mit Fälligkeit >= 30
742 und < 60 Tage</p></dd><dt><span class="term">
743 <code class="varname">c60total</code>
744 </span></dt><dd><p>Gesamtbetrag aller Rechnungen mit Fälligkeit >= 60
745 und < 90 Tage</p></dd><dt><span class="term">
746 <code class="varname">c90total</code>
747 </span></dt><dd><p>Gesamtbetrag aller Rechnungen mit Fälligkeit >= 90
748 Tage</p></dd><dt><span class="term">
749 <code class="varname">total</code>
750 </span></dt><dd><p>Gesamtbetrag aller Rechnungen</p></dd></dl></div><p>Variablen für jede Rechnungsposition in Sammelrechnung:</p><div class="variablelist"><dl><dt><span class="term">
751 <code class="varname">invnumber</code>
752 </span></dt><dd><p>Rechnungsnummer</p></dd><dt><span class="term">
753 <code class="varname">invdate</code>
754 </span></dt><dd><p>Rechnungsdatum</p></dd><dt><span class="term">
755 <code class="varname">duedate</code>
756 </span></dt><dd><p>Fälligkeitsdatum</p></dd><dt><span class="term">
757 <code class="varname">amount</code>
758 </span></dt><dd><p>Summe der Rechnung</p></dd><dt><span class="term">
759 <code class="varname">open</code>
760 </span></dt><dd><p>Noch offener Betrag der Rechnung</p></dd><dt><span class="term">
761 <code class="varname">c0</code>
762 </span></dt><dd><p>Noch offener Rechnungsbetrag mit Fälligkeit < 30
763 Tage</p></dd><dt><span class="term">
764 <code class="varname">c30</code>
765 </span></dt><dd><p>Noch offener Rechnungsbetrag mit Fälligkeit >= 30 und
766 < 60 Tage</p></dd><dt><span class="term">
767 <code class="varname">c60</code>
768 </span></dt><dd><p>Noch offener Rechnungsbetrag mit Fälligkeit >= 60 und
769 < 90 Tage</p></dd><dt><span class="term">
770 <code class="varname">c90</code>
771 </span></dt><dd><p>Noch offener Rechnungsbetrag mit Fälligkeit >= 90
772 Tage</p></dd></dl></div></div></div><div class="sect2" title="3.3.11. Blöcke, bedingte Anweisungen und Schleifen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.bloecke"></a>3.3.11. Blöcke, bedingte Anweisungen und Schleifen</h3></div></div></div><div class="sect3" title="3.3.11.1. Einführung"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.bloecke.einfuehrung"></a>3.3.11.1. Einführung</h4></div></div></div><p>Der Parser kennt neben den Variablen einige weitere
773 Konstrukte, die gesondert behandelt werden. Diese sind wie
774 Variablennamen in spezieller Weise markiert:
775 <span class="command"><strong><%anweisung%> ... <%end%></strong></span>
776 </p><p>Anmerkung zum <span class="command"><strong><%end%></strong></span>: Der besseren
777 Verständlichkeit halber kann man nach dem <span class="command"><strong>end</strong></span>
778 noch beliebig weitere Wörter schreiben, um so zu markieren, welche
779 Anweisung (z.B. <span class="command"><strong>if</strong></span> oder
780 <span class="command"><strong>foreach</strong></span>) damit abgeschlossen wird.</p><p>Beispiel: Lautet der Beginn eines Blockes z.B.
781 <span class="command"><strong><%if type == "sales_quotation"%></strong></span>, so könnte
782 er mit <span class="command"><strong><%end%></strong></span> genauso abgeschlossen werden
783 wie mit <span class="command"><strong><%end if%></strong></span> oder auch
784 <span class="command"><strong><%end type == "sales_quotation"%></strong></span>.</p></div><div class="sect3" title="3.3.11.2. Der if-Block"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.bloecke.if"></a>3.3.11.2. Der if-Block</h4></div></div></div><pre class="programlisting"><%if variablenname%>
786 <%end%></pre><p>Eine normale "if-then"-Bedingung. Die Zeilen zwischen dem "if"
787 und dem "end" werden nur ausgegeben, wenn die Variable
788 <code class="varname">variablenname</code> gesetzt und ungleich 0 ist.</p><p>Handelt es sich bei der benannten Variable um ein Array, also
789 um einen Variablennamen, über den man mit <span class="command"><strong><%foreach
790 variablenname%></strong></span> iteriert, so wird mit diesem Konstrukt
791 darauf getestet, ob das Array Elemente enthält. Somit würde im
792 folgenden Beispiel nur dann eine Liste von Zahlungseingängen samt
793 ihrer Überschrift "Zahlungseingänge" ausgegeben, wenn tatsächlich
794 welche getätigt wurden:</p><pre class="programlisting"><%if payment%>
796 <%foreach payment%>
797 Am <%paymentdate%>: <%payment%> €
798 <%end foreach%>
799 <%end if%></pre><p>Die Bedingung kann auch negiert werden, indem das Wort
800 <code class="function">not</code> nach dem <code class="filename">if</code> verwendet
801 wird. Beispiel:</p><pre class="programlisting"><%if not cp_greeting%>
803 <%end%></pre><p>Zusätzlich zu dem einfachen Test, ob eine Variable gesetzt ist
804 oder nicht, bietet dieser Block auch die Möglichkeit, den Inhalt
805 einer Variablen mit einer festen Zeichenkette oder einer anderen
806 Variablen zu vergleichen. Ob der Vergleich mit einer Zeichenkette
807 oder einer anderen Variablen vorgenommen wird, hängt davon ab, ob
808 die rechte Seite des Vergleichsoperators in Anführungszeichen
809 gesetzt wird (Vergleich mit Zeichenkette) oder nicht (Vergleich mit
810 anderer Variablen). Zwei Beispiele, die beide Vergleiche
811 zeigen:</p><pre class="programlisting"><%if var1 == "Wert"%></pre><p>Testet die Variable <code class="varname">var1</code> auf
812 übereinstimmung mit der Zeichenkette <code class="constant">Wert</code>.
813 Mittels <code class="function">!=</code> anstelle von <code class="function">==</code>
814 würde auf Ungleichheit getestet.</p><pre class="programlisting"><%if var1 == var2%></pre><p>Testet die Variable <code class="varname">var1</code> auf
815 übereinstimmung mit der Variablen <code class="varname">var2</code>. Mittel
816 <code class="function">!=</code> anstelle von <code class="function">==</code> würde
817 auf Ungleichheit getestet.</p><p>Erfahrere Benutzer können neben der Tests auf (Un-)Gleichheit
818 auch Tests auf Übereinstimmung mit regulären Ausdrücken ohne
819 Berücksichtung der Groß- und Kleinschreibung durchführen. Dazu dient
820 dieselbe Syntax wie oben nur mit <code class="function">=~</code> und
821 <code class="function">!~</code> als Vergleichsoperatoren.</p><p>Beispiel für einen Test, ob die Variable
822 <code class="varname">intnotes</code> (interne Bemerkungen) das Wort
823 <code class="constant">schwierig</code> enthält:</p><pre class="programlisting"><%if intnotes =~ "schwierig"%></pre></div><div class="sect3" title="3.3.11.3. Der foreach-Block"><div class="titlepage"><div><div><h4 class="title"><a name="dokumentenvorlagen-und-variablen.bloecke.foreach"></a>3.3.11.3. Der foreach-Block</h4></div></div></div><pre class="programlisting"><%foreach variablenname%>
825 <%end%></pre><p>Fügt die Zeilen zwischen den beiden Anweisungen so oft ein,
826 wie das Perl-Array der Variablen <code class="varname">variablenname</code>
827 Elemente enthät. Dieses Konstrukt wird zur Ausgabe der einzelnen
828 Posten einer Rechnung / eines Angebots sowie zur Ausgabe der Steuern
829 benutzt. In jedem Durchlauf werden die <a class="link" href="ch03s03.html#dokumentenvorlagen-und-variablen.invoice-posten" title="3.3.8.3. Variablen für jeden Posten auf der Rechnung">zeilenbezogenen
830 Variablen</a> jeweils auf den Wert für die aktuelle Position
831 gesetzt.</p><p>Die Syntax sieht normalerweise wie folgt aus:</p><pre class="programlisting"><%foreach number%>
832 Position: <%runningnumber%>
833 Anzahl: <%qty%>
834 Artikelnummer: <%number%>
835 Beschreibung: <%description%>
837 <%end%></pre><p>Besonderheit in OpenDocument-Vorlagen: Tritt ein
838 <code class="function"><%foreach%></code>-Block innerhalb einer
839 Tabellenzelle auf, so wird die komplette Tabellenzeile so oft
840 wiederholt wie notwendig. Tritt er außerhalb auf, so wird nur der
841 Inhalt zwischen <code class="function"><%foreach%></code> und
842 <code class="function"><%end%></code> wiederholt, nicht aber die
843 komplette Zeile, in der er steht.</p></div></div><div class="sect2" title="3.3.12. Markup-Code zur Textformatierung innerhalb von Formularen"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.markup"></a>3.3.12. Markup-Code zur Textformatierung innerhalb von
844 Formularen</h3></div></div></div><p>Wenn der Benutzer innhalb von Formularen in kivitendo Text
845 anders formatiert haben möchte, so ist dies begrenzt möglich.
846 kivitendo unterstützt die Textformatierung mit HTML-ähnlichen Tags.
847 Der Benutzer kann z.B. bei der Artikelbeschreibung auf einer Rechnung
848 Teile des Texts zwischen Start- und Endtags setzen. Dieser Teil wird
849 dann automatisch in Anweisungen für das ausgewählte Vorlagenformat
850 (HTML oder PDF über LaTeX) umgesetzt.</p><p>Die unterstützen Formatierungen sind:</p><div class="variablelist"><dl><dt><span class="term"><b>Text</b></span></dt><dd><p>Text wird in Fettdruck gesetzt.</p></dd><dt><span class="term"><i>Text</i></span></dt><dd><p>Text wird kursiv gesetzt.</p></dd><dt><span class="term"><u>Text</u></span></dt><dd><p>Text wird unterstrichen.</p></dd><dt><span class="term"><s>Text</s></span></dt><dd><p>Text wird durchgestrichen. Diese Formatierung ist nicht
851 bei der Ausgabe als PDF über LaTeX verfügbar.</p></dd><dt><span class="term"><bullet></span></dt><dd><p>Erzeugt einen ausgefüllten Kreis für Aufzählungen (siehe
852 unten).</p></dd></dl></div><p>Der Befehl <span class="command"><strong><bullet></strong></span> funktioniert
853 momentan auch nur in Latex-Vorlagen.</p></div><div class="sect2" title="3.3.13. Hinweise zur Anrede"><div class="titlepage"><div><div><h3 class="title"><a name="dokumentenvorlagen-und-variablen.anrede"></a>3.3.13. Hinweise zur Anrede</h3></div></div></div><p>Das Flag "natürliche Person"
854 (<code class="varname">natural_person</code>) aus den Kunden- oder
855 Lieferantenstammdaten kann in den Druckvorlagen zusammen mit
856 dem Feld "Anrede" (<code class="varname">greeting</code>) z.B. dafür
857 verwendet werden, die Anrede zwischen einer allgemeinen und
858 einer persönlichen Anrede zu unterscheiden.
859 </p><pre class="programlisting"><%if natural_person%><%greeting%> <%name%><%else%>Sehr geehrte Damen und Herren<%end if%></pre><p>
861 </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s02.html">Zurück</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Nach oben</a></td><td width="40%" align="right"> <a accesskey="n" href="ch03s04.html">Weiter</a></td></tr><tr><td width="40%" align="left" valign="top">3.2. Bankerweiterung </td><td width="20%" align="center"><a accesskey="h" href="index.html">Zum Anfang</a></td><td width="40%" align="right" valign="top"> 3.4. Excel-Vorlagen</td></tr></table></div></body></html>