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}{$(template_meta.tmpfile NOESCAPE)$.table.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}{\euro}
102 \ifthenelse{\equal{$(currency)$}{YEN}}{\let\currency\textyen}{}
103 \ifthenelse{\equal{$(currency)$}{GBP}}{\let\currency\pounds}{}
104 \ifthenelse{\equal{$(currency)$}{USD}}{\let\currency\$}{}
106 % ---------- Ende Reportvariablen-Umsetzung ----------
108 % ---------- Briefkopf dazuladen ----------
109 \input{kivitendobriefkopf}
112 % ---------- Schrift Hauptdokuments (Computermodern-sanserif) ----------
113 % \fontfamily{cmss}\fontsize{10}{12pt plus 0.12pt minus 0.1pt}\selectfont
114 % ---------- Schrift Helvetica ------------------------
115 \fontfamily{phv}\fontsize{10}{12pt plus 0.12pt minus 0.1pt}\selectfont
116 % ---------- Firmenlogo nur erste Seite ----------
117 \thispagestyle{briefkopf}
119 % ---------- Datum und Nummern ----------
120 % Position unterhalb des Briefkopfs
121 \vspace*{\vlogospacing}
122 \renewcommand{\arraystretch}{0.9}
123 \begin{minipage}[b]{177mm}
124 \sperren{\textbf{Rechnung Nr. \invnumber}}
125 {\tiny Bitte stets angeben}
128 \begin{tabular}[b]{r@{\hspace{2mm}}p{\hlogospacing}}
129 \textbf{Seite} & {\thepage} von \pageref{LastPage}\\
130 \textbf{Datum} & \invdate \\
131 \textbf{Kunden Nr.} & \kundennummer\\
132 \nonemptyline{\textbf{Auftrag Nr.} &}{\ordnumber}
133 \nonemptyline{\textbf{Rechnung Nr.} &}{\invnumber}
134 \textbf{Ansprechpartner} & \employeename\\
135 \nonemptyline{\textbf{Durchwahl} &}{\employeetel}
136 \nonemptyline{\textbf{E-Mail} &}{\employeeemail}
137 \end{tabular}\\[10mm plus 20mm minus 10mm]
139 \renewcommand{\arraystretch}{1}
141 % ---------- Begrüßung und Bemerkungen ----------
144 Hiermit erlauben wir uns, Ihnen die nachfolgenden Positionen $(if orddate)$gemäß
145 Ihrem Auftrag vom \orddate{ }$(end)$in Rechnung zu stellen.\\
147 Für Nachfragen steht Ihnen \employeename \ per Telefon (\employeetel)
148 oder per E-Mail (\employeeemail) gerne zur Verfügung.\\[1\baselineskip]
149 \ifthenelse{\isempty{$(notes)$}}{}{
150 $(notes)$\\[1\baselineskip]
152 %Mit freundlichen Grüßen\\[1\baselineskip]
153 %\employeename\\[1\baselineskip]
154 % ---------- Die eigentliche-Tabelle ----------
155 % ---------- Tabelle puffern ----------
156 \begin{filecontents}{\employeetable}
157 % ---------- globale Variable laufsumme deklarieren ----------
159 % ---------- Spaltendefinition ----------
160 %\begin{longtable}{@{}rlX@{ }rlrr@{\makebox[\widthof{\textbf{~\currency}}]}}
161 \begin{longtable}{@{}rlX@{ }rlrr@{\makebox[\widthof{\textbf{}}]}}
162 % ---------- Kopfzeile der Tabelle ----------
165 \textbf{Bezeichnung} &
172 % ---------- Tabellenkopf nach dem Umbruch ----------
175 \textbf{Bezeichnung} &
181 & & \multicolumn{4}{r}{} & \MarkUebertrPos\\[1.5em]
183 % ---------- Fuss der Teiltabellen ----------
185 & & \multicolumn{4}{r}{} & \MarkZwsumPos \\
187 % ---------- Das Ende der Tabelle ----------
189 % & & \multicolumn{4}{r}{ Nettobetrag:} & \MarkZwsumPos \\
191 % ---------- Positionen ----------
196 % \ifthenelse{\equal{$(longdescription)$}{}}{}{\newline
197 % \renewcommand{\baselinestretch}{1}\footnotesize
198 % {\footnotesize $(longdescription)$
199 % \renewcommand{\baselinestretch}{1}\normalsize
201 \ifthenelse{\equal{$(deliverydate_oe)$}{\leer}}{}{
202 \newline Lieferdatum:~$(deliverydate_oe)$}
206 \ifthenelse{\isempty{$(sellprice)$}}{&}{
207 \numprint{$(sellprice)$}
208 \ifthenelse{\equal{$(p_discount)$}{0}}{}{ -$(p_discount)$\%} &
209 \numprint{$(linetotal)$}\Wert{$(linetotal NOFORMAT)$}
214 % ---------- Ende der Hilfsdatei ----------
216 % ---------- Puffertabelle öffnen ----------
217 \LTXtable{\textwidth}{\employeetable}
218 %---------- Bereich für die Summen ----------
220 %---------- Summenbereich nach recht schieben ----------
222 \setlength{\tabcolsep}{0mm}
223 \begin{tabular}[b]{@{}r@{ }r@{ }l}
224 {Nettobetrag:}& \numprint{$(subtotal)$}& \currency\\
225 % ---------- Alle Steuern ausweisen ----------
227 % {$(taxdescription)$ auf }\numprint{$(taxbase)$}~\currency: & \numprint{$(tax)$}& \\
228 {$(taxdescription)$}: & \numprint{$(tax)$}& \currency\\
231 {\textbf{Rechnungsbetrag:}} & \bfseries\numprint{\invtotal} & \textbf{\currency}\\
232 % ---------- Wenn bereits etwas gezahlt wurde ----------
233 $(if invtotal != total)$
235 Zahlung vom {$(paymentdate)$}: & {\numprint{-$(payment)$}} & \currency \\
238 \textbf{Offener Betrag: } & \textbf{\numprint{\total}} & \textbf{\currency}\\
242 } %Ende des Summenkasten
244 % ---------- Lieferadresse ----------
246 \equal{\shiptoname}{\name} \AND
247 \equal{\shiptodepartmentone}{\leer} \AND
248 \equal{\shiptodepartmenttwo}{\leer} \AND
249 \equal{\shiptostreet}{\street} \AND
250 \equal{\shiptozipcode}{\zipcode} \AND
251 \equal{\shiptocity}{\city}
254 % ---------- Umbruch dazwischen verhindern ----------
257 % ---------- Bereich für Lieferadresse ----------
258 \textbf{Leistungsempfänger:}\hfill\parbox[t]{0.7\textwidth}{
260 \nonemptyline{}{\shiptodepartmentone}
261 \nonemptyline{}{\shiptodepartmenttwo}
263 \shiptocountry{ }\shiptozipcode{ }\shiptocity\\[1mm]
264 \nonemptyline{Tel: }{\shiptophone}
265 \nonemptyline{Fax: }{\shiptofax}
269 % ---------- Nachbemerkung mit max. Abstand nach unten ----------
272 \textbf{Zahlungsbedingungen:}\hfill\parbox[t]{0.7\textwidth}{$(payment_terms)$}\\
275 %Bitte überweisen Sie den Rechnungsbetrag in Höhe von
276 %{\numprint{\total}~\currency} innerhalb von
277 %%{\numprint{\total}~\currency}
278 %\ifthenelse{\equal{\duedate}{\leer}}{{14}}{{\terms}}~Tagen
279 %auf das unten angegebene Konto.
280 %\ifthenelse{\equal{\duedate}{\leer}}{}\\ \vfil
281 % {Nach dem {\duedate} behalten wir uns Verzugszinsen vor.}
282 Soweit nicht anders angegeben, \ifthenelse{\equal{\deliverydate}{\leer}}
283 {entspricht das Leistungsdatum dem Rechnungsdatum.}
284 {wurde die Leistung am {\deliverydate} erbracht.}\\
287 Bereits gelieferte Waren bleiben bis zur vollständigen Bezahlung der
288 Rechnung unser Eigentum.