X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=templates%2Fprint%2Fmarei%2Fkiviletter.sty;h=79b33a81880c80c5fba60bdaccbada3251b28380;hb=3782a90c336bc6c506f572e607c8526cb5e79ea3;hp=0ea2005326f45b83e4f7202ceb26348f30b678a8;hpb=e6518ce7125919e8d466f036091c6a328b2c8c46;p=kivitendo-erp.git diff --git a/templates/print/marei/kiviletter.sty b/templates/print/marei/kiviletter.sty index 0ea200532..79b33a818 100644 --- a/templates/print/marei/kiviletter.sty +++ b/templates/print/marei/kiviletter.sty @@ -1,24 +1,37 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{kiviletter}[2020/04/24 Letter Layouts for Kivitendo] +\ProvidesPackage{kiviletter}[2022/04/23 Letter Layouts for Kivitendo] -\newif\if@kivi@infobox -\newif\if@kivi@footer -\DeclareOption{reffields}{\@kivi@infoboxfalse} -\DeclareOption{infobox}{\@kivi@infoboxtrue} -\DeclareOption{nofooter}{\@kivi@footerfalse} -\DeclareOption{footer}{\@kivi@footertrue} -\@kivi@infoboxtrue -\@kivi@footertrue +\RequirePackage{l3keys2e} -\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{scrletter}} +%Optionen vor den eigenen Paketoptionen hinzufügen, damit spätere diese ggf. überschreiben +\PassOptionsToPackage{ + fromlogo, + fromalign=right, + firstfoot=false,%Für einheitliche Randeinstellungen + refline=nodate, +}{scrletter} -\ProcessOptions\relax +\ExplSyntaxOn +\newif\if@kivi@infobox +\newif\if@kivi@footer +\keys_define:nn {kiviletter} { + infobox .choices:nn = {true,false} {\use:c {@kivi@infobox\l_keys_choice_tl}}, + infobox .default:n = true, + infobox .initial:n = true, + reffields .meta:n = {infobox=false}, + footer .choices:nn = {true,false} {\use:c {@kivi@footer\l_keys_choice_tl}}, + footer .default:n = true, + footer .initial:n = true, + nofooter .meta:n = {footer=false}, + unknown .code:n = \PassOptionsToPackage{\l_keys_key_str=#1}{scrletter}, +} +\ExplSyntaxOff +\ProcessKeysOptions{kiviletter} -\RequirePackage{expl3} \RequirePackage{xparse} \RequirePackage{iftex} -\KOMAoptions{fontsize=12pt} + % Schriftart, Eingabelayout der Tastatur \ifPDFTeX \RequirePackage[utf8]{inputenc}% Nur notwendig, wenn Basis älter als TL2018 @@ -35,13 +48,10 @@ \RequirePackage{booktabs} \RequirePackage{graphicx} -\PassOptionsToPackage{fromlogo,fromalign=right, - firstfoot=false,%Für einheitliche Randeinstellungen - refline=nodate, -}{scrletter} \RequirePackage{scrletter} \LoadLetterOption{DIN} +\newkomavar{taxpoint} \newkomavar{transaction} \newkomavar[\lieferschein{}~\nr]{delivery} \newkomavar[\angebot{}~\nr]{quote} @@ -146,7 +156,7 @@ amount=5em, price=7em, pricetotal=7em, - % desc=auto, + % desc=auto, pos/header=\position, id/header=\artikelnummer, desc/header=\bezeichnung, @@ -296,6 +306,7 @@ \let\ExtraDescription\__kivi_addExtraDescription:n \setlength{\tabcolsep}{\g_kivi_tabcolsep_dim} \seq_map_inline:Nn \l_kivi_PricingTable_seq { + \if_mode_horizontal: \par \fi \bool_if:NT \g__kivi_Tabular_rowcolor_bool { \int_gincr:N \g__kivi_PricingTable_rowcolor_int \int_if_odd:nTF {\g__kivi_PricingTable_rowcolor_int} @@ -326,6 +337,7 @@ }} } \endgroup\par + \l__kivi_Tabular_rowsep_tl } @@ -395,7 +407,7 @@ \NewDocumentEnvironment{PricingTotal}{+b}{ \par\nointerlineskip }{ - \bool_if:NT \g__kivi_Tabular_rowcolor_bool {\nointerlineskip\kivi@tabcolorbox{\g__kivi_Tabular_rowcolor_PricingTotal_tl}} + \bool_if:NT \g__kivi_Tabular_rowcolor_bool {\nointerlineskip\kivi@tabcolorbox{\g__kivi_Tabular_rowcolor_PricingTotal_tl}} { \tabular[t]{ @{\bool_if:NT \g__kivi_Tabular_rowcolor_bool {\hskip\tabcolsep}} @@ -442,7 +454,7 @@ \bool_if:NTF \g__kivi_Tabular_rowcolor_bool {\noalign{\skip_vertical:n {\dp\strutbox}}}\toprule \cs_gset_eq:NN \__kivi_tab_column_currency: \__kivi_tab_column_header_currency: \bool_set_false:N \l_tmpa_bool - \clist_map_inline:Nn \g_kivi_pricingtable_col_clist { + \clist_map_inline:Nn \g_kivi_pricingtable_col_clist { \bool_if:cT {l_kivi_col_##1_bool} { \bool_if:NT \l_tmpa_bool {&} \bool_set_true:N \l_tmpa_bool @@ -476,8 +488,13 @@ rowcolor-header .initial:n = black!35, rowcolor-total .tl_gset:N = \g__kivi_Tabular_rowcolor_PricingTotal_tl, rowcolor-total .initial:n = black!35, - rowsep .tl_set:N =\g__kivi_Tabular_rowsep_tl, - hrule .meta:n = {rowsep=\midrule} + rowsep .tl_set:N =\l__kivi_Tabular_rowsep_tl, + rowsep .initial:n = , + hrule .meta:n = { + rowsep={ + \vskip\aboverulesep + \leavevmode\hrule\@height\lightrulewidth + \vskip\belowrulesep}}, } \newcommand*{\SetupSimpleTabular}[1]{\keys_set:nn {kivi/SimpleTabular} {#1}} @@ -488,7 +505,7 @@ \tl_if_in:nnTF {#1} {=} {\keys_set:nn {kivi/SimpleTabular} {#1}} {\tl_if_empty:nF {#1} {\tl_set:Nn \l_kivi_SimpleTabular_headline_tl {#1}}} \setlength{\tabcolsep}{\g_kivi_tabcolsep_dim} \dim_set:Nn \parskip {\c_zero_dim} - \bool_if:NF \g__kivi_Tabular_rowcolor_bool { + \bool_if:NF \g__kivi_Tabular_rowcolor_bool { \tl_put_right:Nn \l_kivi_SimpleTabular_colspec_tl {@{}} \tl_put_left:Nn \l_kivi_SimpleTabular_colspec_tl {@{}} } @@ -583,6 +600,7 @@ \locationentry{quote} \locationentry{orderID} \locationentry{projectID} + \locationentry{taxpoint} \locationentry[\ansprechpartner]{fromname} \locationentry{fromphone} \locationentry*{fromemail} @@ -624,23 +642,37 @@ } } -\newcommand*{\setupCurrencyConfig}[2]{ +\newcommand*{\setupCurrencyConfig}[3][euro]{ \tl_new:N \g_kivi_currency_tl - \exp_args:Nf \str_if_in:nnT {#2} {USD} {\tl_gset:Nn \g_kivi_currency_tl {usd}} - \exp_args:Nf \str_if_in:nnT {#2} {CHF} {\tl_gset:Nn \g_kivi_currency_tl {chf}} - \exp_args:Nf \str_if_in:nnT {#2} {EUR} {\tl_gset:Nn \g_kivi_currency_tl {euro}} + \exp_args:Nf \str_if_in:nnT {#3} {USD} {\tl_gset:Nn \g_kivi_currency_tl {usd}} + \exp_args:Nf \str_if_in:nnT {#3} {CHF} {\tl_gset:Nn \g_kivi_currency_tl {chf}} + \exp_args:Nf \str_if_in:nnT {#3} {EUR} {\tl_gset:Nn \g_kivi_currency_tl {euro}} \tl_if_empty:NT \g_kivi_currency_tl { - \tl_gset:Nn \g_kivi_currency_tl {default} - \edef \currency {\tl_to_str:N \lxcurrency} + \tl_if_empty:oTF {#3} { + \tl_gset:Nn \g_kivi_currency_tl {#1} + } { + \tl_gset:Nn \g_kivi_currency_tl {#3} + } } - \input{#1/\g_kivi_currency_tl _account.tex} + \input{#2/\g_kivi_currency_tl _account.tex} + \let\setupCurrencyConfig\_kivi_currency_already_configured:w +} + +\newcommand*{\_kivi_currency_already_configured:w}[3][euro]{ + \msg_error:nnx {kiviletter} {currency-already-configured} {\g_kivi_currency_tl} } +\msg_new:nnn {kiviletter} {currency-already-configured} { + The~currency~configuration~is~a~global~setting~for~each~document.\\ + It's~already~set~to~#1,~please~remove~the~second~call~of~\string\setupCurrencyConfig. +} \ExplSyntaxOff \renewcommand*{\raggedsignature}{\raggedright} \newkomafont{extraDescription}{} +\newkomafont{subtotal}{} +\newkomafont{total}{} \endinput