Benutzerdefinierte Variablen: Indizes für Tabelle custom_variables_validity
[kivitendo-erp.git] / templates / print / Standard / credit_note.tex
old mode 100644 (file)
new mode 100755 (executable)
index 69ac965..12538f4
-\documentclass[twoside]{scrartcl}
-\usepackage{eurosym}
-\usepackage{tabularx}
-\usepackage{ifthen}
-\usepackage[utf8]{inputenc}
-\begin{document}
-
-\setlength{\parindent}{0cm}
-
-\pagestyle{empty}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
+% credit_note.tex
+% Verkauf Gutschrift
+% Überarbeitet von Norbert Simon, n.simon@linet-services.de
+% Version 2.5 vom 16. November 2011
+% Basiert auf der Arbeit von kmk@lilalaser.de / 2007
+% Diese Vorlage steht unter der GPL-Lizenz, Version 3
+% siehe http://www.gnu.de/licenses/gpl-3.0.html
+% ----------
+% config: tag-style=$( )$
+% ----------
 
-\fontfamily{cmss}\fontshape{n}\selectfont
+\documentclass[twoside]{scrartcl}
+\usepackage{fancyhdr}       % Für den Seitenkopf und -Fuß
+\usepackage{ifpdf}          % Erlaubt eine Code-Weiche für PDF, oder DVI Ausgabe
+\usepackage{xifthen}        % Allgemeine Code-Weiche
+\usepackage{graphicx}       % Fuer die Einbindung der Logo-Graphik
+\usepackage{german}         % Deutsche Trenn-Tabelle
+\usepackage[utf8]{inputenc} % Umlaute direkt eingeben
+\usepackage{textcomp}       % Sonderzeichen
+\usepackage{lastpage}       % Fuer die Angabe "Seite 2 von 5"
+\usepackage{filecontents}   % Um von latex aus eine Datei schreiben zu koennen
+\usepackage{etex}           % Damit Marken verwendet werden koennen
+\usepackage{ltxtable}       % Mehrseiten-Tabellen mit variabler Spaltenbreite
+\usepackage{booktabs}      % Striche in Tabellen
+\usepackage{numprint}       % Zahlen formatiert ausgeben
+\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
+\usepackage{microtype,relsize} %Feinpositionierung, Sperren von Text
+\newcommand*{\sperren}[1]{\normalsize\textls*[200]{#1}} %Sperrung Überrschriften
 
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
+% ---------- Report-Variablen zur Verwendung in lxbriefkopf.tex ----------
+% ----------  Die eigenen Daten ----------
+\newcommand{\employeename}{$(employee_name)$}
+\newcommand{\employeecompany}{$(employee_company)$}
+\newcommand{\employeeaddress}{$(employee_address)$}
+\newcommand{\employeetel}{$(employee_tel)$}
+\newcommand{\employeefax}{$(employee_fax)$}
+\newcommand{\employeeemail}{$(employee_email)$}
+\newcommand{\employeecoustid}{$(employee_co_ustid)$}
+\newcommand{\employeetaxnumber}{$(employee_taxnumber)$}
+\newcommand{\employeetable}{$(template_meta.tmpfile NOESCAPE)$.table.tex}
 
-\vspace*{1.5cm}
+% ---------- Eigene Bankverbindung falls nicht im Briefkopf gesetzt ----------
+% \newcommand{\companybank}{$(company_bank)$}
+% \newcommand{\companybankcode}{$(company_bank_code)$}
+% \newcommand{\companyaccountnumber}{$(company_account_number)$}
 
-\begin{minipage}{8cm}
-  <%name%>
+% ---------- Adressat ----------
+\newcommand{\name}{$(name)$}
+\newcommand{\departmentone}{$(department_1)$}
+\newcommand{\departmenttwo}{$(department_2)$}
+\newcommand{\cpgreeting}{$(cp_greeting)$}
+\newcommand{\cptitle}{$(cp_title)$}
+\newcommand{\cpgivenname}{$(cp_givenname)$}
+\newcommand{\cpname}{$(cp_name)$}
+\newcommand{\street}{$(street)$}
+\newcommand{\country}{$(country)$}
+\newcommand{\zipcode}{$(zipcode)$}
+\newcommand{\city}{$(city)$}
+\newcommand{\phone}{$(customerphone)$}
+\newcommand{\fax}{$(customerfax)$}
+\newcommand{\lettergreeting}{
+       \ifthenelse{\equal{$(cp_gender)$}{f}}
+        {Sehr geehrte Frau $(cp_name)$,}
+       {\ifthenelse{\equal{$(cp_gender)$}{m}}
+         {Sehr geehrter Herr $(cp_name)$,}
+         {Sehr geehrte Damen und Herren,}
+       }\\[1\baselineskip]
+}
 
-  <%street%>
+% ---------- Rechnungsvariablen ----------
+\newcommand{\kundennummer}{$(customernumber)$}
+\newcommand{\quonumber}{$(quonumber)$}         % Angebotsnummer
+\newcommand{\ordnumber}{$(ordnumber)$}         % Auftragsnummer bei uns
+\newcommand{\cusordnumber}{$(cusordnumber)$}   % Auftragsnummer beim Kunden
+\newcommand{\invnumber}{$(invnumber)$}         % Rechnungsnummer
+\newcommand{\invnumbercreditnote}{$(invnumber_for_credit_note)$} %Rechnungsnummer Gutschrift
+\newcommand{\docnumber}{Rechnungsnummer: \invnumber}
+\newcommand{\quodate}{$(quodate)$}             % Angebotsdatum
+\newcommand{\orddate}{$(orddate)$}             % Auftragsdatum
+\newcommand{\reqdate}{$(reqdate)$}             % gewuenschtes Lieferdatum
+\newcommand{\deliverydate}{$(deliverydate)$}    % Lieferdatum
+\newcommand{\invdate}{$(invdate)$}             % Rechnungsdatum
+\newcommand{\terms}{$(terms)$}                 % Zahlungsfrist
+\newcommand{\duedate}{$(duedate)$}             % Fälligkeitsdatum
+\newcommand{\invtotal}{$(invtotal)$}           % Gesamtbetrag
+\newcommand{\paid}{$(paid)$}                   % Schon bezahlt
+\newcommand{\total}{$(total)$}                 % Restbetrag
 
-  <%zipcode%> <%city%>
+% ---------- Lieferadresse ----------
+\newcommand{\shiptoname}{$(shiptoname)$}
+\newcommand{\shiptocontact}{$(shiptocontact)$}
+\newcommand{\shiptodepartmentone}{$(shiptodepartment_1)$}
+\newcommand{\shiptodepartmenttwo}{$(shiptodepartment_2)$}
+\newcommand{\shiptostreet}{$(shiptostreet)$}
+\newcommand{\shiptocity}{$(shiptocity)$}
+\newcommand{\shiptocountry}{$(shiptocountry)$}
+\newcommand{\shiptophone}{$(shiptophone)$}
+\newcommand{\shiptozipcode}{$(shiptozipcode)$}
+\newcommand{\shiptofax}{$(shiptofax)$}
 
-  <%country%>
-\end{minipage}
-\hfill
-\begin{minipage}{6cm}
-  \rightline{\LARGE\textbf{\textit{Gutschrift}}} \vspace*{0.2cm}
-  \rightline{\large\textbf{\textit{Nr. <%invnumber%>% \vspace*{0.2cm}
-  }}}
-  für Rechnung: \hfill <%invnumber_for_credit_note%>
+% ---------- Währungszeichen ----------
+\newcommand{\currency}{\euro}
+\ifthenelse{\equal{$(currency)$}{YEN}}{\let\currency\textyen}{}
+\ifthenelse{\equal{$(currency)$}{GBP}}{\let\currency\pounds}{}
+\ifthenelse{\equal{$(currency)$}{USD}}{\let\currency\$}{}
 
-  Gutschriftdatum:\hfill <%invdate%>
+% ---------- Ende Reportvariablen-Umsetzung ----------
 
-  Auftrag-Nr:\hfill <%ordnumber%>
+% ---------- Briefkopf dazuladen ----------
+\input{lxbriefkopf}
 
-  Telefon:\hfill <%phone%>
+\begin{document}
+% ---------- Schrift Hauptdokuments (Computermodern-sanserif)  ----------
+% \fontfamily{cmss}\fontsize{10}{12pt plus 0.12pt minus 0.1pt}\selectfont
+% ---------- Schrift Helvetica ------------------------
+\fontfamily{phv}\fontsize{10}{12pt plus 0.12pt minus 0.1pt}\selectfont
 
-  Telefax:\hfill <%fax%>
+% ---------- Firmenlogo nur erste Seite ----------
+\thispagestyle{briefkopf}
 
-  Ansprechpartner:\hfill <%employee%>
+% ---------- Datum und Nummern ----------
+% Position unterhalb des Briefkopfs
+\vspace*{\vlogospacing}
+\renewcommand{\arraystretch}{0.9}
+\begin{minipage}[b]{177mm}
+\sperren{\textbf{Gutschrift Nr. \invnumber}}
+\hfill
+       \small
+       \begin{tabular}[b]{r@{\hspace{2mm}}p{\hlogospacing}}
+               \textbf{Seite} & {\thepage} von \pageref{LastPage}\\
+               \textbf{Datum} & \invdate \\
+               \textbf{Kunden Nr.} & \kundennummer\\
+               \nonemptyline{\textbf{Auftrag Nr.} &}{\ordnumber}
+               \nonemptyline{\textbf{Rechnung Nr.} &}{\invnumbercreditnote}
+               \nonemptyline{\textbf{Gutschrift Nr.} &}{\invnumber}
+               \textbf{Ansprechpartner} & \employeename\\
+               \nonemptyline{\textbf{Durchwahl} &}{\employeetel}
+               \nonemptyline{\textbf{E-Mail} &}{\employeeemail}
+       \end{tabular}\\[10mm plus 20mm minus 10mm]
 \end{minipage}
+\renewcommand{\arraystretch}{1}
+\normalsize
+% ---------- Begrüßung und Bemerkungen ----------
+\vspace{ 5mm}
+%\lettergreeting
+Hiermit erstatten wir Ihnen zur Rechnung Nr. \invnumbercreditnote{ } die nachfolgenden Positionen.\\
+Für Nachfragen steht Ihnen \employeename \ per Telefon (\employeetel) oder per E-Mail (\employeeemail) gerne zur Verfügung.
+%\\[0.4\baselineskip]
+\ifthenelse{\isempty{$(notes)$}}{}{
+      $(notes)$
+      }%
+\vspace{1\baselineskip}\\
+%Mit freundlichen Grüßen\\[1\baselineskip]
+%\employeename\\[1\baselineskip]
+% ---------- Die eigentliche-Tabelle ----------
+% ---------- Tabelle puffern ----------
+\begin{filecontents}{\employeetable}
+% ---------- globale Variable laufsumme deklarieren ----------
+\resetlaufsumme
+% ---------- Spaltendefinition ----------
+%\begin{longtable}{@{}rlX@{ }rlrr@{\makebox[\widthof{\textbf{~\currency}}]}}
+\begin{longtable}{@{}rlX@{ }rlrr@{\makebox[\widthof{\textbf{}}]}}
+% ---------- Kopfzeile der Tabelle ----------
+       \textbf{Pos} &
+       \textbf{Art.Nr.} &
+       \textbf{Bezeichnung} &
+       \textbf{Menge} &
+       \textbf{ME} &
+       \textbf{EP/€} &
+       \textbf{GP/€} \\
+       \midrule
+  \endfirsthead
+% ---------- Tabellenkopf nach dem Umbruch ----------
+       \textbf{Pos} &
+       \textbf{Art.Nr.} &
+       \textbf{Bezeichnung} &
+       \textbf{Menge} &
+       \textbf{ME} &
+       \textbf{EP/€} &
+       \textbf{GP/€} \\
+        \midrule
+       & & \multicolumn{4}{r}{} & \MarkUebertrPos\\
+  \endhead
+% ---------- Fuss der Teiltabellen ----------
+       \midrule
+       & & \multicolumn{4}{r}{} & \MarkZwsumPos \\
+  \endfoot
+% ---------- Das Ende der Tabelle ----------
+       \midrule
+%      & & \multicolumn{4}{r}{ Nettobetrag:} & \MarkZwsumPos \\
+  \endlastfoot
+% ---------- Positionen ----------
+$(foreach number)$
+       $(runningnumber)$ &
+       $(number)$ &
+       $(description)$
+%      \ifthenelse{\equal{$(longdescription)$}{}}{}{\newline
+%      \renewcommand{\baselinestretch}{1}\footnotesize
+%      {\footnotesize $(longdescription)$
+%      \renewcommand{\baselinestretch}{1}\normalsize
+%      }}
+       \ifthenelse{\equal{$(deliverydate_oe)$}{\leer}}{}{
+               \newline Lieferdatum:~$(deliverydate_oe)$}
+       &
+       $(qty)$ &
+       $(unit)$ &
+       \ifthenelse{\isempty{$(sellprice)$}}{&}{
+               \numprint{$(sellprice)$}
+               \ifthenelse{\equal{$(p_discount)$}{0}}{}{ -$(p_discount)$\%} &
+               \numprint{$(linetotal)$}\Wert{$(linetotal NOFORMAT)$}
+       }\\ %
+  $(end number)$
 
-\vspace*{0.5cm}
-
-Ihre Bestellung <%cusordnumber%> vom <%orddate%>
-% \hfill
-
-\vspace*{0.5cm}
-
-Sehr geehrte Damen und Herren,
-
-\vspace{0.5cm}
-
-\begin{tabularx}{\textwidth}{lrXrr}
-  \hline
-  \textbf{Pos} & \textbf{Menge} & \textbf{Bezeichnung} &
-  \textbf{E-Preis/\euro} & \textbf{G-Preis/\euro} \\
-  \hline
-  <%foreach number%>
-    <%runningnumber%> & <%qty%> <%unit%> & \raggedright <%description%> &
-    <%sellprice%> \euro & <%linetotal%> \euro \\
-    <%if discount_sub%> & Zwischensumme: &  & <%discount_sub%> \euro  & <%end if%>\\
-  <%end number%>\hline
-  \multicolumn{4}{l}{Nettobetrag} & <%subtotal%> \euro \\
-  <%foreach tax%>
-  \multicolumn{4}{l}{<%taxdescription%>} & <%tax%> \euro \\
-  <%end tax%>
-  \multicolumn{4}{l}{\textbf{Endbetrag}} & \textbf{<%invtotal%> \euro} \\ \hline
-\end{tabularx}
-
-\vspace{1cm}
+\end{longtable}
+% ----------  Ende der Hilfsdatei ----------
+\end{filecontents}
+% ---------- Puffertabelle öffnen ----------
+\LTXtable{\textwidth}{\employeetable}
+%---------- Bereich für die Summen ----------
+\parbox{\textwidth}{
+%---------- Summenbereich nach recht schieben  ----------
+\hfill
+\setlength{\tabcolsep}{0mm}
+\begin{tabular}{@{}r@{ }r@{ }l}
+   {Nettobetrag:}& \numprint{$(subtotal)$}& \currency\\
+% ---------- Alle Steuern ausweisen ----------
+   $(foreach tax)$
+%       {$(taxdescription)$ auf }\numprint{$(taxbase)$}~\currency: & \numprint{$(tax)$}& \\
+               {$(taxdescription)$}:  & \numprint{$(tax)$}& \currency\\
+   $(end tax)$
+   \midrule
+   {\textbf{Rechnungsbetrag:}} & \bfseries\numprint{\invtotal} & \textbf{\currency}\\
+% ---------- Wenn bereits etwas gezahlt wurde ----------
+$(if invtotal != total)$
+       $(foreach payment)$
+          abzgl. Zahlung vom {$(paymentdate)$}:& {\numprint{-$(payment)$}} & \currency\\
+       $(end paymentdate)$
+       \midrule
+       \textbf{Verbleibend: } & \textbf{\numprint{\total}} & \textbf{\currency}\\
+$(end)$
+\bottomrule
+ \end{tabular}
+} %Ende des Summenkasten
+\vfill
+% ---------- Nachbemerkung mit max. Abstand nach unten ----------
+{
+%Soweit nicht anders angegeben,
+%\ifthenelse{\equal{\deliverydate}{\leer}}
+%   {entspricht das Leistungsdatum dem Rechnungsdatum.}
+%   {wurde die Leistung am {\deliverydate} erbracht.}\\[0.5em]
+%Bitte überweisen Sie den Rechnungsbetrag in Höhe von
+%{\numprint{\total}~\currency} innerhalb von
+%\ifthenelse{\equal{\duedate}{\leer}}{{14}}{{\terms}}~Tagen
+%auf das unten angegebene Konto.
+%\ifthenelse{\equal{\duedate}{\leer}}{}
+%  {Nach dem {\duedate} behalten wir uns Verzugszinsen vor.}
+Bitte nennen Sie uns eine Bankverbindung auf welche das Guthaben überwiesen werden soll.\\
+\vfil
+\footnotesize
+Bereits gelieferte Waren bleiben bis zur vollständigen Bezahlung der
+Rechnung unser Eigentum.
+}
 
 \end{document}
-