|
% ----------------------------------------------------------
|
|
% letter.tex
|
|
% Globale Vorlage fuer Briefartige Documente LX-Office 2.6
|
|
%
|
|
% Changelog: see gitlog
|
|
\newcommand{\ftLetterVersion}{1.2-u (05.12.2012)}
|
|
%
|
|
% Lizenz
|
|
% http://www.gnu.de/licenses/gpl-3.0.html
|
|
%
|
|
% Siehe ./README
|
|
%
|
|
% Autor: Wulf Coulmann scripts_at_gpl.coulmann.de
|
|
% Aufgebaut auf invoice.tex 0.1 kmk@lilalaser.de
|
|
%
|
|
% ----------------------------------------------------------
|
|
|
|
\documentclass[letter,fontsize=11pt]{scrlttr2}
|
|
|
|
|
|
\begingroup
|
|
\makeatletter
|
|
\@latex@warning@no@line{ #### this is default.tex \ftLetterVersion #####}
|
|
\endgroup
|
|
|
|
|
|
\usepackage{ifpdf}
|
|
\usepackage{graphicx}
|
|
\usepackage{german}
|
|
\usepackage{textcomp}
|
|
\usepackage{lastpage}
|
|
\usepackage{filecontents}
|
|
\usepackage{etex}
|
|
\usepackage{ltxtable}
|
|
\usepackage{tabularx}
|
|
\usepackage{longtable}
|
|
\usepackage{booktabs}
|
|
\usepackage{numprint}
|
|
\usepackage{xstring}
|
|
\newcommand{\leer}{}
|
|
\usepackage{zwischensumme}
|
|
\ifthenelse{\isundefined{\employeecountry}}{\input{mydata}}{}
|
|
|
|
%% meta infos
|
|
\newcommand{\docname}{<%template_meta.formname NOESCAPE%>}
|
|
\newcommand{\TemplateMetaLanguageDescription}{<%template_meta.language.description NOESCAPE%>}
|
|
\newcommand{\LangCode}{<%template_meta.language.template_code NOESCAPE%>}
|
|
\newcommand{\TemplateMetaLanguageOutputNumberformat}{<%template_meta.language.output_numberformat NOESCAPE%>}
|
|
\newcommand{\TemplateMetaLanguageOutputDateformat}{<%template_meta.language.output_dateformat NOESCAPE%>}
|
|
\newcommand{\TemplateMetaFormat}{<%template_meta.format NOESCAPE%>}
|
|
\newcommand{\TemplateMetaExtension}{<%template_meta.extension NOESCAPE%>}
|
|
\newcommand{\TemplateMetaMedia}{<%template_meta.media NOESCAPE%>}
|
|
\newcommand{\TemplateMetaPrinterDescription}{<%template_meta.printer.description NOESCAPE%>}
|
|
\newcommand{\TemplateMetaPrinterTemplateCode}{<%template_meta.printer.template_code NOESCAPE%>}
|
|
|
|
%%%%%%%%% Report-Variablen umsetzen, damit latex sie in lxbriefkopf.tex sieht.
|
|
%%%% Die eigenen Daten
|
|
\newcommand{\employeename}{<%employee_name%>}
|
|
\newcommand{\employeecompany}{<%employee_company%>}
|
|
\newcommand{\employeeaddress}{<%employee_address%>}
|
|
\newcommand{\employeetel}{<%employee_tel%>}
|
|
\newcommand{\employeefax}{<%employee_fax%>}
|
|
\newcommand{\employeecoustid}{<%employee_co_ustid%>}
|
|
\newcommand{\employeetaxnumber}{<%employee_taxnumber%>}
|
|
\newcommand{\media}{<%media%>}
|
|
|
|
|
|
%%%% Adressat
|
|
\newcommand{\name}{<%name%>}
|
|
\newcommand{\Shipname}{\ifthenelse{\equal{<%shiptoname%>}{\leer}}{<%name%>}{<%shiptoname%>}}
|
|
\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{\Shipstreet}{\ifthenelse{\equal{<%shiptostreet%>}{\leer}}{<%street%>}{<%shiptostreet%>}}
|
|
\newcommand{\country}{<%country%>}
|
|
\newcommand{\Shipcountry}{<%shiptocountry%>}
|
|
\newcommand{\UstId}{<%ustid%>}
|
|
\newcommand{\zipcode}{<%zipcode%>}
|
|
\newcommand{\Shipzipcode}{\ifthenelse{\equal{<%shiptozipcode%>}{\leer}}{<%zipcode%>}{<%shiptozipcode%>}}
|
|
\newcommand{\city}{<%city%>}
|
|
\newcommand{\Shipcity}{\ifthenelse{\equal{<%shiptocity%>}{\leer}}{<%city%>}{<%shiptocity%>}}
|
|
\newcommand{\phone}{<%customerphone%>}
|
|
\newcommand{\fax}{<%customerfax%>}
|
|
|
|
%%%% Variablen, die sich auf das ganze Dokument beziehen
|
|
\newcommand{\kundennummer}{<%customernumber%>}
|
|
\newcommand{\vendornumber}{<%vendornumber%>}
|
|
\newcommand{\quonumber}{<%quonumber%>} % Angebotsnummer
|
|
\newcommand{\ordnumber}{<%ordnumber%>} % Auftragsnummer bei uns
|
|
\newcommand{\cusordnumber}{<%cusordnumber%>} % Auftragsnummer beim Kunden
|
|
\newcommand{\invnumber}{<%invnumber%>} % Rechnungsnummer
|
|
\newcommand{\donumber}{<%donumber%>} % Lieferscheinnummer
|
|
%\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{\transdate}{<%transdate%>} % Lieferscheindatum
|
|
\newcommand{\terms}{<%terms%>} % Zahlungsfrist
|
|
\newcommand{\duedate}{<%duedate%>} % Fälligkeitsdatum
|
|
\newcommand{\invtotal}{<%invtotal NOFORMAT%>} % Gesamtbetrag
|
|
\newcommand{\paid}{<%paid NOFORMAT%>} % Schon bezahlt
|
|
\newcommand{\total}{<%total NOFORMAT%>} % Restbetrag
|
|
\newcommand{\subtotal}{<%subtotal NOFORMAT%>} % Restbetrag
|
|
\newcommand{\paymentterms}{<%payment_terms%>} % Zahlungsbedingungen
|
|
\newcommand{\paymentPrivatEnd}{E} % Endung bei Privatkunden
|
|
\newcommand{\paymenttype}{<%payment_description%>} % name der Zahlungs-art - fuer Steuerung brutto/netto
|
|
|
|
|
|
%%%% 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%>}
|
|
|
|
%%%% Die Waehrungsvariable in Waehrunszeichen umsetzen
|
|
\newcommand{\currency}{<%currency%>}
|
|
\ifthenelse{\equal{\currency}{EUR}}{\let\currency\euro}{}
|
|
\ifthenelse{\equal{\currency}{YEN}}{\let\currency\textyen}{}
|
|
\ifthenelse{\equal{\currency}{GBP}}{\let\currency\pounds}{}
|
|
\ifthenelse{\equal{\currency}{USD}}{\let\currency\$}{}
|
|
|
|
%%%%%%%%%%%%% Ende Reportvariablen-Umsetzung
|
|
|
|
\newcommand{\NoValue}{0}
|
|
\newcommand{\Picklist}{0}
|
|
\newcommand{\PurchaseOrder}{0}
|
|
\newcommand{\trash}{0}
|
|
\newcommand{\nonemptyline}[2]{\ifthenelse{\equal{#2}{\leer}}{}{#1#2~\\}}
|
|
\newcommand{\MyAdress}{\IfStrEq{\docname}{sales_delivery_order}{\Shipname~\\
|
|
% lieferadresse wenn Lieferschein
|
|
\nonemptyline{\cpgreeting{ }\cpgivenname{ }}{\cpname}
|
|
\nonemptyline{}{\departmentone}
|
|
\Shipstreet ~\\
|
|
\Shipzipcode{ }\Shipcity
|
|
\ifthenelse{\equal{\Shipcountry}{\employeecountry}}{}{~\\ \Shipcountry} % Laenderangabe wird nur gedruckt,
|
|
~ % wenn der Empfaenger nicht im eigenen Land sitzt.
|
|
}{
|
|
\name~\\
|
|
\nonemptyline{\cpgreeting{ }\cpgivenname{ }}{\cpname}
|
|
\nonemptyline{}{\departmentone}
|
|
\street ~\\
|
|
\zipcode{ }\city
|
|
\ifthenelse{\equal{\country} {\employeecountry}}{}{
|
|
\ifthenelse{\equal{\country}{\leer}}{}{ ~\\ \country} } % Laenderangabe wird nur gedruckt,
|
|
~ % wenn der Empfaenger nicht im eigenen Land sitzt.
|
|
}
|
|
}
|
|
|
|
|
|
|
|
\begin{document}
|
|
|
|
%%% dei folgenden Funktionen lesen den Dokumentennamen aus und _muessen_nach_ \begin{dokument} stehen.
|
|
|
|
% ==== statische Begriffe in der aktuellen Sprache einlesen
|
|
\input{translations}
|
|
|
|
|
|
\ifthenelse{\bgPdfEmailOnly = 1 }{
|
|
\ifthenelse{\equal{\media}{email}}{
|
|
}{
|
|
\firsthead{}
|
|
\watermark{}
|
|
}
|
|
}{}
|
|
|
|
|
|
% ==== dokumenttyp ermitteln
|
|
\IfStrEq{\docname}{pick_list}{
|
|
% Sammelliste
|
|
\setkomavar{backaddress}{\DeliveryAddress}
|
|
\firsthead{
|
|
\hspace{-3mm}
|
|
\resizebox{\useplength{firstheadwidth}-50mm}{!}{%
|
|
\huge \TitlePicklist
|
|
}
|
|
}
|
|
\renewcommand{\NoValue}{1}
|
|
\renewcommand{\Picklist}{1}
|
|
\newcommand{\doctype}{}
|
|
\newcommand{\MyDocdate}{\transdate}
|
|
\newcommand{\DocNoTitle}{\DelorderNumber}
|
|
\newcommand{\docnumber}{\donumber}
|
|
\renewcommand{\deliverydate}{\transdate}
|
|
% 2. Documentnummer
|
|
\ifthenelse{\equal{\ordnumber}{\leer}}{
|
|
% wenn keine Auftragsnummer -> Angebotsnummer
|
|
\newcommand{\SecNoTitle}{\QuotationNumber}
|
|
\newcommand{\secnumber}{\quonumber}
|
|
}{
|
|
\newcommand{\SecNoTitle}{\OrderNumber}
|
|
\newcommand{\secnumber}{\ordnumber}
|
|
}
|
|
}{}
|
|
\IfStrEq{\docname}{sales_delivery_order}{
|
|
% Lieferschein
|
|
\renewcommand{\NoValue}{1}
|
|
\newcommand{\doctype}{\TitleDelorder}
|
|
\newcommand{\MyDocdate}{\transdate}
|
|
\newcommand{\DocNoTitle}{\DelorderNumber}
|
|
\newcommand{\docnumber}{\donumber}
|
|
\renewcommand{\deliverydate}{\transdate}
|
|
% 2. Documentnummer
|
|
\ifthenelse{\equal{\ordnumber}{\leer}}{
|
|
% wenn keine Auftragsnummer -> Angebotsnummer
|
|
\newcommand{\SecNoTitle}{\QuotationNumber}
|
|
\newcommand{\secnumber}{\quonumber}
|
|
}{
|
|
\newcommand{\SecNoTitle}{\OrderNumber}
|
|
\newcommand{\secnumber}{\ordnumber}
|
|
}
|
|
}{}
|
|
\IfStrEq{\docname}{invoice}{
|
|
% Rechnung
|
|
\newcommand{\doctype}{\TitleInv}
|
|
\newcommand{\MyDocdate}{\invdate}
|
|
\newcommand{\DocNoTitle}{\InvNumber}
|
|
\newcommand{\docnumber}{\invnumber}
|
|
% 2. Documentnummer
|
|
\ifthenelse{\equal{\ordnumber}{\leer}}{
|
|
% wenn keine Auftragsnummer -> Angebotsnummer
|
|
\newcommand{\SecNoTitle}{\QuotationNumber}
|
|
\newcommand{\secnumber}{\quonumber}
|
|
}{
|
|
\newcommand{\SecNoTitle}{\OrderNumber}
|
|
\newcommand{\secnumber}{\ordnumber}
|
|
}
|
|
}{}
|
|
\IfStrEq{\docname}{proforma}{
|
|
\newcommand{\doctype}{\TitleProforma}
|
|
\newcommand{\MyDocdate}{\invdate}
|
|
\newcommand{\DocNoTitle}{\InvNumber}
|
|
\newcommand{\docnumber}{\invnumber}
|
|
% 2. Documentnummer
|
|
\ifthenelse{\equal{\ordnumber}{\leer}}{
|
|
% wenn keine Auftragsnummer -> Angebotsnummer
|
|
\newcommand{\SecNoTitle}{\QuotationNumber}
|
|
\newcommand{\secnumber}{\quonumber}
|
|
}{
|
|
\newcommand{\SecNoTitle}{\OrderNumber}
|
|
\newcommand{\secnumber}{\ordnumber}
|
|
}
|
|
}{}
|
|
\IfStrEq{\docname}{purchase_order}{
|
|
\renewcommand{\PurchaseOrder}{1}
|
|
\newcommand{\doctype}{\TitlePurchaseOrder}
|
|
\newcommand{\MyDocdate}{\orddate}
|
|
\newcommand{\DocNoTitle}{\RequestOrderNumber}
|
|
\newcommand{\docnumber}{\ordnumber}
|
|
\renewcommand{\deliverydate}{\reqdate}
|
|
\renewcommand{\DelDate}{\ReqByTitle}
|
|
\renewcommand{\CustomerID}{\VendorID}
|
|
\renewcommand{\kundennummer}{\vendornumber}
|
|
\newcommand{\SecNoTitle}{}
|
|
\newcommand{\secnumber}{}
|
|
}{}
|
|
\IfStrEq{\docname}{credit_note}{
|
|
\newcommand{\doctype}{\TitleCreditNote}
|
|
\newcommand{\MyDocdate}{\invdate}
|
|
\newcommand{\DocNoTitle}{\CredNumber}
|
|
\newcommand{\docnumber}{\invnumber}
|
|
% keine 2. Documentnummer
|
|
\newcommand{\SecNoTitle}{}
|
|
\newcommand{\secnumber}{}
|
|
}{}
|
|
\IfStrEq{\docname}{sales_order}{
|
|
% Auftragsbestaetigung
|
|
\newcommand{\doctype}{\TitleSalesOrder}
|
|
\newcommand{\MyDocdate}{\orddate}
|
|
\renewcommand{\deliverydate}{\reqdate}
|
|
\newcommand{\DocNoTitle}{\OrderNumber}
|
|
\newcommand{\docnumber}{\ordnumber}
|
|
% 2. Documentnummer
|
|
\ifthenelse{\equal{\ordnumber}{\leer}}{
|
|
% wenn keine Angebotsnummer -> leer
|
|
\newcommand{\SecNoTitle}{}
|
|
\newcommand{\secnumber}{}
|
|
}{
|
|
\newcommand{\SecNoTitle}{\QuotationNumber}
|
|
\newcommand{\secnumber}{\quonumber}
|
|
}
|
|
}{ }
|
|
\IfStrEq{\docname}{sales_quotation}{
|
|
% Angebot
|
|
\newcommand{\doctype}{\TitleSalesQuotation}
|
|
\newcommand{\MyDocdate}{\quodate}
|
|
\renewcommand{\DelDate}{\ValidUntil}
|
|
\renewcommand{\deliverydate}{\reqdate}
|
|
\newcommand{\DocNoTitle}{\QuotationNumber}
|
|
\newcommand{\docnumber}{\quonumber}
|
|
% 2. Documentnummer
|
|
\newcommand{\SecNoTitle}{}
|
|
\newcommand{\secnumber}{}
|
|
}{ }
|
|
|
|
|
|
|
|
% ==== \paid auf 0.00 falls leer
|
|
\IfSubStr{\paid}{\DecimalSign}{}{\renewcommand{\paid}{0{\DecimalSign}00}}
|
|
|
|
|
|
|
|
\setkomavar{date}{}
|
|
|
|
|
|
\begin{letter}{{\ifthenelse{\isnamedefined{MyAdressfield}}{\MyAdressfield
|
|
}{\MyAdress
|
|
}}
|
|
}
|
|
\opening{}
|
|
|
|
%========Datum und Nummern====================================================
|
|
|
|
\newcommand{\DocId}{
|
|
\begin{tabular*}{\textwidth+1em }{@{\extracolsep{\fill}}llllr}
|
|
\MakeUppercase{\tiny \DocNoTitle} &
|
|
\MakeUppercase{\tiny \CustomerID} &
|
|
\MakeUppercase{\tiny \SecNoTitle } &
|
|
\MakeUppercase{\tiny \DelDate } &
|
|
\MakeUppercase{\tiny \Date}~\\
|
|
\mainfont\docnumber &
|
|
\mainfont\kundennummer &
|
|
\mainfont\secnumber &
|
|
\mainfont\deliverydate &
|
|
\mainfont\MyDocdate~\\
|
|
\end{tabular*} ~\\
|
|
}
|
|
|
|
\hspace{-0.5em} \DocId
|
|
|
|
|
|
|
|
|
|
\nexthead{
|
|
\ifthenelse{\bgPdfFirstPageOnly = 1 }{
|
|
\hspace{-4mm} \DocId
|
|
}{}
|
|
}
|
|
\vspace{ 5mm}
|
|
|
|
{\noindent\textbf\doctype}~\\
|
|
\IfEndWith{\paymenttype}{\paymentPrivatEnd}{\PriceInclTax }{ }
|
|
|
|
|
|
%======Die eigentliche-Tabelle========================================
|
|
|
|
% temporaere Datei mit Tabelle anlegen
|
|
\begin{filecontents}{<%template_meta.tmpfile NOESCAPE%>.table.tex}
|
|
\mainfont
|
|
\resetlaufsumme
|
|
|
|
|
|
|
|
\ifthenelse{\NoValue > 0 }
|
|
{ % Tabelle ohne Preisen
|
|
\ifthenelse{\Picklist = 1 }{
|
|
|
|
\begin{longtable}{@{}rlX@{ }rlrrrl@{}}
|
|
}{
|
|
\begin{longtable}{@{}rlX@{ }rlrr@{}}
|
|
|
|
}
|
|
% Kopfzeile der Tabelle
|
|
|
|
{\Pos} &
|
|
{\Number} &
|
|
{\ItemNo} &
|
|
{\Count} &
|
|
{\Unit} \hspace{2mm}
|
|
\ifthenelse{\Picklist = 1 }{& {\Take} & {\Storage} }{}
|
|
~\\
|
|
\midrule
|
|
\endfirsthead
|
|
|
|
% Tabellenkopf nach dem Umbruch
|
|
{\Pos} &
|
|
{\Number} &
|
|
{\ItemNo} &
|
|
{\Count} &
|
|
{\Unit} \hspace{2mm}
|
|
\ifthenelse{\Picklist = 1 }{& {\Take} & {\Storage} }{}
|
|
~\\
|
|
|
|
\midrule
|
|
\endhead
|
|
|
|
<%foreach number%>
|
|
<%runningnumber%> % Laufende Positionsnummer
|
|
&
|
|
<%number%> % Artikelnummer
|
|
&
|
|
<%description%> % Kurzbeschreibung des Artikels
|
|
\ifthenelse{\equal{<%longdescription%>}{\leer}}{}{ \newline <%longdescription%>}
|
|
% Ein zeilenweises Auslieferdatum, wenn es gesetzt bei der Position hinterlegt ist.
|
|
\ifthenelse{\equal{<%deliverydate_oe%>}{\leer}}{}{
|
|
\newline \DelDate:~<%deliverydate_oe%>}
|
|
&
|
|
<%qty NOFORMAT%> % Menge
|
|
&
|
|
<%unit%> % Einheit
|
|
%\ifthenelse{\Picklist = 1 }{& {x} & {x} }{}
|
|
%\ifthenelse{\Picklist = 1 }{& {x} & {x} \hhline{~~~~~--} }{~\\}
|
|
\ifthenelse{\Picklist = 1 }{& {\underline{;~~~~~~~~~}} & {\underline{;~~~~~~~~~}}~\\ }{~\\}
|
|
%~\\ %
|
|
<%end number%>
|
|
\end{longtable} % Ende der zentralen Tabelle
|
|
}{ % Tabelle mit Preisen
|
|
\begin{longtable}{@{}rlX@{ }rlrrr@{}}
|
|
% Kopfzeile der Tabelle
|
|
|
|
{\Pos} &
|
|
{\Number} &
|
|
{\ItemNo} &
|
|
{\Count} &
|
|
{\Unit} &
|
|
{\Fee} &
|
|
{\Dis} &
|
|
{\Total} \hspace{2mm} ~\\
|
|
\midrule
|
|
\endfirsthead
|
|
|
|
% Tabellenkopf nach dem Umbruch
|
|
{\Pos} &
|
|
{\Number} &
|
|
{\ItemNo} &
|
|
{\Count} &
|
|
{\Unit} &
|
|
{\Fee} &
|
|
{\Dis} &
|
|
{\Total} \hspace{2mm} ~\\
|
|
\midrule
|
|
\multicolumn{7}{r}{ \rule{0mm}{5mm} \TabCarry{:} \MarkZwsumPos}
|
|
\endhead
|
|
|
|
|
|
% Fuss der Teiltabellen
|
|
\multicolumn{7}{r}{ \rule{0mm}{5mm} \TabSubTotal{:} \MarkZwsumPos } ~\\
|
|
\endfoot
|
|
|
|
% Das Ende der Tabelle
|
|
\midrule
|
|
\multicolumn{7}{r}{ \rule{0mm}{5mm} \TabSubTotal{:} \MarkZwsumPos} ~\\
|
|
\endlastfoot
|
|
|
|
<%foreach number%>
|
|
<%runningnumber%> % Laufende Positionsnummer
|
|
&
|
|
<%number%> % Artikelnummer
|
|
&
|
|
<%description%> % Kurzbeschreibung des Artikels
|
|
\ifthenelse{\equal{<%longdescription%>}{\leer}}{}{ \newline <%longdescription%>}
|
|
% Ein zeilenweises Auslieferdatum, wenn es gesetzt ist.
|
|
\ifthenelse{\equal{<%reqdate%>}{\leer}}{}{
|
|
\newline \DelDate:~<%reqdate%>}
|
|
&
|
|
<%qty NOFORMAT%> % Menge
|
|
&
|
|
<%unit%> % Einheit
|
|
&
|
|
%\IfEndWith{\paymentterms}{_e}{EN}{\brutto{<%sellprice NOFORMAT%>}{<%qty NOFORMAT%>}{<%p_discount%>}}
|
|
\IfEndWith{\paymenttype}{\paymentPrivatEnd}{
|
|
\BruttoSellPrice{<%sellprice NOFORMAT%>}{<%tax_rate%>}
|
|
&
|
|
\ifthenelse{\equal{<%p_discount%>}{0}}{}{ -<%p_discount%>\%}
|
|
&
|
|
\BruttoWert{<%linetotal NOFORMAT%>}{<%tax_rate%>}
|
|
}{
|
|
\numprint{<%sellprice NOFORMAT%>}
|
|
&
|
|
\ifthenelse{\equal{<%p_discount%>}{0}}{}{ -<%p_discount%>\%}
|
|
&
|
|
\Wert{<%linetotal NOFORMAT%>} % Zeilensumme addieren
|
|
}
|
|
~\\ %
|
|
<%end number%>
|
|
\end{longtable} % Ende der zentralen Tabelle
|
|
}
|
|
\end{filecontents} % Ende der Hilfsdatei.
|
|
|
|
\LTXtable{\textwidth}{<%template_meta.tmpfile NOESCAPE%>.table.tex}
|
|
|
|
\rule{\textwidth}{0pt} % Ein (unsichtbarer) Strich quer ueber die Seite
|
|
\vspace{ 5mm}
|
|
\vspace{-2em plus 10em minus 2em}~\\
|
|
\ifthenelse{\NoValue > 0 }
|
|
{ % wenn keine Zahlen
|
|
}{ % Wenn Zahlen
|
|
\parbox{\textwidth}{
|
|
\mainfont
|
|
%
|
|
%
|
|
\setlength{\tabcolsep}{0.2em}
|
|
\ifthenelse{\equal{\paid}{0{\DecimalSign}00} }
|
|
{ % Wenn noch nichts gezahlt wurde
|
|
\IfSubStr{\invtotal}{\DecimalSign}{}{
|
|
\fpAdd{\invtotal}{0}{<%subtotal NOFORMAT%>}
|
|
<%foreach tax%>
|
|
\fpAdd{\invtotal}{\invtotal}{<%tax NOFORMAT%>}
|
|
<%end tax%>
|
|
}
|
|
\hfill
|
|
\begin{tabular}{@{}rrr@{}}
|
|
%{Summe vor Steuern:}& {\numprint{<%subtotal NOFORMAT%>}} & ~\\
|
|
|
|
% Die unterschiedlichen Steueranteile getrennt ausweisen
|
|
<%foreach tax%>
|
|
{ \IfEndWith{\paymenttype}{\paymentPrivatEnd}{\TaxInc }{ } <%taxdescription%>}
|
|
&
|
|
{\numprint{<%tax NOFORMAT%>}}& ~\\
|
|
<%end tax%>
|
|
\midrule[1pt]
|
|
{\Sum~ \currency:} & \textbf{\numprint{\invtotal}}
|
|
\end{tabular}
|
|
}
|
|
{ % Wenn bereits etwas gezahlt wurde
|
|
\hfill
|
|
\begin{tabular}{@{}rrr@{}}
|
|
|
|
{\EbT}& {\numprint{<%subtotal NOFORMAT%>}} & ~\\
|
|
|
|
% Die unterschiedlichen Steueranteile getrennt ausweisen
|
|
<%foreach tax%>
|
|
{<%taxdescription%>}
|
|
&
|
|
{\numprint{<%tax NOFORMAT%>}}& ~\\
|
|
<%end tax%>
|
|
|
|
\midrule % Ein dünner Strich
|
|
\Sum & \numprint{\invtotal} & ~\\
|
|
|
|
<%foreach payment%>
|
|
\AlreadyPayed~ {<%paymentdate%>}:& -{\numprint{<%payment%>}} & ~\\
|
|
<%end paymentdate%>
|
|
|
|
\midrule[2pt] % Ein etwas dickerer Strich
|
|
{\Left~ \currency:} & \numprint{\total}
|
|
\end{tabular}
|
|
}% ende ithenelse
|
|
|
|
} %Ende des Summenkasten
|
|
}
|
|
|
|
\vfill % Den Rest-Text soweit wie möglich nach unten schieben
|
|
\ifthenelse{\isempty{<%notes%>}}{}{
|
|
\mainfont
|
|
\noindent <%notes%> ~\\[2em]
|
|
}%
|
|
\small
|
|
\noindent \YourOrder
|
|
\ifthenelse{\Picklist = 0}{\noindent \ifthenelse{\equal{<%ustid%>}{\leer}}{}{\UstidTitle} \UstId}{}
|
|
\noindent \paymenthints % ist in translations.tex deffiniert
|
|
\ifthenelse{\PurchaseOrder = 0}{\noindent \paymentterms}{}
|
|
|
|
|
|
\end{letter}
|
|
\end{document}
|