Projekt

Allgemein

Profil

Herunterladen (32,1 KB) Statistiken
| Zweig: | Markierung: | Revision:
<html>
<head>
<title>Dokumentenvorlagen und verf&uuml;gbare Variablen</title>
<style type="text/css">
<!--
.blue {
color: #000000;
background-color: #b0ecff;
border: 1px solid blue;
padding-left: 2px;
padding-right: 2px;
}

table {
color: #000000;
background-color: #fae8b8;
border: 1px solid #be5303;
border-collapse: collapse;
}

td {
border: 1px solid #be5303;
padding: 3px;
}
-->
</style>

</head>

<body>

<h1>Dokumentenvorlagen und verf&uuml;gbare Variablen</h1>

<p>geschrieben von <a href="mailto:m.bunkus@linet-services.de">Moritz
Bunkus</a>. Version: $Id$ </p>

<hr>

<h2><a name="inhaltsverzeichnis">Inhaltsverzeichnis</a></h2>

<ol>
<li><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
Inhaltsverzeichnis</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#einfuehrung">Einf&uuml;hrung</a>
</li>

<li><a href="dokumentenvorlagen-und-variablen.html#zuordnung_dateinamen">
Zuordnung von Dateinamen zu den Funktionen</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#allgemeine_variablen">
Allgemeine Variablen, die in allen Vorlagen vorhanden sind</a><br>

<ol>
<li><a href="dokumentenvorlagen-und-variablen.html#allgemein_stammdaten">
Stammdaten von Kunden und Lieferanten</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#allgemein_bearbeiter">
Informationen &uuml;ber den Bearbeiter</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#allgemein_verkaeufer">
Informationen &uuml;ber den Verk&auml;ufer</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#allgemein_steuern">
Variablen f&uuml;r jede Steuer</a></li>
</ol>
</li>

<li><a href="dokumentenvorlagen-und-variablen.html#invoice">
Variablen in Rechnungen</a>

<ol>
<li><a href="dokumentenvorlagen-und-variablen.html#invoice_allgemein">
Allgemeine Variablen</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#invoice_posten">
Variablen f&uuml;r jeden Posten auf der Rechnung</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#invoice_zahlungen">
Variablen f&uuml;r die Zahlungseing&auml;nge</a></li>
</ol>
</li>

<li><a href="dokumentenvorlagen-und-variablen.html#dunning">
Variablen in Mahnungen und Rechnungen &uuml;ber Mahngeb&uuml;hren</a>

<ol>
<li><a href="dokumentenvorlagen-und-variablen.html#dunning_vorlagennamen">
Namen der Vorlagen</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#dunning_allgemein">
Allgemeine Variablen in Mahnungen</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#dunning_details">
Variablen f&uuml;r jede gemahnte Rechnung in einer Mahnung</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#dunning_invoice">
Variablen in automatisch erzeugten Rechnungen &uuml;ber Mahngeb&uuml;hren</a></li>
</ol>
</li>

<li><a href="dokumentenvorlagen-und-variablen.html#anderevorlagen">
Variablen in anderen Vorlagen</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#bloecke">
Bl&ouml;cke, bedingte Anweisungen und Schleifen</a>

<ol>
<li><a href="dokumentenvorlagen-und-variablen.html#bloecke_ifnot">
Der <code>if not</code>-Block</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#bloecke_if">
Der <code>if</code>-Block</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#bloecke_foreach">
Die <code>foreach</code>-Schleife</a></li>

<li><a href="dokumentenvorlagen-und-variablen.html#bloecke_pagebreak">
Der <code>pagebreak</code>-Block</a></li>
</ol>
</li>

<li><a href="dokumentenvorlagen-und-variablen.html#markup">
Markup-Code, der innerhalb von Formularen zur Textformatierung verwendet
werden kann</a></li>

</ol>

<hr>

<h2><a name="einfuehrung">Einf&uuml;hrung</a></h2>

<p>Dies ist eine Auflistung der Standard-Dokumentenvorlagen und aller
zur Bearbeitung verf&uuml;gbaren Variablen. Eine Variable wird in
einer Vorlage durch ihren Inhalt ersetzt, wenn sie in der Form
<code>&lt;%variablenname%&gt;</code> verwendet wird.</p>

<p>Fr&uuml;her wurde hier nur &uuml;ber LaTeX gesprochen. Inzwischen
unterst&uuml;tzt Lx-Office aber auch OpenDocument-Vorlagen. Sofern
es nicht ausdr&uuml;cklich eingeschr&auml;nkt wird, gilt das im
Folgenden gesagte f&uuml;r alle Vorlagenarten.</p>

<p>Insgesamt sind technisch gesehen eine ganze Menge mehr Variablen
verf&uuml;gbar als hier aufgelistet werden. Die meisten davon k&ouml;nnen
allerdings innerhalb einer solchen Vorlage nicht sinnvoll verwendet
werden. Wenn eine Auflistung dieser Variablen gewollt ist, so kann diese wie
folgt erhalten werden:</p>

<ol>

<li><code>SL/Form.pm</code> &ouml;ffnen und am Anfang die Zeile
<pre>"use Data::Dumper;"</pre> einf&uuml;gen.</li>

<li>In <code>Form.pm</code> die Funktion <code>parse_template</code>
suchen und hier die Zeile <pre>print(STDERR Dumper($self));</pre>
einf&uuml;gen.</li>

<li>Einmal per Browser die gew&uuml;nschte Vorlage "benutzen", z.B. ein PDF
f&uuml;r eine Rechnung erzeugen.</li>

<li>Im <code>error.log</code> vom Apache steht die Ausgabe der Variablen
<code>$self</code> in der Form <code>'key' =&gt; 'value',</code>. Alle
<code>key</code>s sind verf&uuml;gbar.</li>

</ol>

<small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
zum Inhaltsverzeichnis</a></small><br>
<hr>

<h2><a name="zuordnung_dateinamen">
Zuordnung von den Dateinamen zu den Funktionen</a></h2>

<p>Diese folgende kurze Auflistung zeigt, welche Vorlage bei welcher
Funktion ausgelesen wird. Dabei ist die Dateiendung &quot;.ext&quot;
geeignet zu ersetzen: &quot;.tex&quot; f&uuml; LaTeX-Vorlagen und
&quot;.odt&quot; f&uuml;r OpenDocument-Vorlagen.</p>

<ul>
<li><code>bin_list.ext</code> -- Lagerliste</li>
<li><code>check.ext</code> -- ?</li>
<li><code>invoice.ext</code> -- Rechnung</li>
<li><code>packing_list.ext</code> -- Verpackungsliste</li>
<li><code>pick_list.ext</code> -- Sammelliste</li>
<li><code>purcharse_order.ext</code> -- Bestellung an Lieferanten</li>
<li><code>request_quotation.ext</code> -- Anfrage an Lieferanten</li>
<li><code>sales_order.ext</code> -- Bestellung</li>
<li><code>sales_quotation.ext</code> -- Angebot an Kunden</li>
</ul>

<small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
zum Inhaltsverzeichnis</a></small><br>
<hr>

<h2><a name="allgemeine_variablen">
Allgemeine Variablen, die in allen Vorlagen vorhanden sind</a></h2>

<h3><a name="allgemein_stammdaten">
Stammdaten von Kunden und Lieferanten:</a></h3>

<p>
<table border="1">
<tr><th>Variablenname</th><th>Bedeutung</th></tr>
<tr>
<td><code>account_number</code></td>
<td>Kontonummer</td>
</tr>
<tr>
<td><code>bank</code></td>
<td>Name der Bank</td>
</tr>
<tr>
<td><code>bank_code</code></td>
<td>Bankleitzahl</td>
</tr>
<tr>
<td><code>business</code></td>
<td>Kunden-/Lieferantentyp</td>
</tr>
<tr>
<td><code>city</code></td>
<td>Stadt</td>
</tr>
<tr>
<td><code>contact</code></td>
<td>Kontakt</td>
</tr>
<tr>
<td><code>country</code></td>
<td>Land</td>
</tr>
<tr>
<td><code>cp_email</code></td>
<td>Email des Ansprechpartners</td>
</tr>
<tr>
<td><code>cp_givenname</code></td>
<td>Vorname des Ansprechpartners</td>
</tr>
<tr>
<td><code>cp_greeting</code></td>
<td>Anrede des Ansprechpartners</td>
</tr>
<tr>
<td><code>cp_name</code></td>
<td>Name des Ansprechpartners</td>
</tr>
<tr>
<td><code>cp_phone1</code></td>
<td>Telefonnummer 1 des Ansprechpartners</td>
</tr>
<tr>
<td><code>cp_phone2</code></td>
<td>Telefonnummer 2 des Ansprechpartners</td>
</tr>
<tr>
<td><code>cp_title</code></td>
<td>Titel des Ansprechpartners</td>
</tr>
<tr>
<td><code>creditlimit</code></td>
<td>Kreditlimit</td>
</tr>
<tr>
<td><code>customeremail</code></td>
<td>Email des Kunden; nur f&uuml;r Kunden</td>
</tr>
<tr>
<td><code>customerfax</code></td>
<td>Faxnummer des Kunden; nur f&uuml;r Kunden</td>
</tr>
<tr>
<td><code>customernotes</code></td>
<td>Bemerkungen beim Kunden; nur f&uuml;r Kunden</td>
</tr>
<tr>
<td><code>customernumber</code></td>
<td>Kundennummer; nur f&uuml;r Kunden</td>
</tr>
<tr>
<td><code>customerphone</code></td>
<td>Telefonnummer des Kunden; nur f&uuml;r Kunden</td>
</tr>
<tr>
<td><code>discount</code></td>
<td>Rabatt</td>
</tr>
<tr>
<td><code>email</code></td>
<td>Emailadresse</td>
</tr>
<tr>
<td><code>fax</code></td>
<td>Faxnummer</td>
</tr>
<tr>
<td><code>homepage</code></td>
<td>Homepage</td>
</tr>
<tr>
<td><code>language</code></td>
<td>Sprache</td>
</tr>
<tr>
<td><code>name</code></td>
<td>Firmenname</td>
</tr>
<tr>
<td><code>payment_terms</code></td>
<td>Zahlungskonditionen</td>
</tr>
<tr>
<td><code>phone</code></td>
<td>Telefonnummer</td>
</tr>
<tr>
<td><code>shiptocity</code></td>
<td>Stadt (Lieferadresse)
<a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
</tr>
<tr>
<td><code>shiptocontact</code></td>
<td>Kontakt (Lieferadresse)
<a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
</tr>
<tr>
<td><code>shiptocountry</code></td>
<td>Land (Lieferadresse)
<a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
</tr>
<tr>
<td><code>shiptodepartment1</code></td>
<td>Abteilung 1 (Lieferadresse)
<a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
</tr>
<tr>
<td><code>shiptodepartment2</code></td>
<td>Abteilung 2 (Lieferadresse)
<a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
</tr>
<tr>
<td><code>shiptoemail</code></td>
<td>Email (Lieferadresse)
<a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
</tr>
<tr>
<td><code>shiptofax</code></td>
<td>Fax (Lieferadresse)
<a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
</tr>
<tr>
<td><code>shiptoname</code></td>
<td>Firmenname (Lieferadresse)
<a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
</tr>
<tr>
<td><code>shiptophone</code></td>
<td>Telefonnummer (Lieferadresse)
<a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
</tr>
<tr>
<td><code>shiptostreet</code></td>
<td>Stra?e und Hausnummer (Lieferadresse)
<a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
</tr>
<tr>
<td><code>shiptozipcode</code></td>
<td>Postleitzahl (Lieferadresse)
<a href="dokumentenvorlagen-und-variablen.html#anmerkung_shipto">*</a></td>
</tr>
<tr>
<td><code>street</code></td>
<td>Stra?e und Hausnummer</td>
</tr>
<tr>
<td><code>taxnumber</code></td>
<td>Steuernummer</td>
</tr>
<tr>
<td><code>vendoremail</code></td>
<td>Email des Lieferanten; nur f&uuml;r Lieferanten</td>
</tr>
<tr>
<td><code>vendorfax</code></td>
<td>Faxnummer des Lieferanten; nur f&uuml;r Lieferanten</td>
</tr>
<tr>
<td><code>vendornotes</code></td>
<td>Bemerkungen beim Lieferanten; nur f&uuml;r Lieferanten</td>
</tr>
<tr>
<td><code>vendornumber</code></td>
<td>Lieferantennummer; nur f&uuml;r Lieferanten</td>
</tr>
<tr>
<td><code>vendorphone</code></td>
<td>Telefonnummer des Lieferanten; nur f&uuml;r Lieferanten</td>
</tr>
<tr>
<td><code>zipcode</code></td>
<td>Postleitzahl</td>
</tr>
</table>
</p>

<p><a name="anmerkung_shipto"><em>Anmerkung</em></a>: Sind die
<code>shipto*</code>-Felder in den Stammdaten nicht eingetragen, so haben
die Variablen <code>shipto*</code> den gleichen Wert wie die die
entsprechenden Variablen der Lieferdaten. Das bedeutet, dass sich einige
<code>shipto*</code>-Variablen so nicht in den Stammdaten wiederfinden
sondern schlicht Kopien der Lieferdatenvariablen sind
(z.B. <code>shiptocontact</code>).</p>

<h3><a name="allgemein_bearbeiter">
Informationen &uuml;ber den Bearbeiter:</a></h3>

<p>
<table border="1">
<tr><th>Variablenname</th><th>Bedeutung</th></tr>
<tr>
<td><code>employee_address</code></td>
<td>Adressfeld</td>
</tr>
<tr>
<td><code>employee_businessnumber</code></td>
<td>Firmennummer</td>
</tr>
<tr>
<td><code>employee_company</code></td>
<td>Firmenname</td>
</tr>
<tr>
<td><code>employee_co_ustid</code></td>
<td>Usatzsteuer-Identifikationsnummer</td>
</tr>
<tr>
<td><code>employee_duns</code></td>
<td>DUNS-Nummer</td>
</tr>
<tr>
<td><code>employee_email</code></td>
<td>Email</td>
</tr>
<tr>
<td><code>employee_fax</code></td>
<td>Fax</td>
</tr>
<tr>
<td><code>employee_name</code></td>
<td>voller Name</td>
</tr>
<tr>
<td><code>employee_signature</code></td>
<td>Signatur</td>
</tr>
<tr>
<td><code>employee_taxnumber</code></td>
<td>Steuernummer</td>
</tr>
<tr>
<td><code>employee_tel</code></td>
<td>Telefonnummer</td>
</tr>
</table>
</p>

<h3><a name="allgemein_verkaeufer">
Informationen &uuml;ber den Verk&auml;fer (nur bei Verkaufsmasken):</a></h3>

<p>
<table border="1">
<tr><th>Variablenname</th><th>Bedeutung</th></tr>
<tr>
<td><code>salesman_address</code></td>
<td>Adressfeld</td>
</tr>
<tr>
<td><code>salesman_businessnumber</code></td>
<td>Firmennummer</td>
</tr>
<tr>
<td><code>salesman_company</code></td>
<td>Firmenname</td>
</tr>
<tr>
<td><code>salesman_co_ustid</code></td>
<td>Usatzsteuer-Identifikationsnummer</td>
</tr>
<tr>
<td><code>salesman_duns</code></td>
<td>DUNS-Nummer</td>
</tr>
<tr>
<td><code>salesman_email</code></td>
<td>Email</td>
</tr>
<tr>
<td><code>salesman_fax</code></td>
<td>Fax</td>
</tr>
<tr>
<td><code>salesman_name</code></td>
<td>voller Name</td>
</tr>
<tr>
<td><code>salesman_signature</code></td>
<td>Signatur</td>
</tr>
<tr>
<td><code>salesman_taxnumber</code></td>
<td>Steuernummer</td>
</tr>
<tr>
<td><code>salesman_tel</code></td>
<td>Telefonnummer</td>
</tr>
</table>
</p>

<h3><a name="allgemein_steuern">
Variablen f&uuml;r die einzelnen Steuern:</a></h3>

<p>
<table border="1">
<tr><th>Variablenname</th><th>Bedeutung</th></tr>
<tr>
<td><code>tax</code></td>
<td>Steuer</td>
</tr>
<tr>
<td><code>taxbase</code></td>
<td>zu versteuernder Betrag</td>
</tr>
<tr>
<td><code>taxdescription</code></td>
<td>Name der Steuer</td>
</tr>
<tr>
<td><code>taxrate</code></td>
<td>Steuersatz</td>
</tr>
</table>
</p>

<small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
zum Inhaltsverzeichnis</a></small><br>
<hr>

<h2><a name="invoice">Variablen in Rechnungen</a></h2>

<h3><a name="invoice_allgemein">Allgemeine Variablen:</a></h3>

<p>
<table border="1">
<tr><th>Variablenname</th><th>Bedeutung</th></tr>
<tr>
<td><code>creditremaining</code></td>
<td>Verbleibender Kredit</td>
</tr>
<tr>
<td><code>currency</code></td>
<td>W?hrung</td>
</tr>
<tr>
<td><code>cusordnumber</code></td>
<td>Bestellnummer beim Kunden</td>
</tr>
<tr>
<td><code>deliverydate</code></td>
<td>Lieferdatum</td>
</tr>
<tr>
<td><code>duedate</code></td>
<td>F?lligkeitsdatum</td>
</tr>
<tr>
<td><code>globalprojectnumber</code></td>
<td>Projektnummer des ganzen Beleges</td>
</tr>
<tr>
<td><code>intnotes</code></td>
<td>Interne Bemerkungen</td>
</tr>
<tr>
<td><code>invdate</code></td>
<td>Rechnungsdatum</td>
</tr>
<tr>
<td><code>invnumber</code></td>
<td>Rechnungsnummer</td>
</tr>
<tr>
<td><code>invtotal</code></td>
<td>gesamter Rechnungsbetrag</td>
</tr>
<tr>
<td><code>notes</code></td>
<td>Bemerkungen der Rechnung</td>
</tr>
<tr>
<td><code>orddate</code></td>
<td>Auftragsdatum</td>
</tr>
<tr>
<td><code>ordnumber</code></td>
<td>Auftragsnummer, wenn die Rechnung aus einem Auftrag erstellt wurde</td>
</tr>
<tr>
<td><code>payment_terms</code></td>
<td>Zahlungskonditionen</td>
</tr>
<tr>
<td><code>quodate</code></td>
<td>Angebotsdatum</td>
</tr>
<tr>
<td><code>quonumber</code></td>
<td>Angebotsnummer</td>
</tr>
<tr>
<td><code>shippingpoint</code></td>
<td>Versandort</td>
</tr>
<tr>
<td><code>shipvia</code></td>
<td>Transportmittel</td>
</tr>
<tr>
<td><code>subtotal</code></td>
<td>Zwischensumme aller Posten ohne Steuern</td>
</tr>
<tr>
<td><code>sumcarriedforward</code></td>
<td>Zwischensumme aller bisher ausgegebenen Posten. Sollte nur in einem
<a href="dokumentenvorlagen-und-variablen.html#bloecke_pagebreak">
<code>pagebreak</code></a>-Block verwendet werden.</td>
</tr>
<tr>
<td><code>total</code></td>
<td>Restsumme der Rechnung (Summe abz&uuml;glich bereits bezahlter Posten)</td>
</tr>
<tr>
<td><code>transaction_description</code></td>
<td>Vorgangsbezeichnung</td>
</tr>
<tr>
<td><code>transdate</code></td>
<td>Auftragsdatum wenn die Rechnung aus einem Auftrag erstellt wurde</td>
</tr>
</table>
</p>

<h3><a name="invoice_posten">
Variablen f&uuml;r jeden Posten auf der Rechnung:</a></h3>

<p>
<table border="1">
<tr><th>Variablenname</th><th>Bedeutung</th></tr>
<tr>
<td><code>assembly</code></td>
<td>Erzeugnis</td>
</tr>
<tr>
<td><code>bin</code></td>
<td>Stellage</td>
</tr>
<tr>
<td><code>deliverydate_oe</code></td>
<td>Lieferdatum</td>
</tr>
<tr>
<td><code>description</code></td>
<td>Artikelbeschreibung</td>
</tr>
<tr>
<td><code>discount</code></td>
<td>Rabatt als Betrag</td>
</tr>
<tr>
<td><code>linetotal</code></td>
<td>Zeilensumme (Anzahl * Einzelpreis)</td>
</tr>
<tr>
<td><code>listprice</code></td>
<td>Listenpreis</td>
</tr>
<tr>
<td><code>netprice</code></td>
<td>Nettopreis</td>
</tr>
<tr>
<td><code>number</code></td>
<td>Artikelnummer</td>
</tr>
<tr>
<td><code>ordnumber_oe</code></td>
<td>Auftragsnummer des Originalauftrags, wenn die Rechnung aus einem Sammelauftrag erstellt wurde</td>
</tr>
<tr>
<td><code>p_discount</code></td>
<td>Rabatt in Prozent</td>
</tr>
<tr>
<td><code>partnotes</code></td>
<td>Die beim Artikel gespeicherten Bemerkungen</td>
</tr>
<tr>
<td><code>partsgroup</code></td>
<td>Warengruppe</td>
</tr>
<tr>
<td><code>projectnumber</code></td>
<td>Projektnummer</td>
</tr>
<tr>
<td><code>qty</code></td>
<td>Anzahl</td>
</tr>
<tr>
<td><code>runningnumber</code></td>
<td>Position auf der Rechnung (1, 2, 3...)</td>
</tr>
<tr>
<td><code>sellprice</code></td>
<td>Verkaufspreis</td>
</tr>
<tr>
<td><code>serialnumber</code></td>
<td>Seriennummer</td>
</tr>
<tr>
<td><code>transdate_oe</code></td>
<td>Auftragsdatum des Originalauftrags, wenn die Rechnung aus einem Sammelauftrag erstellt wurde</td>
</tr>
<tr>
<td><code>unit</code></td>
<td>Einheit</td>
</tr>
</table>
</p>

<h3><a name="invoice_zahlungen">
Variablen f&uuml;r die einzelnen Zahlungseing?nge:</a></h3>

<p>
<table border="1">
<tr><th>Variablenname</th><th>Bedeutung</th></tr>
<tr>
<td><code>datepaid</code></td>
<td>Datum</td>
</tr>
<tr>
<td><code>memo</code></td>
<td>Memo</td>
</tr>
<tr>
<td><code>paid</code></td>
<td>Betrag</td>
</tr>
<tr>
<td><code>source</code></td>
<td>Beleg</td>
</tr>
<tr>
<td><code>exchangerate</code></td>
<td>Wechselkurs</td>
</tr>
<tr>
<td><code>forex</code></td>
<td>Konto</td>
</tr>
</table>
</p>

<small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
zum Inhaltsverzeichnis</a></small><br>
<hr>

<h2><a name="dunning">Variablen in Mahnungen und Rechnungen &uuml;ber Mahngeb&uuml;hren</a></h2>

<h3><a name="dunning_vorlagennamen">Namen der Vorlagen</a></h3>

<p>Die Namen der Vorlagen werden im System-Men&uuml; vom Benutzer
eingegeben. Wird f&uuml;r ein Mahnlevel die Option zur automatischen
Erstellung einer Rechnung &uuml;ber die Mahngeb&uuml;hren und Zinsen
aktiviert, so wird der Name der Vorlage f&uuml;r diese Rechnung aus
dem Vorlagenname f&uuml;r diese Mahnstufe mit dem
Zusatz <code>_invoice</code> gebildet. Weiterhin werden die
K&uuml;rzel f&uuml;r die ausgew&auml;hlte Sprache und den
ausgew&auml;hlten Drucker angeh&auml;ngt.</p>

<h3><a name="dunning_allgemein">Allgemeine Variablen in Mahnungen:</a></h3>

<p>Die Variablen des Verk?ufers stehen wie gewohnt
als <code>employee_...</code> zur Verf?gung. Die Adressdaten des
Kunden stehen als Variablen <code>name</code>, <code>street</code>,
<code>zipcode</code>, <code>city</code>, <code>country</code>,
<code>department_1</code>, <code>department_2</code>, und
<code>email</code> zur Verf?gung.
</p>

<p>Weitere Variablen beinhalten:</p>

<p>
<table border="1">
<tr><th>Variablenname</th><th>Bedeutung</th></tr>
<tr>
<td><code>dunning_date</code></td>
<td>Datum der Mahnung</td>
</tr>
<tr>
<td><code>dunning_duedate</code></td>
<td>F&auml;lligkeitsdatum f&uuml;r diese Mahhnung</td>
</tr>
<tr>
<td><code>fee</code></td>
<td>Kummulative Mahngeb?hren</td>
</tr>
<tr>
<td><code>interest_rate</code></td>
<td>Zinssatz per anno in Prozent</td>
</tr>
<tr>
<td><code>total_amount</code></td>
<td>Gesamter noch zu zahlender Betrag als <code>fee</code> + <code>total_interest</code> + <code>total_open_amount</code></td>
</tr>
<tr>
<td><code>total_interest</code></td>
<td>Zinsen per anno &uuml;ber alle Rechnungen</td>
</tr>
<tr>
<td><code>total_open_amount</code></td>
<td>Summe &uuml;ber alle offene Betr&auml;ge der Rechnungen</td>
</tr>
</table>
</p>

<h3><a name="dunning_details">
Variablen f&uuml;r jede gemahnte Rechnung in einer Mahnung:</a></h3>

<p>
<table border="1">
<tr><th>Variablenname</th><th>Bedeutung</th></tr>
<tr>
<td><code>dn_amount</code></td>
<td>Rechnungssumme (brutto)</td>
</tr>
<tr>
<td><code>dn_duedate</code></td>
<td>Originales F&auml;lligkeitsdatum der Rechnung</td>
</tr>
<tr>
<td><code>dn_dunning_date</code></td>
<td>Datum der Mahnung</td>
</tr>
<tr>
<td><code>dn_dunning_duedate</code></td>
<td>F&auml;lligkeitsdatum der Mahnung</td>
</tr>
<tr>
<td><code>dn_fee</code></td>
<td>Kummulative Mahngeb&uuml;hr</td>
</tr>
<tr>
<td><code>dn_interest</code></td>
<td>Zinsen per anno f&uuml;r diese Rechnung</td>
</tr>
<tr>
<td><code>dn_invnumber</code></td>
<td>Rechnungsnummer</td>
</tr>
<tr>
<td><code>dn_linetotal</code></td>
<td>Noch zu zahlender Betrag (ergibt sich aus <code>dn_open_amount + dn_fee + dn_interest</code>)</td>
</tr>
<tr>
<td><code>dn_netamount</code></td>
<td>Rechnungssumme (netto)</td>
</tr>
<tr>
<td><code>dn_open_amount</code></td>
<td>Offener Rechnungsbetrag</td>
</tr>
<tr>
<td><code>dn_ordnumber</code></td>
<td>Bestellnummer</td>
</tr>
<tr>
<td><code>dn_transdate</code></td>
<td>Rechnungsdatum</td>
</tr>
</table>
</p>

<h3><a name="dunning_invoice">Variablen in automatisch erzeugten
Rechnungen &uuml;ber Mahngeb&uuml;hren</a></h3>

<p>Die Variablen des Verk?ufers stehen wie gewohnt
als <code>employee_...</code> zur Verf?gung. Die Adressdaten des
Kunden stehen als Variablen <code>name</code>, <code>street</code>,
<code>zipcode</code>, <code>city</code>, <code>country</code>,
<code>department_1</code>, <code>department_2</code>, und
<code>email</code> zur Verf?gung.
</p>

<p>Weitere Variablen beinhalten:</p>

<p>
<table border="1">
<tr><th>Variablenname</th><th>Bedeutung</th></tr>
<tr>
<td><code>duedate</code></td>
<td>F?lligkeitsdatum der Rechnung</td>
</tr>
<tr>
<td><code>dunning_id</code></td>
<td>Mahnungsnummer</td>
</tr>
<tr>
<td><code>fee</code></td>
<td>Mahngeb&uuml;hren</td>
</tr>
<tr>
<td><code>interest</code></td>
<td>Zinsen</td>
</tr>
<tr>
<td><code>invamount</code></td>
<td>Rechnungssumme (ergibt sich aus <code>fee + interest</code>)</td>
</tr>
<tr>
<td><code>invdate</code></td>
<td>Rechnungsdatum</td>
</tr>
<tr>
<td><code>invnumber</code></td>
<td>Rechnungsnummer</td>
</tr>
</table>
</p>

<small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
zum Inhaltsverzeichnis</a></small><br>
<hr>

<h2><a name="anderevorlagen">
Variablen in anderen Vorlagen</a></h2>

<p>Die Variablen in anderen Vorlagen sind &auml;hnlich wie in der
Rechnung. Allerdings hei&szlig;en die Variablen, die mit <code>inv</code>
beginnen, jetzt anders. Bei den Angeboten fangen sie mit <code>quo</code>
f&uuml;r "quotation" an: <code>quodate</code> f&uuml;r Angebotsdatum
etc. Bei Bestellungen wiederum fangen sie mit <code>ord</code> f&uuml;r
"order" an: <code>ordnumber</code> f&uuml;r Bestellnummer etc.</p>

<p>Manche Variablen sind in anderen Vorlagen hingegen gar nicht vorhanden wie
z.B. die f&uuml;r bereits verbuchte Zahlungseing&auml;nge. Dies sind
Variablen, die vom Gesch&auml;ftsablauf her in der entsprechenden Vorlage
keine Bedeutung haben oder noch nicht belegt sein k&ouml;nnen.</p>

<small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
zum Inhaltsverzeichnis</a></small><br>
<hr>

<h2><a name="bloecke">
Bl&ouml;cke, bedingte Anweisungen und Schleifen</a></h2>

<p>Der Parser kennt neben den Variablen einige weitere Konstrukte, die
gesondert behandelt werden. Diese sind wie Variablennamen in spezieller
Weise markiert: <code>&lt;%anweisung%&gt;</code></p>

<h3><a name="bloecke_ifnot">Der <code>if not</code>-Block</a></h3>

<p class="blue"><code>&lt;%if not variablenname%&gt;<br>
...<br>
&lt;%end&gt;</code></p>

<p>Eine normale "if-not-then"-Bedingung. Die Zeilen zwischen dem "if not" und
dem "end" werden nur ausgegeben, wenn die Variable "variablenname" nicht
gesetzt oder gleich 0 ist.</p>

<h3><a name="bloecke_if">Der <code>if</code>-Block</a></h3>

<p class="blue"><code>&lt;%if variablenname%&gt;<br>
...<br>
&lt;%end&gt;</code></p>

<p>Eine normale "if-then"-Bedingung. Die Zeilen zwischen dem "if" und dem
"end" werden nur ausgegeben, wenn die Variable "variablenname" gesetzt und
ungleich 0 ist.</p>

<h3><a name="bloecke_foreach">Die <code>foreach</code>-Schleife</a></h3>

<p class="blue"><code>&lt;%foreach variablenname%&gt;<br>
...<br>
&lt;%end&gt;</code></p>

<p>F&uuml;gt die Zeilen zwischen den beiden Anweisungen so oft ein, wie das
Perl-Array der Variablen "variablenname" Elemente enth&auml;t. Dieses
Konstrukt wird zur Ausgabe der einzelnen Posten einer Rechnung / eines
Angebots sowie zur Ausgabe der Steuern benutzt. In jedem Durchlauf werden
die <a href="dokumentenvorlagen-und-variablen.html#invoice_posten">zeilenbezogenen
Variablen</a> jeweils auf den Wert f&uuml;r die aktuelle Position
gesetzt.</p>

<p>Die Syntax sieht normalerweise wie folgt aus:</p>

<p class="blue"><code>&lt;%foreach number%&gt;<br>
Position: &lt;%runningnumber%&gt;<br>
Anzahl: &lt;%qty%&gt;<br>
Artikelnummer: &lt;%number%&gt;<br>
Beschreibung: &lt;%description%&gt;<br>
...<br>
&lt;%end&gt;</code></p>

<p>Besonderheit in OpenDocument-Vorlagen: Tritt ein
<code>&lt;foreach&gt;</code>-Block innerhalb einer Tabellenzelle
auf, so wird die komplette Tabellenzeile so oft wiederholt wie
notwendig. Tritt er au&szlig;erhalb auf, so wird nur der Inhalt
zwischen <code>&lt;foreach&gt;</code> und <code>&lt;end&gt;</code>
wiederholt, nicht aber die komplette Zeile, in der er steht.</p>

<h3><a name="bloecke_pagebreak">Der <code>pagebreak</code>-Block</a></h3>

<p class="blue"><code>&lt;%pagebreak ZpZ ZeS ZzS%&gt;<br>
...<br>
&lt;%end&gt;</code></p>

<p>Dieser Block existiert nur in LaTeX-Vorlagen.</p>

<p>Dieser Block legt das Verhalten beim manuellen Einf&uuml;gen eines
Seitenumbruchs fest. Normalerweise bricht LaTeX die Seiten selber um. Beim
Rechnungsdruck ist das oft nicht gew&uuml;nscht, oder man m&ouml;chte im
Falle eines Seitenumbruchs den &Uuml;bertrag etc. mit ausgeben. Deswegen
versucht der Parser, manuell Seitenumbr&uuml;che einzuf&uuml;gen,
w&auml;hrend er einen <code>foreach</code>-Block auswertet, weil hier die
manuellen Seitenumbr&uuml;che erforderlich werden. Daf&uuml;r ben&ouml;tigt
der Parser aber drei Informationen:</p>

<p>
<ol>
<li>Wieviele Zeichen passen bei der Variablen "description" pro Posten
in eine Zeile? Das ist der Parameter "ZpZ" (Zeichen pro Zeile).</li>
<li>Wieviele Zeilen/Posten passen auf die erste Seite? Das
ist der Parameter "ZeS" (Zeilen erste Seite).</li>
<li>Wieviele Zeilen/Posten passen auf die zweite und alle nachfolgenden
Seiten? Das ist der Parameter "ZzS" (Zeilen zweite Seite).</li>
</ol>
</p>

<p>Diese Parameter sind drei Zahlen, die manuell durch Verwendung von langen
Warenbezeichnungen und Rechnungen mit vielen Posten bestimmt werden
m&uuml;ssen.</p>

<p>&Uuml;blicherweise wird in diesem Block zuerst die aktuelle Tabelle
geschlossen, eventuell Text eingef&uuml;gt (z.B. "Fortsetzung auf der
n&auml;chsten Seite"), dann ein Seitenumbruch erzwungen, eventuell Text
eingef&uuml;gt (z.B. "&Uuml;bertrag von der vorherigen Seite:
&lt;%sumcarriedforward%&gt; EUR") und die Tabelle wieder ge&ouml;ffnet.</p>

<p>Wird kein manueller Seitenumbruch gew&uuml;scht, so kann dieser Block
komplett entfallen.</p>

<small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
zum Inhaltsverzeichnis</a></small><br>
<hr>

<h2><a name="markup">
Markup-Code, der innerhalb von Formularen zur Textformatierung
verwendet werden kann</a></h2>

<p>Wenn der Benutzer innhalb von Formularen in Lx-Office Text anders
formatiert haben m&ouml;chte, so ist dies begrenzt m&ouml;glich. Lx-Office
unterst&uuml;tzt die Textformatierung mit HTML-&auml;hnlichen Tags. Der
Benutzer kann z.B. bei der Artikelbeschreibung auf einer Rechnung Teile des
Texts zwischen Start- und Endtags setzen. Dieser Teil wird dann automatisch
in Anweisungen f&uuml;r das ausgew&auml;hlte Vorlagenformat (HTML oder
PDF &uuml;ber LaTeX) umgesetzt.</p>

<p>Die unterst&uuml;tzen Formatierungen sind:</p>

<p>
<table border="1">
<tr><th>Formatierung</th><th>Auswirkung</th></tr>
<tr>
<td><code>&lt;b&gt;Text&lt;/b&gt;</code></td>
<td>Text wird in <b>fettdruck</b> gesetzt.</td>
</tr>
<tr>
<td><code>&lt;i&gt;Text&lt;/i&gt;</code></td>
<td>Text wird <i>kursiv</i> gesetzt.</td>
</tr>
<tr>
<td><code>&lt;u&gt;Text&lt;/u&gt;</code></td>
<td>Text wird <u>unterstrichen</u>.</td>
</tr>
<tr>
<td><code>&lt;s&gt;Text&lt;/s&gt;</code></td>
<td>Text wird <s>durchgestrichen</s>. Diese Formatierung ist nicht bei der
Ausgabe als PDF &uuml;ber LaTeX verf&uuml;gbar.</td>
</tr>
<tr>
<td><code>&lt;pagebreak&gt;</code></td>
<td>Erzwingt einen Seitenumbruch (siehe unten).</td>
</tr>
</table>
</p>

<p>Eine Besonderheit ist der Befehl <code>&lt;pagebreak&gt;</code>,
der nur in LaTeX-Vorlagen funktioniert und in anderen Vorlagen
einfach gel&ouml;scht wird. Dieser erzwingt unabh&auml;ngig von der
im <a
href="dokumentenvorlagen-und-variablen.html#bloecke_pagebreak">pagebreak-Block</a>
voreingestellten Werte einen Seitenumbruch nach der aktuellen
Rechnungsposition. Dementsprechend funktioniert er nur innerhalb von
<code>&lt;foreach...&gt;</code>-Schleifen. Weiterhin ben&ouml;tigt er kein
Endtag.</p>

<small><a href="dokumentenvorlagen-und-variablen.html#inhaltsverzeichnis">
zum Inhaltsverzeichnis</a></small><br>
<hr>

</body>
</html>
(7-7/12)