3 % Überarbeitet von Norbert Simon, n.simon@linet-services.de
4 % Version 2.5 vom 16. November 2011
5 % Basiert auf der Arbeit von kmk@lilalaser.de / 2007
6 % Diese Vorlage steht unter der GPL-Lizenz, Version 3
7 % siehe http://www.gnu.de/licenses/gpl-3.0.html
9 % config: tag-style=$( )$
12 \documentclass[twoside]{scrartcl}
13 \usepackage{fancyhdr} % Für den Seitenkopf und -Fuß
14 \usepackage{ifpdf} % Erlaubt eine Code-Weiche für PDF, oder DVI Ausgabe
15 \usepackage{xifthen} % Allgemeine Code-Weiche
16 \usepackage{graphicx} % Fuer die Einbindung der Logo-Graphik
17 \usepackage{german} % Deutsche Trenn-Tabelle
18 \usepackage[utf8]{inputenc} % Umlaute direkt eingeben
19 \usepackage{textcomp} % Sonderzeichen
20 \usepackage{lastpage} % Fuer die Angabe "Seite 2 von 5"
21 \usepackage{filecontents} % Um von latex aus eine Datei schreiben zu koennen
22 \usepackage{etex} % Damit Marken verwendet werden koennen
23 \usepackage{ltxtable} % Mehrseiten-Tabellen mit variabler Spaltenbreite
24 \usepackage{booktabs} % Striche in Tabellen
25 \usepackage{numprint} % Zahlen formatiert ausgeben
26 \usepackage[$(if myconfig_output_numberformat =~ "1.000,00")$german$(else)$$(if myconfig_output_numberformat =~ "1000,00")$germannosep$(else)$$(if myconfig_output_numberformat =~ "1,000.00")$english$(else)$englishnosep$(end)$$(end)$$(end)$]{zwischensumme} % Lokales Makro zur Berechnung der Zwischensummen
27 \usepackage{microtype,relsize} %Feinpositionierung, Sperren von Text
28 \newcommand*{\sperren}[1]{\normalsize\textls*[200]{#1}} %Sperrung Überrschriften
30 % ---------- Report-Variablen zur Verwendung in kivitendobriefkopf.tex ----------
31 % ---------- Die eigenen Daten ----------
32 \newcommand{\employeename}{$(employee_name)$}
33 \newcommand{\employeecompany}{$(employee_company)$}
34 \newcommand{\employeeaddress}{$(employee_address)$}
35 \newcommand{\employeetel}{$(employee_tel)$}
36 \newcommand{\employeefax}{$(employee_fax)$}
37 \newcommand{\employeeemail}{$(employee_email)$}
38 \newcommand{\employeecoustid}{$(employee_co_ustid)$}
39 \newcommand{\employeetaxnumber}{$(employee_taxnumber)$}
40 \newcommand{\employeetable}{tabelle$(employee_login)$.tex}
42 % ---------- Eigene Bankverbindung falls nicht im Briefkopf gesetzt ----------
43 % \newcommand{\companybank}{$(company_bank)$}
44 % \newcommand{\companybankcode}{$(company_bank_code)$}
45 % \newcommand{\companyaccountnumber}{$(company_account_number)$}
47 % ---------- Adressat ----------
48 \newcommand{\name}{$(name)$}
49 \newcommand{\departmentone}{$(department_1)$}
50 \newcommand{\departmenttwo}{$(department_2)$}
51 \newcommand{\cpgreeting}{$(cp_greeting)$}
52 \newcommand{\cptitle}{$(cp_title)$}
53 \newcommand{\cpgivenname}{$(cp_givenname)$}
54 \newcommand{\cpname}{$(cp_name)$}
55 \newcommand{\street}{$(street)$}
56 \newcommand{\country}{$(country)$}
57 \newcommand{\zipcode}{$(zipcode)$}
58 \newcommand{\city}{$(city)$}
59 \newcommand{\phone}{$(customerphone)$}
60 \newcommand{\fax}{$(customerfax)$}
61 \newcommand{\lettergreeting}{
62 \ifthenelse{\equal{$(cp_gender)$}{f}}
63 {Sehr geehrte Frau $(cp_name)$,}
64 {\ifthenelse{\equal{$(cp_gender)$}{m}}
65 {Sehr geehrter Herr $(cp_name)$,}
66 {Sehr geehrte Damen und Herren,}
70 % ---------- Rechnungsvariablen ----------
71 \newcommand{\kundennummer}{$(customernumber)$}
72 \newcommand{\quonumber}{$(quonumber)$} % Angebotsnummer
73 \newcommand{\ordnumber}{$(ordnumber)$} % Auftragsnummer bei uns
74 \newcommand{\cusordnumber}{$(cusordnumber)$} % Auftragsnummer beim Kunden
75 \newcommand{\invnumber}{$(invnumber)$} % Rechnungsnummer
76 \newcommand{\docnumber}{Rechnung Nr. \invnumber}
77 \newcommand{\quodate}{$(quodate)$} % Angebotsdatum
78 \newcommand{\orddate}{$(orddate)$} % Auftragsdatum
79 \newcommand{\reqdate}{$(reqdate)$} % gewuenschtes Lieferdatum
80 \newcommand{\deliverydate}{$(deliverydate)$} % Lieferdatum
81 \newcommand{\invdate}{$(invdate)$} % Rechnungsdatum
82 \newcommand{\terms}{$(terms)$} % Zahlungsfrist
83 \newcommand{\duedate}{$(duedate)$} % Fälligkeitsdatum
84 \newcommand{\invtotal}{$(invtotal)$} % Gesamtbetrag
85 \newcommand{\paid}{$(paid)$} % Schon bezahlt
86 \newcommand{\total}{$(total)$} % Restbetrag
88 % ---------- Lieferadresse ----------
89 \newcommand{\shiptoname}{$(shiptoname)$}
90 \newcommand{\shiptocontact}{$(shiptocontact)$}
91 \newcommand{\shiptodepartmentone}{$(shiptodepartment_1)$}
92 \newcommand{\shiptodepartmenttwo}{$(shiptodepartment_2)$}
93 \newcommand{\shiptostreet}{$(shiptostreet)$}
94 \newcommand{\shiptocity}{$(shiptocity)$}
95 \newcommand{\shiptocountry}{$(shiptocountry)$}
96 \newcommand{\shiptophone}{$(shiptophone)$}
97 \newcommand{\shiptozipcode}{$(shiptozipcode)$}
98 \newcommand{\shiptofax}{$(shiptofax)$}
100 % ---------- Währungszeichen ----------
101 \newcommand{\currency}{$(currency)$}
102 \ifthenelse{\equal{\currency}{EUR}}{\let\currency\euro}{}
103 \ifthenelse{\equal{\currency}{YEN}}{\let\currency\textyen}{}
104 \ifthenelse{\equal{\currency}{GBP}}{\let\currency\pounds}{}
105 \ifthenelse{\equal{\currency}{USD}}{\let\currency\$}{}
107 % ---------- Ende Reportvariablen-Umsetzung ----------
109 % ---------- Briefkopf dazuladen ----------
110 \input{kivitendobriefkopf}
113 % ---------- Schrift Hauptdokuments (Computermodern-sanserif) ----------
114 % \fontfamily{cmss}\fontsize{10}{12pt plus 0.12pt minus 0.1pt}\selectfont
115 % ---------- Schrift Helvetica ------------------------
116 \fontfamily{phv}\fontsize{10}{12pt plus 0.12pt minus 0.1pt}\selectfont
117 % ---------- Firmenlogo nur erste Seite ----------
118 \thispagestyle{briefkopf}
120 % ---------- Datum und Nummern ----------
121 % Position unterhalb des Briefkopfs
122 \vspace*{\vlogospacing}
123 \renewcommand{\arraystretch}{0.9}
124 \begin{minipage}[b]{177mm}
125 \sperren{\textbf{Rechnung Nr. \invnumber}}
126 {\tiny Bitte stets angeben}
129 \begin{tabular}[b]{r@{\hspace{2mm}}p{\hlogospacing}}
130 \textbf{Seite} & {\thepage} von \pageref{LastPage}\\
131 \textbf{Datum} & \invdate \\
132 \textbf{Kunden Nr.} & \kundennummer\\
133 \nonemptyline{\textbf{Auftrag Nr.} &}{\ordnumber}
134 \nonemptyline{\textbf{Rechnung Nr.} &}{\invnumber}
135 \textbf{Ansprechpartner} & \employeename\\
136 \nonemptyline{\textbf{Durchwahl} &}{\employeetel}
137 \nonemptyline{\textbf{E-Mail} &}{\employeeemail}
138 \end{tabular}\\[10mm plus 20mm minus 10mm]
140 \renewcommand{\arraystretch}{1}
142 % ---------- Begrüßung und Bemerkungen ----------
145 Hiermit erlauben wir uns, Ihnen die nachfolgenden Positionen $(if orddate)$gemäß
146 Ihrem Auftrag vom \orddate{ }$(end)$in Rechnung zu stellen.\\
148 Für Nachfragen steht Ihnen \employeename \ per Telefon (\employeetel)
149 oder per E-Mail (\employeeemail) gerne zur Verfügung.\\[1\baselineskip]
150 \ifthenelse{\isempty{$(notes)$}}{}{
151 $(notes)$\\[1\baselineskip]
153 %Mit freundlichen Grüßen\\[1\baselineskip]
154 %\employeename\\[1\baselineskip]
155 % ---------- Die eigentliche-Tabelle ----------
156 % ---------- Tabelle puffern ----------
157 \begin{filecontents}{\employeetable}
158 % ---------- globale Variable laufsumme deklarieren ----------
160 % ---------- Spaltendefinition ----------
161 %\begin{longtable}{@{}rlX@{ }rlrr@{\makebox[\widthof{\textbf{~\currency}}]}}
162 \begin{longtable}{@{}rlX@{ }rlrr@{\makebox[\widthof{\textbf{}}]}}
163 % ---------- Kopfzeile der Tabelle ----------
166 \textbf{Bezeichnung} &
173 % ---------- Tabellenkopf nach dem Umbruch ----------
176 \textbf{Bezeichnung} &
182 & & \multicolumn{4}{r}{} & \MarkUebertrPos\\[1.5em]
184 % ---------- Fuss der Teiltabellen ----------
186 & & \multicolumn{4}{r}{} & \MarkZwsumPos \\
188 % ---------- Das Ende der Tabelle ----------
190 % & & \multicolumn{4}{r}{ Nettobetrag:} & \MarkZwsumPos \\
192 % ---------- Positionen ----------
197 % \ifthenelse{\equal{$(longdescription)$}{}}{}{\newline
198 % \renewcommand{\baselinestretch}{1}\footnotesize
199 % {\footnotesize $(longdescription)$
200 % \renewcommand{\baselinestretch}{1}\normalsize
202 \ifthenelse{\equal{$(deliverydate_oe)$}{\leer}}{}{
203 \newline Lieferdatum:~$(deliverydate_oe)$}
207 \ifthenelse{\isempty{$(sellprice)$}}{&}{
208 \numprint{$(sellprice)$}
209 \ifthenelse{\equal{$(p_discount)$}{0}}{}{ -$(p_discount)$\%} &
210 \numprint{$(linetotal)$}\Wert{$(linetotal NOFORMAT)$}
215 % ---------- Ende der Hilfsdatei ----------
217 % ---------- Puffertabelle öffnen ----------
218 \LTXtable{\textwidth}{\employeetable}
219 %---------- Bereich für die Summen ----------
221 %---------- Summenbereich nach recht schieben ----------
223 \setlength{\tabcolsep}{0mm}
224 \begin{tabular}[b]{@{}r@{ }r@{ }l}
225 {Nettobetrag:}& \numprint{$(subtotal)$}& \currency\\
226 % ---------- Alle Steuern ausweisen ----------
228 % {$(taxdescription)$ auf }\numprint{$(taxbase)$}~\currency: & \numprint{$(tax)$}& \\
229 {$(taxdescription)$}: & \numprint{$(tax)$}& \currency\\
232 {\textbf{Rechnungsbetrag:}} & \bfseries\numprint{\invtotal} & \textbf{\currency}\\
233 % ---------- Wenn bereits etwas gezahlt wurde ----------
234 $(if invtotal != total)$
236 Zahlung vom {$(paymentdate)$}: & {\numprint{-$(payment)$}} & \currency \\
239 \textbf{Offener Betrag: } & \textbf{\numprint{\total}} & \textbf{\currency}\\
243 } %Ende des Summenkasten
245 % ---------- Lieferadresse ----------
247 \equal{\shiptoname}{\name} \AND
248 \equal{\shiptodepartmentone}{\leer} \AND
249 \equal{\shiptodepartmenttwo}{\leer} \AND
250 \equal{\shiptostreet}{\street} \AND
251 \equal{\shiptozipcode}{\zipcode} \AND
252 \equal{\shiptocity}{\city}
255 % ---------- Umbruch dazwischen verhindern ----------
258 % ---------- Bereich für Lieferadresse ----------
259 \textbf{Leistungsempfänger:}\hfill\parbox[t]{0.7\textwidth}{
261 \nonemptyline{}{\shiptodepartmentone}
262 \nonemptyline{}{\shiptodepartmenttwo}
264 \shiptocountry{ }\shiptozipcode{ }\shiptocity\\[1mm]
265 \nonemptyline{Tel: }{\shiptophone}
266 \nonemptyline{Fax: }{\shiptofax}
270 % ---------- Nachbemerkung mit max. Abstand nach unten ----------
273 \textbf{Zahlungsbedingungen:}\hfill\parbox[t]{0.7\textwidth}{$(payment_terms)$}\\
276 %Bitte überweisen Sie den Rechnungsbetrag in Höhe von
277 %{\numprint{\total}~\currency} innerhalb von
278 %%{\numprint{\total}~\currency}
279 %\ifthenelse{\equal{\duedate}{\leer}}{{14}}{{\terms}}~Tagen
280 %auf das unten angegebene Konto.
281 %\ifthenelse{\equal{\duedate}{\leer}}{}\\ \vfil
282 % {Nach dem {\duedate} behalten wir uns Verzugszinsen vor.}
283 Soweit nicht anders angegeben, \ifthenelse{\equal{\deliverydate}{\leer}}
284 {entspricht das Leistungsdatum dem Rechnungsdatum.}
285 {wurde die Leistung am {\deliverydate} erbracht.}\\
288 Bereits gelieferte Waren bleiben bis zur vollständigen Bezahlung der
289 Rechnung unser Eigentum.