Change from hourly price to daily price
I do not know where, but the following code is always billing price per hour and sometimes I get paid per day, not per hour, is there a way to change this?
Here is the link to the repository:
https://github.com/d-koppenhagen/latex-rechnung I'm using.
And does someone have a solution for, when I get paid for one day of work, but need to work extra hours and would like to bill them.
% koma_env.tex
documentclass[a4paper]{scrlttr2}
usepackage[top=2cm, bottom=1cm, left=2cm, right=2cm]{geometry}
usepackage{graphicx}
usepackage{lmodern}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[ngerman]{babel}
usepackage{color}
usepackage[hidelinks]{hyperref}
usepackage[german]{invoice}
renewcommand{familydefault}{sfdefault}
% include meta data
include{_data}
% ################## invoice DATA ##################
newcommand{invoiceDate}{today} % Datum der rechnungsstellung, change `today' to a different date, if you do not want to use todays date
newcommand{payDate}{DD.MM.YYYY} % Datum der Zahlungsfrist
newcommand{invoiceReference}{YYYYMMDD-1} % Rechnungsnummer (z.B. 20150122-4)
newcommand{invoiceSalutation}{} % die Anrede
newcommand{invoiceText}{Folgende Positionen werden in Rechnung gestellt:} % Rechnungstext
newcommand{invoiceEnclosures}{} % encl{} einfügen
newcommand{invoiceClosing}{Mit freundlichen Grüßen}
% ################## invoice DATA ##################
% ################## Customer DATA ##################
newcommand{customerCompany}{Firma XYZ} %ggf. Firma
newcommand{customerName}{Max Mustermann} % Name
newcommand{customerStreet}{Robert-Koch-Str. 12} % Straße
newcommand{customerZIP}{12345} % Postleitzahl
newcommand{customerCity}{Musterstadt} % Ort
% ################## Customer DATA ##################
setkomavar{fromname}{senderName}
setkomavar{fromaddress}{senderStreet \ senderZIP senderCity}
setkomavar{place}{senderCity}
setkomavar{date}{invoiceDate}
setkomavar{fromphone}{senderTelephone}
setkomavar{frommobilephone}{senderMobilephone}
setkomavar{fromemail}{href{mailto:senderEmail}{nolinkurl{senderEmail}}}
setkomavar{subject}{Rechnung}
setkomavar{location}{
\[baselineskip] \[baselineskip]
flushright small {vspace{1cm}Rechnungsnummer:
invoiceReference}
}
setkomavar{firsthead}{hfill
parbox[t][headheight][t]{7.2cm}{% <================================== 6cm
footnotesize
raggedright
flushright
color[gray]{.3}%
begin{tabular}{rl}
Anschrift & usekomavar{fromname}\
& senderStreet\
& senderZIP senderCity \
\
%Telefon Telefon: ` senderTelephone \
Mobil & usekomavar{frommobilephone} \
E-Mail & usekomavar{fromemail} \
Webseite & {normalfontttfamily senderWeb } \
\
Steuernummer & taxID \
\
Institut & accountBankName \
IBAN & accountIBAN \
BIC & accountBIC
end{tabular}
}%
}
begin{document}
begin{letter}{customerCompany \ customerName \
customerStreet \ customerZIP customerCity}
includegraphics[width=0.15textwidth]{logo.png}
opening{invoiceSalutation}
invoiceText
begin{invoice}{Euro}{0}
ProjectTitle{Projekttitel} % <=========================================
Fee{Musterdienstleistung 1}{30.00}{4}
Fee{Musterdienstleistung 2}{36.00}{7}
% Auslagen
%EBCi{Hotel, 12 Nächte} {2400.00}
%STExpenses
% Rabatt
Discount{Rabatt} {20} % <==============================================
end{invoice}
ps Im ausgewiesenen Betrag ist gemäß § 19 UStG keine Umsatzsteuer
enthalten.
closing{invoiceClosing}
invoiceEnclosures
end{letter}
end{document}
invoice
New contributor
add a comment |
I do not know where, but the following code is always billing price per hour and sometimes I get paid per day, not per hour, is there a way to change this?
Here is the link to the repository:
https://github.com/d-koppenhagen/latex-rechnung I'm using.
And does someone have a solution for, when I get paid for one day of work, but need to work extra hours and would like to bill them.
% koma_env.tex
documentclass[a4paper]{scrlttr2}
usepackage[top=2cm, bottom=1cm, left=2cm, right=2cm]{geometry}
usepackage{graphicx}
usepackage{lmodern}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[ngerman]{babel}
usepackage{color}
usepackage[hidelinks]{hyperref}
usepackage[german]{invoice}
renewcommand{familydefault}{sfdefault}
% include meta data
include{_data}
% ################## invoice DATA ##################
newcommand{invoiceDate}{today} % Datum der rechnungsstellung, change `today' to a different date, if you do not want to use todays date
newcommand{payDate}{DD.MM.YYYY} % Datum der Zahlungsfrist
newcommand{invoiceReference}{YYYYMMDD-1} % Rechnungsnummer (z.B. 20150122-4)
newcommand{invoiceSalutation}{} % die Anrede
newcommand{invoiceText}{Folgende Positionen werden in Rechnung gestellt:} % Rechnungstext
newcommand{invoiceEnclosures}{} % encl{} einfügen
newcommand{invoiceClosing}{Mit freundlichen Grüßen}
% ################## invoice DATA ##################
% ################## Customer DATA ##################
newcommand{customerCompany}{Firma XYZ} %ggf. Firma
newcommand{customerName}{Max Mustermann} % Name
newcommand{customerStreet}{Robert-Koch-Str. 12} % Straße
newcommand{customerZIP}{12345} % Postleitzahl
newcommand{customerCity}{Musterstadt} % Ort
% ################## Customer DATA ##################
setkomavar{fromname}{senderName}
setkomavar{fromaddress}{senderStreet \ senderZIP senderCity}
setkomavar{place}{senderCity}
setkomavar{date}{invoiceDate}
setkomavar{fromphone}{senderTelephone}
setkomavar{frommobilephone}{senderMobilephone}
setkomavar{fromemail}{href{mailto:senderEmail}{nolinkurl{senderEmail}}}
setkomavar{subject}{Rechnung}
setkomavar{location}{
\[baselineskip] \[baselineskip]
flushright small {vspace{1cm}Rechnungsnummer:
invoiceReference}
}
setkomavar{firsthead}{hfill
parbox[t][headheight][t]{7.2cm}{% <================================== 6cm
footnotesize
raggedright
flushright
color[gray]{.3}%
begin{tabular}{rl}
Anschrift & usekomavar{fromname}\
& senderStreet\
& senderZIP senderCity \
\
%Telefon Telefon: ` senderTelephone \
Mobil & usekomavar{frommobilephone} \
E-Mail & usekomavar{fromemail} \
Webseite & {normalfontttfamily senderWeb } \
\
Steuernummer & taxID \
\
Institut & accountBankName \
IBAN & accountIBAN \
BIC & accountBIC
end{tabular}
}%
}
begin{document}
begin{letter}{customerCompany \ customerName \
customerStreet \ customerZIP customerCity}
includegraphics[width=0.15textwidth]{logo.png}
opening{invoiceSalutation}
invoiceText
begin{invoice}{Euro}{0}
ProjectTitle{Projekttitel} % <=========================================
Fee{Musterdienstleistung 1}{30.00}{4}
Fee{Musterdienstleistung 2}{36.00}{7}
% Auslagen
%EBCi{Hotel, 12 Nächte} {2400.00}
%STExpenses
% Rabatt
Discount{Rabatt} {20} % <==============================================
end{invoice}
ps Im ausgewiesenen Betrag ist gemäß § 19 UStG keine Umsatzsteuer
enthalten.
closing{invoiceClosing}
invoiceEnclosures
end{letter}
end{document}
invoice
New contributor
add a comment |
I do not know where, but the following code is always billing price per hour and sometimes I get paid per day, not per hour, is there a way to change this?
Here is the link to the repository:
https://github.com/d-koppenhagen/latex-rechnung I'm using.
And does someone have a solution for, when I get paid for one day of work, but need to work extra hours and would like to bill them.
% koma_env.tex
documentclass[a4paper]{scrlttr2}
usepackage[top=2cm, bottom=1cm, left=2cm, right=2cm]{geometry}
usepackage{graphicx}
usepackage{lmodern}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[ngerman]{babel}
usepackage{color}
usepackage[hidelinks]{hyperref}
usepackage[german]{invoice}
renewcommand{familydefault}{sfdefault}
% include meta data
include{_data}
% ################## invoice DATA ##################
newcommand{invoiceDate}{today} % Datum der rechnungsstellung, change `today' to a different date, if you do not want to use todays date
newcommand{payDate}{DD.MM.YYYY} % Datum der Zahlungsfrist
newcommand{invoiceReference}{YYYYMMDD-1} % Rechnungsnummer (z.B. 20150122-4)
newcommand{invoiceSalutation}{} % die Anrede
newcommand{invoiceText}{Folgende Positionen werden in Rechnung gestellt:} % Rechnungstext
newcommand{invoiceEnclosures}{} % encl{} einfügen
newcommand{invoiceClosing}{Mit freundlichen Grüßen}
% ################## invoice DATA ##################
% ################## Customer DATA ##################
newcommand{customerCompany}{Firma XYZ} %ggf. Firma
newcommand{customerName}{Max Mustermann} % Name
newcommand{customerStreet}{Robert-Koch-Str. 12} % Straße
newcommand{customerZIP}{12345} % Postleitzahl
newcommand{customerCity}{Musterstadt} % Ort
% ################## Customer DATA ##################
setkomavar{fromname}{senderName}
setkomavar{fromaddress}{senderStreet \ senderZIP senderCity}
setkomavar{place}{senderCity}
setkomavar{date}{invoiceDate}
setkomavar{fromphone}{senderTelephone}
setkomavar{frommobilephone}{senderMobilephone}
setkomavar{fromemail}{href{mailto:senderEmail}{nolinkurl{senderEmail}}}
setkomavar{subject}{Rechnung}
setkomavar{location}{
\[baselineskip] \[baselineskip]
flushright small {vspace{1cm}Rechnungsnummer:
invoiceReference}
}
setkomavar{firsthead}{hfill
parbox[t][headheight][t]{7.2cm}{% <================================== 6cm
footnotesize
raggedright
flushright
color[gray]{.3}%
begin{tabular}{rl}
Anschrift & usekomavar{fromname}\
& senderStreet\
& senderZIP senderCity \
\
%Telefon Telefon: ` senderTelephone \
Mobil & usekomavar{frommobilephone} \
E-Mail & usekomavar{fromemail} \
Webseite & {normalfontttfamily senderWeb } \
\
Steuernummer & taxID \
\
Institut & accountBankName \
IBAN & accountIBAN \
BIC & accountBIC
end{tabular}
}%
}
begin{document}
begin{letter}{customerCompany \ customerName \
customerStreet \ customerZIP customerCity}
includegraphics[width=0.15textwidth]{logo.png}
opening{invoiceSalutation}
invoiceText
begin{invoice}{Euro}{0}
ProjectTitle{Projekttitel} % <=========================================
Fee{Musterdienstleistung 1}{30.00}{4}
Fee{Musterdienstleistung 2}{36.00}{7}
% Auslagen
%EBCi{Hotel, 12 Nächte} {2400.00}
%STExpenses
% Rabatt
Discount{Rabatt} {20} % <==============================================
end{invoice}
ps Im ausgewiesenen Betrag ist gemäß § 19 UStG keine Umsatzsteuer
enthalten.
closing{invoiceClosing}
invoiceEnclosures
end{letter}
end{document}
invoice
New contributor
I do not know where, but the following code is always billing price per hour and sometimes I get paid per day, not per hour, is there a way to change this?
Here is the link to the repository:
https://github.com/d-koppenhagen/latex-rechnung I'm using.
And does someone have a solution for, when I get paid for one day of work, but need to work extra hours and would like to bill them.
% koma_env.tex
documentclass[a4paper]{scrlttr2}
usepackage[top=2cm, bottom=1cm, left=2cm, right=2cm]{geometry}
usepackage{graphicx}
usepackage{lmodern}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[ngerman]{babel}
usepackage{color}
usepackage[hidelinks]{hyperref}
usepackage[german]{invoice}
renewcommand{familydefault}{sfdefault}
% include meta data
include{_data}
% ################## invoice DATA ##################
newcommand{invoiceDate}{today} % Datum der rechnungsstellung, change `today' to a different date, if you do not want to use todays date
newcommand{payDate}{DD.MM.YYYY} % Datum der Zahlungsfrist
newcommand{invoiceReference}{YYYYMMDD-1} % Rechnungsnummer (z.B. 20150122-4)
newcommand{invoiceSalutation}{} % die Anrede
newcommand{invoiceText}{Folgende Positionen werden in Rechnung gestellt:} % Rechnungstext
newcommand{invoiceEnclosures}{} % encl{} einfügen
newcommand{invoiceClosing}{Mit freundlichen Grüßen}
% ################## invoice DATA ##################
% ################## Customer DATA ##################
newcommand{customerCompany}{Firma XYZ} %ggf. Firma
newcommand{customerName}{Max Mustermann} % Name
newcommand{customerStreet}{Robert-Koch-Str. 12} % Straße
newcommand{customerZIP}{12345} % Postleitzahl
newcommand{customerCity}{Musterstadt} % Ort
% ################## Customer DATA ##################
setkomavar{fromname}{senderName}
setkomavar{fromaddress}{senderStreet \ senderZIP senderCity}
setkomavar{place}{senderCity}
setkomavar{date}{invoiceDate}
setkomavar{fromphone}{senderTelephone}
setkomavar{frommobilephone}{senderMobilephone}
setkomavar{fromemail}{href{mailto:senderEmail}{nolinkurl{senderEmail}}}
setkomavar{subject}{Rechnung}
setkomavar{location}{
\[baselineskip] \[baselineskip]
flushright small {vspace{1cm}Rechnungsnummer:
invoiceReference}
}
setkomavar{firsthead}{hfill
parbox[t][headheight][t]{7.2cm}{% <================================== 6cm
footnotesize
raggedright
flushright
color[gray]{.3}%
begin{tabular}{rl}
Anschrift & usekomavar{fromname}\
& senderStreet\
& senderZIP senderCity \
\
%Telefon Telefon: ` senderTelephone \
Mobil & usekomavar{frommobilephone} \
E-Mail & usekomavar{fromemail} \
Webseite & {normalfontttfamily senderWeb } \
\
Steuernummer & taxID \
\
Institut & accountBankName \
IBAN & accountIBAN \
BIC & accountBIC
end{tabular}
}%
}
begin{document}
begin{letter}{customerCompany \ customerName \
customerStreet \ customerZIP customerCity}
includegraphics[width=0.15textwidth]{logo.png}
opening{invoiceSalutation}
invoiceText
begin{invoice}{Euro}{0}
ProjectTitle{Projekttitel} % <=========================================
Fee{Musterdienstleistung 1}{30.00}{4}
Fee{Musterdienstleistung 2}{36.00}{7}
% Auslagen
%EBCi{Hotel, 12 Nächte} {2400.00}
%STExpenses
% Rabatt
Discount{Rabatt} {20} % <==============================================
end{invoice}
ps Im ausgewiesenen Betrag ist gemäß § 19 UStG keine Umsatzsteuer
enthalten.
closing{invoiceClosing}
invoiceEnclosures
end{letter}
end{document}
invoice
invoice
New contributor
New contributor
edited yesterday
Kurt
36.4k847162
36.4k847162
New contributor
asked yesterday
Lala_GhostLala_Ghost
473
473
New contributor
New contributor
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Well you need to expand the style invoice
in the preamble of your document with the following code:
makeatletter
defUnitDay {Preis/Tag}% <========================================
newcommand{FeeDay@Title}{% <==========================================
\
noindenttextbf{Activity}&&UnitDay&Count&Amount (BC)\
hline%
}%
newcommand{FeeDay}[3]{% Yields state 3, Print Fee Item <==============
%
% #1 Contents
% #2 Fee per Day
% #3 Unit Count
%
ifcaseFlag % 0: Invoice not started yet
error@message{MissingOpening}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 1: Start invoice
%
error@message{MissingProject}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 2: Start project, print title
%
FeeDay@Title%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 3: Print remuneration item
%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 4: Print subtotal remuneration
%
warning@message{FeeSTExists}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 5: Expense item
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 6: Print subtotal expenses
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 7: Print subtotal project
%
error@message{ProjectCompletedNoFee}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 8: Print total, close invoice
%
error@message{InvoiceCompletedNoFee}%
%
%
else error@message{InternalError}%
fi%
}%
makeatother
Please see that you have to define new commnands defUnitDay
(I did only for german!), FeeDay@Title
to print the heading with "Preis/Tag" and FeeDay
to print one calculation for one work done at x days.
So you can use this commands in this way:
ProjectTitle{Tagesleistungen} % <=========================================
FeeDay{Musterdienstleistung 3}{360.00}{3}
In the following MWE I keept the old invoice and added the new commands and code I showed above:
documentclass[a4paper]{scrlttr2}
usepackage[top=2cm, bottom=1cm, left=2cm, right=2cm]{geometry}
usepackage{graphicx}
usepackage{lmodern}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[ngerman]{babel}
usepackage{color}
usepackage[hidelinks]{hyperref}
usepackage[german]{invoice}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
makeatletter
defUnitDay {Preis/Tag}% <========================================
newcommand{FeeDay@Title}{% <==========================================
\
noindenttextbf{Activity}&&UnitDay&Count&Amount (BC)\
hline%
}%
newcommand{FeeDay}[3]{% Yields state 3, Print Fee Item <==============
%
% #1 Contents
% #2 Fee per Day
% #3 Unit Count
%
ifcaseFlag % 0: Invoice not started yet
error@message{MissingOpening}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 1: Start invoice
%
error@message{MissingProject}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 2: Start project, print title
%
FeeDay@Title%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 3: Print remuneration item
%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 4: Print subtotal remuneration
%
warning@message{FeeSTExists}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 5: Expense item
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 6: Print subtotal expenses
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 7: Print subtotal project
%
error@message{ProjectCompletedNoFee}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 8: Print total, close invoice
%
error@message{InvoiceCompletedNoFee}%
%
%
else error@message{InternalError}%
fi%
}%
makeatother
renewcommand{familydefault}{sfdefault}
% include meta data
include{_data} % <============== delete in this file the following data!
% ################## invoice DATA ##################
newcommand{invoiceDate}{DD.MM.YYYY} % Datum der rechnungsstellung
newcommand{payDate}{DD.MM.YYYY} % Datum der Zahlungsfrist
newcommand{invoiceReference}{YYYYMMDD-1} % Rechnungsnummer (z.B. 20150122-4)
newcommand{invoiceSalutation}{Sehr geehrte Damen und Herren,} % die Anrede
newcommand{invoiceText}{Für die von mir erbrachte Leistung erhalten sie
hiermit die Rechnung. Bitte zahlen Sie den unten aufgeführten Gesamtbetrag
unter Angabe der Rechnungsnummer (invoiceReference) bis
zum payDate auf das angegebene Konto ein.} % Rechnungstext
newcommand{invoiceEnclosures}{} % encl{} einfügen
newcommand{invoiceClosing}{Mit freundlichen Grüßen}
% ################## invoice DATA ##################
% ################## Customer DATA ##################
newcommand{customerCompany}{Firma XYZ} %ggf. Firma
newcommand{customerName}{Max Mustermann} % Name
newcommand{customerStreet}{Robert-Koch-Str. 12} % Straße
newcommand{customerZIP}{12345} % Postleitzahl
newcommand{customerCity}{Musterstadt} % Ort
% ################## Customer DATA ##################
setkomavar{fromname}{senderName}
setkomavar{fromaddress}{senderStreet \ senderZIP senderCity}
setkomavar{place}{senderCity}
setkomavar{date}{invoiceDate}
setkomavar{fromphone}{senderTelephone}
setkomavar{frommobilephone}{senderMobilephone}
setkomavar{fromemail}{href{mailto:senderEmail}{nolinkurl{senderEmail}}}
setkomavar{subject}{Rechnung}
setkomavar{location}{
\[baselineskip] \[baselineskip]
flushright small {vspace{1cm}Rechnungsnummer:
invoiceReference}
}
setkomavar{firsthead}{hfill
parbox[t][headheight][t]{7cm}{% <================================== 6cm
footnotesize
raggedright
flushright
color[gray]{.3}%
begin{tabular}{rl}
Anschrift & usekomavar{fromname}\
& senderStreet\
& senderZIP senderCity \
\
%Telefon Telefon: ` senderTelephone \
Mobil & usekomavar{frommobilephone} \
E-Mail & usekomavar{fromemail} \
Webseite & {normalfontttfamily senderWeb } \
\
Steuernummer & taxID \
\
Institut & accountBankName \
IBAN & accountIBAN \
BIC & accountBIC
end{tabular}
}%
}
begin{document}
begin{letter}{customerCompany \ customerName \
customerStreet \ customerZIP customerCity}
includegraphics[width=0.15textwidth]{logo.png}
opening{invoiceSalutation}
invoiceText
begin{invoice}{Euro}{0}
ProjectTitle{Projekttitel} % <=========================================
Fee{Musterdienstleistung 1}{30.00}{4}
Fee{Musterdienstleistung 2}{36.00}{7}
ProjectTitle{Tagesleistungen} % <=========================================
FeeDay{Musterdienstleistung 3}{360.00}{3}
% Auslagen
%EBC{Hotel, 12 Nächte} {2400.00} % EBCi{Hotel, 12 Nächte} {2400.00}
%STExpenses
% Rabatt
Discount{Rabatt} {20} % <==============================================
end{invoice}
ps Im ausgewiesenen Betrag ist gemäß § 19 UStG keine Umsatzsteuer
enthalten.
closing{invoiceClosing}
invoiceEnclosures
end{letter}
end{document}
with the result:
A good answer addressing the original questions. However I note the rebate is applied as simple fixed discount of -20.00 Whereas I would normally in this type of case expect it to alternately be available as say 5% is there an(other) variable (did I miss one) that can be addressed to expand that functionality ?
– KJO
yesterday
@KJO You need to add it to the style file or your preamble by your own.
– Kurt
yesterday
@kurt not wishing to cloud comments too much, but as I am not good at embedding maths asking is it possible to replace fixed field {20} with something like {$subtotal X 5%$}
– KJO
yesterday
@KJO I looked a little bit on the code. You can for example define a new commandDiscountPercent
that should do what you want. At last it depends on how the discount has to be calculated, with or without VAT etc.
– Kurt
yesterday
Thanks Kurt (I build my own invoices in word and let it do the calcs :-) it was mainly that other users looking at your answer may want to apply percent "off"(er) before VAT
– KJO
yesterday
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "85"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Lala_Ghost is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f472083%2fchange-from-hourly-price-to-daily-price%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Well you need to expand the style invoice
in the preamble of your document with the following code:
makeatletter
defUnitDay {Preis/Tag}% <========================================
newcommand{FeeDay@Title}{% <==========================================
\
noindenttextbf{Activity}&&UnitDay&Count&Amount (BC)\
hline%
}%
newcommand{FeeDay}[3]{% Yields state 3, Print Fee Item <==============
%
% #1 Contents
% #2 Fee per Day
% #3 Unit Count
%
ifcaseFlag % 0: Invoice not started yet
error@message{MissingOpening}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 1: Start invoice
%
error@message{MissingProject}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 2: Start project, print title
%
FeeDay@Title%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 3: Print remuneration item
%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 4: Print subtotal remuneration
%
warning@message{FeeSTExists}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 5: Expense item
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 6: Print subtotal expenses
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 7: Print subtotal project
%
error@message{ProjectCompletedNoFee}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 8: Print total, close invoice
%
error@message{InvoiceCompletedNoFee}%
%
%
else error@message{InternalError}%
fi%
}%
makeatother
Please see that you have to define new commnands defUnitDay
(I did only for german!), FeeDay@Title
to print the heading with "Preis/Tag" and FeeDay
to print one calculation for one work done at x days.
So you can use this commands in this way:
ProjectTitle{Tagesleistungen} % <=========================================
FeeDay{Musterdienstleistung 3}{360.00}{3}
In the following MWE I keept the old invoice and added the new commands and code I showed above:
documentclass[a4paper]{scrlttr2}
usepackage[top=2cm, bottom=1cm, left=2cm, right=2cm]{geometry}
usepackage{graphicx}
usepackage{lmodern}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[ngerman]{babel}
usepackage{color}
usepackage[hidelinks]{hyperref}
usepackage[german]{invoice}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
makeatletter
defUnitDay {Preis/Tag}% <========================================
newcommand{FeeDay@Title}{% <==========================================
\
noindenttextbf{Activity}&&UnitDay&Count&Amount (BC)\
hline%
}%
newcommand{FeeDay}[3]{% Yields state 3, Print Fee Item <==============
%
% #1 Contents
% #2 Fee per Day
% #3 Unit Count
%
ifcaseFlag % 0: Invoice not started yet
error@message{MissingOpening}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 1: Start invoice
%
error@message{MissingProject}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 2: Start project, print title
%
FeeDay@Title%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 3: Print remuneration item
%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 4: Print subtotal remuneration
%
warning@message{FeeSTExists}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 5: Expense item
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 6: Print subtotal expenses
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 7: Print subtotal project
%
error@message{ProjectCompletedNoFee}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 8: Print total, close invoice
%
error@message{InvoiceCompletedNoFee}%
%
%
else error@message{InternalError}%
fi%
}%
makeatother
renewcommand{familydefault}{sfdefault}
% include meta data
include{_data} % <============== delete in this file the following data!
% ################## invoice DATA ##################
newcommand{invoiceDate}{DD.MM.YYYY} % Datum der rechnungsstellung
newcommand{payDate}{DD.MM.YYYY} % Datum der Zahlungsfrist
newcommand{invoiceReference}{YYYYMMDD-1} % Rechnungsnummer (z.B. 20150122-4)
newcommand{invoiceSalutation}{Sehr geehrte Damen und Herren,} % die Anrede
newcommand{invoiceText}{Für die von mir erbrachte Leistung erhalten sie
hiermit die Rechnung. Bitte zahlen Sie den unten aufgeführten Gesamtbetrag
unter Angabe der Rechnungsnummer (invoiceReference) bis
zum payDate auf das angegebene Konto ein.} % Rechnungstext
newcommand{invoiceEnclosures}{} % encl{} einfügen
newcommand{invoiceClosing}{Mit freundlichen Grüßen}
% ################## invoice DATA ##################
% ################## Customer DATA ##################
newcommand{customerCompany}{Firma XYZ} %ggf. Firma
newcommand{customerName}{Max Mustermann} % Name
newcommand{customerStreet}{Robert-Koch-Str. 12} % Straße
newcommand{customerZIP}{12345} % Postleitzahl
newcommand{customerCity}{Musterstadt} % Ort
% ################## Customer DATA ##################
setkomavar{fromname}{senderName}
setkomavar{fromaddress}{senderStreet \ senderZIP senderCity}
setkomavar{place}{senderCity}
setkomavar{date}{invoiceDate}
setkomavar{fromphone}{senderTelephone}
setkomavar{frommobilephone}{senderMobilephone}
setkomavar{fromemail}{href{mailto:senderEmail}{nolinkurl{senderEmail}}}
setkomavar{subject}{Rechnung}
setkomavar{location}{
\[baselineskip] \[baselineskip]
flushright small {vspace{1cm}Rechnungsnummer:
invoiceReference}
}
setkomavar{firsthead}{hfill
parbox[t][headheight][t]{7cm}{% <================================== 6cm
footnotesize
raggedright
flushright
color[gray]{.3}%
begin{tabular}{rl}
Anschrift & usekomavar{fromname}\
& senderStreet\
& senderZIP senderCity \
\
%Telefon Telefon: ` senderTelephone \
Mobil & usekomavar{frommobilephone} \
E-Mail & usekomavar{fromemail} \
Webseite & {normalfontttfamily senderWeb } \
\
Steuernummer & taxID \
\
Institut & accountBankName \
IBAN & accountIBAN \
BIC & accountBIC
end{tabular}
}%
}
begin{document}
begin{letter}{customerCompany \ customerName \
customerStreet \ customerZIP customerCity}
includegraphics[width=0.15textwidth]{logo.png}
opening{invoiceSalutation}
invoiceText
begin{invoice}{Euro}{0}
ProjectTitle{Projekttitel} % <=========================================
Fee{Musterdienstleistung 1}{30.00}{4}
Fee{Musterdienstleistung 2}{36.00}{7}
ProjectTitle{Tagesleistungen} % <=========================================
FeeDay{Musterdienstleistung 3}{360.00}{3}
% Auslagen
%EBC{Hotel, 12 Nächte} {2400.00} % EBCi{Hotel, 12 Nächte} {2400.00}
%STExpenses
% Rabatt
Discount{Rabatt} {20} % <==============================================
end{invoice}
ps Im ausgewiesenen Betrag ist gemäß § 19 UStG keine Umsatzsteuer
enthalten.
closing{invoiceClosing}
invoiceEnclosures
end{letter}
end{document}
with the result:
A good answer addressing the original questions. However I note the rebate is applied as simple fixed discount of -20.00 Whereas I would normally in this type of case expect it to alternately be available as say 5% is there an(other) variable (did I miss one) that can be addressed to expand that functionality ?
– KJO
yesterday
@KJO You need to add it to the style file or your preamble by your own.
– Kurt
yesterday
@kurt not wishing to cloud comments too much, but as I am not good at embedding maths asking is it possible to replace fixed field {20} with something like {$subtotal X 5%$}
– KJO
yesterday
@KJO I looked a little bit on the code. You can for example define a new commandDiscountPercent
that should do what you want. At last it depends on how the discount has to be calculated, with or without VAT etc.
– Kurt
yesterday
Thanks Kurt (I build my own invoices in word and let it do the calcs :-) it was mainly that other users looking at your answer may want to apply percent "off"(er) before VAT
– KJO
yesterday
add a comment |
Well you need to expand the style invoice
in the preamble of your document with the following code:
makeatletter
defUnitDay {Preis/Tag}% <========================================
newcommand{FeeDay@Title}{% <==========================================
\
noindenttextbf{Activity}&&UnitDay&Count&Amount (BC)\
hline%
}%
newcommand{FeeDay}[3]{% Yields state 3, Print Fee Item <==============
%
% #1 Contents
% #2 Fee per Day
% #3 Unit Count
%
ifcaseFlag % 0: Invoice not started yet
error@message{MissingOpening}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 1: Start invoice
%
error@message{MissingProject}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 2: Start project, print title
%
FeeDay@Title%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 3: Print remuneration item
%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 4: Print subtotal remuneration
%
warning@message{FeeSTExists}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 5: Expense item
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 6: Print subtotal expenses
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 7: Print subtotal project
%
error@message{ProjectCompletedNoFee}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 8: Print total, close invoice
%
error@message{InvoiceCompletedNoFee}%
%
%
else error@message{InternalError}%
fi%
}%
makeatother
Please see that you have to define new commnands defUnitDay
(I did only for german!), FeeDay@Title
to print the heading with "Preis/Tag" and FeeDay
to print one calculation for one work done at x days.
So you can use this commands in this way:
ProjectTitle{Tagesleistungen} % <=========================================
FeeDay{Musterdienstleistung 3}{360.00}{3}
In the following MWE I keept the old invoice and added the new commands and code I showed above:
documentclass[a4paper]{scrlttr2}
usepackage[top=2cm, bottom=1cm, left=2cm, right=2cm]{geometry}
usepackage{graphicx}
usepackage{lmodern}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[ngerman]{babel}
usepackage{color}
usepackage[hidelinks]{hyperref}
usepackage[german]{invoice}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
makeatletter
defUnitDay {Preis/Tag}% <========================================
newcommand{FeeDay@Title}{% <==========================================
\
noindenttextbf{Activity}&&UnitDay&Count&Amount (BC)\
hline%
}%
newcommand{FeeDay}[3]{% Yields state 3, Print Fee Item <==============
%
% #1 Contents
% #2 Fee per Day
% #3 Unit Count
%
ifcaseFlag % 0: Invoice not started yet
error@message{MissingOpening}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 1: Start invoice
%
error@message{MissingProject}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 2: Start project, print title
%
FeeDay@Title%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 3: Print remuneration item
%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 4: Print subtotal remuneration
%
warning@message{FeeSTExists}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 5: Expense item
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 6: Print subtotal expenses
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 7: Print subtotal project
%
error@message{ProjectCompletedNoFee}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 8: Print total, close invoice
%
error@message{InvoiceCompletedNoFee}%
%
%
else error@message{InternalError}%
fi%
}%
makeatother
renewcommand{familydefault}{sfdefault}
% include meta data
include{_data} % <============== delete in this file the following data!
% ################## invoice DATA ##################
newcommand{invoiceDate}{DD.MM.YYYY} % Datum der rechnungsstellung
newcommand{payDate}{DD.MM.YYYY} % Datum der Zahlungsfrist
newcommand{invoiceReference}{YYYYMMDD-1} % Rechnungsnummer (z.B. 20150122-4)
newcommand{invoiceSalutation}{Sehr geehrte Damen und Herren,} % die Anrede
newcommand{invoiceText}{Für die von mir erbrachte Leistung erhalten sie
hiermit die Rechnung. Bitte zahlen Sie den unten aufgeführten Gesamtbetrag
unter Angabe der Rechnungsnummer (invoiceReference) bis
zum payDate auf das angegebene Konto ein.} % Rechnungstext
newcommand{invoiceEnclosures}{} % encl{} einfügen
newcommand{invoiceClosing}{Mit freundlichen Grüßen}
% ################## invoice DATA ##################
% ################## Customer DATA ##################
newcommand{customerCompany}{Firma XYZ} %ggf. Firma
newcommand{customerName}{Max Mustermann} % Name
newcommand{customerStreet}{Robert-Koch-Str. 12} % Straße
newcommand{customerZIP}{12345} % Postleitzahl
newcommand{customerCity}{Musterstadt} % Ort
% ################## Customer DATA ##################
setkomavar{fromname}{senderName}
setkomavar{fromaddress}{senderStreet \ senderZIP senderCity}
setkomavar{place}{senderCity}
setkomavar{date}{invoiceDate}
setkomavar{fromphone}{senderTelephone}
setkomavar{frommobilephone}{senderMobilephone}
setkomavar{fromemail}{href{mailto:senderEmail}{nolinkurl{senderEmail}}}
setkomavar{subject}{Rechnung}
setkomavar{location}{
\[baselineskip] \[baselineskip]
flushright small {vspace{1cm}Rechnungsnummer:
invoiceReference}
}
setkomavar{firsthead}{hfill
parbox[t][headheight][t]{7cm}{% <================================== 6cm
footnotesize
raggedright
flushright
color[gray]{.3}%
begin{tabular}{rl}
Anschrift & usekomavar{fromname}\
& senderStreet\
& senderZIP senderCity \
\
%Telefon Telefon: ` senderTelephone \
Mobil & usekomavar{frommobilephone} \
E-Mail & usekomavar{fromemail} \
Webseite & {normalfontttfamily senderWeb } \
\
Steuernummer & taxID \
\
Institut & accountBankName \
IBAN & accountIBAN \
BIC & accountBIC
end{tabular}
}%
}
begin{document}
begin{letter}{customerCompany \ customerName \
customerStreet \ customerZIP customerCity}
includegraphics[width=0.15textwidth]{logo.png}
opening{invoiceSalutation}
invoiceText
begin{invoice}{Euro}{0}
ProjectTitle{Projekttitel} % <=========================================
Fee{Musterdienstleistung 1}{30.00}{4}
Fee{Musterdienstleistung 2}{36.00}{7}
ProjectTitle{Tagesleistungen} % <=========================================
FeeDay{Musterdienstleistung 3}{360.00}{3}
% Auslagen
%EBC{Hotel, 12 Nächte} {2400.00} % EBCi{Hotel, 12 Nächte} {2400.00}
%STExpenses
% Rabatt
Discount{Rabatt} {20} % <==============================================
end{invoice}
ps Im ausgewiesenen Betrag ist gemäß § 19 UStG keine Umsatzsteuer
enthalten.
closing{invoiceClosing}
invoiceEnclosures
end{letter}
end{document}
with the result:
A good answer addressing the original questions. However I note the rebate is applied as simple fixed discount of -20.00 Whereas I would normally in this type of case expect it to alternately be available as say 5% is there an(other) variable (did I miss one) that can be addressed to expand that functionality ?
– KJO
yesterday
@KJO You need to add it to the style file or your preamble by your own.
– Kurt
yesterday
@kurt not wishing to cloud comments too much, but as I am not good at embedding maths asking is it possible to replace fixed field {20} with something like {$subtotal X 5%$}
– KJO
yesterday
@KJO I looked a little bit on the code. You can for example define a new commandDiscountPercent
that should do what you want. At last it depends on how the discount has to be calculated, with or without VAT etc.
– Kurt
yesterday
Thanks Kurt (I build my own invoices in word and let it do the calcs :-) it was mainly that other users looking at your answer may want to apply percent "off"(er) before VAT
– KJO
yesterday
add a comment |
Well you need to expand the style invoice
in the preamble of your document with the following code:
makeatletter
defUnitDay {Preis/Tag}% <========================================
newcommand{FeeDay@Title}{% <==========================================
\
noindenttextbf{Activity}&&UnitDay&Count&Amount (BC)\
hline%
}%
newcommand{FeeDay}[3]{% Yields state 3, Print Fee Item <==============
%
% #1 Contents
% #2 Fee per Day
% #3 Unit Count
%
ifcaseFlag % 0: Invoice not started yet
error@message{MissingOpening}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 1: Start invoice
%
error@message{MissingProject}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 2: Start project, print title
%
FeeDay@Title%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 3: Print remuneration item
%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 4: Print subtotal remuneration
%
warning@message{FeeSTExists}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 5: Expense item
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 6: Print subtotal expenses
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 7: Print subtotal project
%
error@message{ProjectCompletedNoFee}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 8: Print total, close invoice
%
error@message{InvoiceCompletedNoFee}%
%
%
else error@message{InternalError}%
fi%
}%
makeatother
Please see that you have to define new commnands defUnitDay
(I did only for german!), FeeDay@Title
to print the heading with "Preis/Tag" and FeeDay
to print one calculation for one work done at x days.
So you can use this commands in this way:
ProjectTitle{Tagesleistungen} % <=========================================
FeeDay{Musterdienstleistung 3}{360.00}{3}
In the following MWE I keept the old invoice and added the new commands and code I showed above:
documentclass[a4paper]{scrlttr2}
usepackage[top=2cm, bottom=1cm, left=2cm, right=2cm]{geometry}
usepackage{graphicx}
usepackage{lmodern}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[ngerman]{babel}
usepackage{color}
usepackage[hidelinks]{hyperref}
usepackage[german]{invoice}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
makeatletter
defUnitDay {Preis/Tag}% <========================================
newcommand{FeeDay@Title}{% <==========================================
\
noindenttextbf{Activity}&&UnitDay&Count&Amount (BC)\
hline%
}%
newcommand{FeeDay}[3]{% Yields state 3, Print Fee Item <==============
%
% #1 Contents
% #2 Fee per Day
% #3 Unit Count
%
ifcaseFlag % 0: Invoice not started yet
error@message{MissingOpening}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 1: Start invoice
%
error@message{MissingProject}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 2: Start project, print title
%
FeeDay@Title%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 3: Print remuneration item
%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 4: Print subtotal remuneration
%
warning@message{FeeSTExists}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 5: Expense item
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 6: Print subtotal expenses
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 7: Print subtotal project
%
error@message{ProjectCompletedNoFee}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 8: Print total, close invoice
%
error@message{InvoiceCompletedNoFee}%
%
%
else error@message{InternalError}%
fi%
}%
makeatother
renewcommand{familydefault}{sfdefault}
% include meta data
include{_data} % <============== delete in this file the following data!
% ################## invoice DATA ##################
newcommand{invoiceDate}{DD.MM.YYYY} % Datum der rechnungsstellung
newcommand{payDate}{DD.MM.YYYY} % Datum der Zahlungsfrist
newcommand{invoiceReference}{YYYYMMDD-1} % Rechnungsnummer (z.B. 20150122-4)
newcommand{invoiceSalutation}{Sehr geehrte Damen und Herren,} % die Anrede
newcommand{invoiceText}{Für die von mir erbrachte Leistung erhalten sie
hiermit die Rechnung. Bitte zahlen Sie den unten aufgeführten Gesamtbetrag
unter Angabe der Rechnungsnummer (invoiceReference) bis
zum payDate auf das angegebene Konto ein.} % Rechnungstext
newcommand{invoiceEnclosures}{} % encl{} einfügen
newcommand{invoiceClosing}{Mit freundlichen Grüßen}
% ################## invoice DATA ##################
% ################## Customer DATA ##################
newcommand{customerCompany}{Firma XYZ} %ggf. Firma
newcommand{customerName}{Max Mustermann} % Name
newcommand{customerStreet}{Robert-Koch-Str. 12} % Straße
newcommand{customerZIP}{12345} % Postleitzahl
newcommand{customerCity}{Musterstadt} % Ort
% ################## Customer DATA ##################
setkomavar{fromname}{senderName}
setkomavar{fromaddress}{senderStreet \ senderZIP senderCity}
setkomavar{place}{senderCity}
setkomavar{date}{invoiceDate}
setkomavar{fromphone}{senderTelephone}
setkomavar{frommobilephone}{senderMobilephone}
setkomavar{fromemail}{href{mailto:senderEmail}{nolinkurl{senderEmail}}}
setkomavar{subject}{Rechnung}
setkomavar{location}{
\[baselineskip] \[baselineskip]
flushright small {vspace{1cm}Rechnungsnummer:
invoiceReference}
}
setkomavar{firsthead}{hfill
parbox[t][headheight][t]{7cm}{% <================================== 6cm
footnotesize
raggedright
flushright
color[gray]{.3}%
begin{tabular}{rl}
Anschrift & usekomavar{fromname}\
& senderStreet\
& senderZIP senderCity \
\
%Telefon Telefon: ` senderTelephone \
Mobil & usekomavar{frommobilephone} \
E-Mail & usekomavar{fromemail} \
Webseite & {normalfontttfamily senderWeb } \
\
Steuernummer & taxID \
\
Institut & accountBankName \
IBAN & accountIBAN \
BIC & accountBIC
end{tabular}
}%
}
begin{document}
begin{letter}{customerCompany \ customerName \
customerStreet \ customerZIP customerCity}
includegraphics[width=0.15textwidth]{logo.png}
opening{invoiceSalutation}
invoiceText
begin{invoice}{Euro}{0}
ProjectTitle{Projekttitel} % <=========================================
Fee{Musterdienstleistung 1}{30.00}{4}
Fee{Musterdienstleistung 2}{36.00}{7}
ProjectTitle{Tagesleistungen} % <=========================================
FeeDay{Musterdienstleistung 3}{360.00}{3}
% Auslagen
%EBC{Hotel, 12 Nächte} {2400.00} % EBCi{Hotel, 12 Nächte} {2400.00}
%STExpenses
% Rabatt
Discount{Rabatt} {20} % <==============================================
end{invoice}
ps Im ausgewiesenen Betrag ist gemäß § 19 UStG keine Umsatzsteuer
enthalten.
closing{invoiceClosing}
invoiceEnclosures
end{letter}
end{document}
with the result:
Well you need to expand the style invoice
in the preamble of your document with the following code:
makeatletter
defUnitDay {Preis/Tag}% <========================================
newcommand{FeeDay@Title}{% <==========================================
\
noindenttextbf{Activity}&&UnitDay&Count&Amount (BC)\
hline%
}%
newcommand{FeeDay}[3]{% Yields state 3, Print Fee Item <==============
%
% #1 Contents
% #2 Fee per Day
% #3 Unit Count
%
ifcaseFlag % 0: Invoice not started yet
error@message{MissingOpening}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 1: Start invoice
%
error@message{MissingProject}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 2: Start project, print title
%
FeeDay@Title%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 3: Print remuneration item
%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 4: Print subtotal remuneration
%
warning@message{FeeSTExists}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 5: Expense item
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 6: Print subtotal expenses
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 7: Print subtotal project
%
error@message{ProjectCompletedNoFee}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 8: Print total, close invoice
%
error@message{InvoiceCompletedNoFee}%
%
%
else error@message{InternalError}%
fi%
}%
makeatother
Please see that you have to define new commnands defUnitDay
(I did only for german!), FeeDay@Title
to print the heading with "Preis/Tag" and FeeDay
to print one calculation for one work done at x days.
So you can use this commands in this way:
ProjectTitle{Tagesleistungen} % <=========================================
FeeDay{Musterdienstleistung 3}{360.00}{3}
In the following MWE I keept the old invoice and added the new commands and code I showed above:
documentclass[a4paper]{scrlttr2}
usepackage[top=2cm, bottom=1cm, left=2cm, right=2cm]{geometry}
usepackage{graphicx}
usepackage{lmodern}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[ngerman]{babel}
usepackage{color}
usepackage[hidelinks]{hyperref}
usepackage[german]{invoice}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
makeatletter
defUnitDay {Preis/Tag}% <========================================
newcommand{FeeDay@Title}{% <==========================================
\
noindenttextbf{Activity}&&UnitDay&Count&Amount (BC)\
hline%
}%
newcommand{FeeDay}[3]{% Yields state 3, Print Fee Item <==============
%
% #1 Contents
% #2 Fee per Day
% #3 Unit Count
%
ifcaseFlag % 0: Invoice not started yet
error@message{MissingOpening}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 1: Start invoice
%
error@message{MissingProject}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 2: Start project, print title
%
FeeDay@Title%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 3: Print remuneration item
%
Fee@Line{#1}{#2}{#3}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 4: Print subtotal remuneration
%
warning@message{FeeSTExists}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 5: Expense item
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 6: Print subtotal expenses
%
error@message{FeeBeforeExpense}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 7: Print subtotal project
%
error@message{ProjectCompletedNoFee}%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
or % 8: Print total, close invoice
%
error@message{InvoiceCompletedNoFee}%
%
%
else error@message{InternalError}%
fi%
}%
makeatother
renewcommand{familydefault}{sfdefault}
% include meta data
include{_data} % <============== delete in this file the following data!
% ################## invoice DATA ##################
newcommand{invoiceDate}{DD.MM.YYYY} % Datum der rechnungsstellung
newcommand{payDate}{DD.MM.YYYY} % Datum der Zahlungsfrist
newcommand{invoiceReference}{YYYYMMDD-1} % Rechnungsnummer (z.B. 20150122-4)
newcommand{invoiceSalutation}{Sehr geehrte Damen und Herren,} % die Anrede
newcommand{invoiceText}{Für die von mir erbrachte Leistung erhalten sie
hiermit die Rechnung. Bitte zahlen Sie den unten aufgeführten Gesamtbetrag
unter Angabe der Rechnungsnummer (invoiceReference) bis
zum payDate auf das angegebene Konto ein.} % Rechnungstext
newcommand{invoiceEnclosures}{} % encl{} einfügen
newcommand{invoiceClosing}{Mit freundlichen Grüßen}
% ################## invoice DATA ##################
% ################## Customer DATA ##################
newcommand{customerCompany}{Firma XYZ} %ggf. Firma
newcommand{customerName}{Max Mustermann} % Name
newcommand{customerStreet}{Robert-Koch-Str. 12} % Straße
newcommand{customerZIP}{12345} % Postleitzahl
newcommand{customerCity}{Musterstadt} % Ort
% ################## Customer DATA ##################
setkomavar{fromname}{senderName}
setkomavar{fromaddress}{senderStreet \ senderZIP senderCity}
setkomavar{place}{senderCity}
setkomavar{date}{invoiceDate}
setkomavar{fromphone}{senderTelephone}
setkomavar{frommobilephone}{senderMobilephone}
setkomavar{fromemail}{href{mailto:senderEmail}{nolinkurl{senderEmail}}}
setkomavar{subject}{Rechnung}
setkomavar{location}{
\[baselineskip] \[baselineskip]
flushright small {vspace{1cm}Rechnungsnummer:
invoiceReference}
}
setkomavar{firsthead}{hfill
parbox[t][headheight][t]{7cm}{% <================================== 6cm
footnotesize
raggedright
flushright
color[gray]{.3}%
begin{tabular}{rl}
Anschrift & usekomavar{fromname}\
& senderStreet\
& senderZIP senderCity \
\
%Telefon Telefon: ` senderTelephone \
Mobil & usekomavar{frommobilephone} \
E-Mail & usekomavar{fromemail} \
Webseite & {normalfontttfamily senderWeb } \
\
Steuernummer & taxID \
\
Institut & accountBankName \
IBAN & accountIBAN \
BIC & accountBIC
end{tabular}
}%
}
begin{document}
begin{letter}{customerCompany \ customerName \
customerStreet \ customerZIP customerCity}
includegraphics[width=0.15textwidth]{logo.png}
opening{invoiceSalutation}
invoiceText
begin{invoice}{Euro}{0}
ProjectTitle{Projekttitel} % <=========================================
Fee{Musterdienstleistung 1}{30.00}{4}
Fee{Musterdienstleistung 2}{36.00}{7}
ProjectTitle{Tagesleistungen} % <=========================================
FeeDay{Musterdienstleistung 3}{360.00}{3}
% Auslagen
%EBC{Hotel, 12 Nächte} {2400.00} % EBCi{Hotel, 12 Nächte} {2400.00}
%STExpenses
% Rabatt
Discount{Rabatt} {20} % <==============================================
end{invoice}
ps Im ausgewiesenen Betrag ist gemäß § 19 UStG keine Umsatzsteuer
enthalten.
closing{invoiceClosing}
invoiceEnclosures
end{letter}
end{document}
with the result:
answered yesterday
KurtKurt
36.4k847162
36.4k847162
A good answer addressing the original questions. However I note the rebate is applied as simple fixed discount of -20.00 Whereas I would normally in this type of case expect it to alternately be available as say 5% is there an(other) variable (did I miss one) that can be addressed to expand that functionality ?
– KJO
yesterday
@KJO You need to add it to the style file or your preamble by your own.
– Kurt
yesterday
@kurt not wishing to cloud comments too much, but as I am not good at embedding maths asking is it possible to replace fixed field {20} with something like {$subtotal X 5%$}
– KJO
yesterday
@KJO I looked a little bit on the code. You can for example define a new commandDiscountPercent
that should do what you want. At last it depends on how the discount has to be calculated, with or without VAT etc.
– Kurt
yesterday
Thanks Kurt (I build my own invoices in word and let it do the calcs :-) it was mainly that other users looking at your answer may want to apply percent "off"(er) before VAT
– KJO
yesterday
add a comment |
A good answer addressing the original questions. However I note the rebate is applied as simple fixed discount of -20.00 Whereas I would normally in this type of case expect it to alternately be available as say 5% is there an(other) variable (did I miss one) that can be addressed to expand that functionality ?
– KJO
yesterday
@KJO You need to add it to the style file or your preamble by your own.
– Kurt
yesterday
@kurt not wishing to cloud comments too much, but as I am not good at embedding maths asking is it possible to replace fixed field {20} with something like {$subtotal X 5%$}
– KJO
yesterday
@KJO I looked a little bit on the code. You can for example define a new commandDiscountPercent
that should do what you want. At last it depends on how the discount has to be calculated, with or without VAT etc.
– Kurt
yesterday
Thanks Kurt (I build my own invoices in word and let it do the calcs :-) it was mainly that other users looking at your answer may want to apply percent "off"(er) before VAT
– KJO
yesterday
A good answer addressing the original questions. However I note the rebate is applied as simple fixed discount of -20.00 Whereas I would normally in this type of case expect it to alternately be available as say 5% is there an(other) variable (did I miss one) that can be addressed to expand that functionality ?
– KJO
yesterday
A good answer addressing the original questions. However I note the rebate is applied as simple fixed discount of -20.00 Whereas I would normally in this type of case expect it to alternately be available as say 5% is there an(other) variable (did I miss one) that can be addressed to expand that functionality ?
– KJO
yesterday
@KJO You need to add it to the style file or your preamble by your own.
– Kurt
yesterday
@KJO You need to add it to the style file or your preamble by your own.
– Kurt
yesterday
@kurt not wishing to cloud comments too much, but as I am not good at embedding maths asking is it possible to replace fixed field {20} with something like {$subtotal X 5%$}
– KJO
yesterday
@kurt not wishing to cloud comments too much, but as I am not good at embedding maths asking is it possible to replace fixed field {20} with something like {$subtotal X 5%$}
– KJO
yesterday
@KJO I looked a little bit on the code. You can for example define a new command
DiscountPercent
that should do what you want. At last it depends on how the discount has to be calculated, with or without VAT etc.– Kurt
yesterday
@KJO I looked a little bit on the code. You can for example define a new command
DiscountPercent
that should do what you want. At last it depends on how the discount has to be calculated, with or without VAT etc.– Kurt
yesterday
Thanks Kurt (I build my own invoices in word and let it do the calcs :-) it was mainly that other users looking at your answer may want to apply percent "off"(er) before VAT
– KJO
yesterday
Thanks Kurt (I build my own invoices in word and let it do the calcs :-) it was mainly that other users looking at your answer may want to apply percent "off"(er) before VAT
– KJO
yesterday
add a comment |
Lala_Ghost is a new contributor. Be nice, and check out our Code of Conduct.
Lala_Ghost is a new contributor. Be nice, and check out our Code of Conduct.
Lala_Ghost is a new contributor. Be nice, and check out our Code of Conduct.
Lala_Ghost is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to TeX - LaTeX Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f472083%2fchange-from-hourly-price-to-daily-price%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown