\setcounter{errorcontextlines}{100} \listfiles \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesClass{vl-versandauftrag-2017} [2018/01/11 v0.1k Dokumentenklasse (RN/PTB)] \newcommand*\vl@lang{english} \DeclareOption{de}{\def\vl@lang{ngerman}} \DeclareOption{german}{\def\vl@lang{ngerman}} \DeclareOption{en}{\def\vl@lang{english}} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} \ProcessOptions\relax \PassOptionsToPackage{paper=a4,pagesize}{typearea} \LoadClass[% ,fontsize=10pt ]{scrartcl} \RequirePackage{ifxetex,ifluatex,setspace} \setstretch{1.5} \newif\ifXeOrLua \XeOrLuafalse \ifxetex\XeOrLuatrue\else\ifluatex\XeOrLuatrue\fi\fi \ifXeOrLua% XeLaTeX oder luaLaTeX \input{vl-versandauftrag-2.clo} \else \input{vl-versandauftrag-1.clo} \fi \setlength\textwidth{488bp} \setlength\textheight{741bp} \RequirePackage{eso-pic,pict2e,picture,xcolor,relsize,trimspaces} \RequirePackage[\vl@lang]{babel} \RequirePackage{iflang} \IfLanguageName{ngerman}{% \RequirePackage[babel=once,german=guillemets]{csquotes} \AtEndOfClass{\shorthandon{"}} \defineshorthand{"`}{\openautoquote} \defineshorthand{"'}{\closeautoquote} \MakeAutoQuote{»}{«} }{% \RequirePackage[babel=once]{csquotes} } \definecolor{thisGray}{gray}{0.881} \let\vl@tempdima=\@ovxx \let\vl@tempdimb=\@ovyy \let\vl@tempdimc=\@ovdx \let\vl@tempdimd=\@clnwd \let\vl@tempdime=\@clnht \let\vl@tempdimf=\@dashdim \newcommand\vl@tempa{} \newdimen\vl@fontdim \newdimen\vl@upperfontdim \newdimen\vl@lowerfontdim \newif\if@vl@moreiterations \vl@fontdim=12pt % \newcommand\vl@buildbox[2]{% \setbox0\vbox{\hbox{\parbox{#1}{% \fontsize{\vl@fontdim}{1.2\vl@fontdim}\selectfont #2}}}% \dimen@\ht0 % \advance\dimen@\dp0 % } % Modifiziert nach: % http://tex.stackexchange.com/questions/26002/fit-text-into-given-box-by-adjusting-the-fontsize % siehe auch: http://www.tug.org/TUGboat/tb29-1/tb91pearls.pdf % % Verhält sich wie \parbox, wenn Text in vorgegebene Höhe passt, % sonst Reduktion der Schriftgröße. \newcommand\lfitbox[4][c]{% [pos] <width> <height> <stuff> \vl@buildbox{#2}{#4}% \ifdim\dimen@<#3\relax \parbox[#1][#3]{#2}{#4}% \else % Compute upper and lower bounds \loop \vl@fontdim.5\vl@fontdim % Reduce font size by half \vl@buildbox{#2}{#4}% \ifdim\dimen@>#3\relax \repeat \vl@lowerfontdim\vl@fontdim \vl@upperfontdim=2\vl@fontdim \vl@fontdim=1.5\vl@fontdim % Now try to find the optimum size \loop %\message{Bounds: \the\vl@lowerfontdim\space % \the\vl@fontdim\space \the\vl@upperfontdim^^J} \vl@buildbox{#2}{#4}% \ifdim\dimen@>#3\relax % \@vl@moreiterationstrue \vl@upperfontdim\vl@fontdim \advance\vl@fontdim\vl@lowerfontdim \vl@fontdim=.5\vl@fontdim \else \advance\dimen@-#3\relax % \ifdim\dimen@<10pt % \vl@lowerfontdim\vl@fontdim \advance\vl@fontdim\vl@upperfontdim \vl@fontdim=.5\vl@fontdim \dimen@\vl@upperfontdim \advance\dimen@-\vl@lowerfontdim \ifdim\dimen@<.2pt % \@vl@moreiterationsfalse \else \@vl@moreiterationstrue \fi \else \@vl@moreiterationsfalse \fi \fi \if@vl@moreiterations \repeat \parbox[#1][#3]{#2}{\fontsize{\vl@fontdim}{1.2\vl@fontdim}\selectfont#4}% \fi } \newcommand*\vl@setboolean[3][false]{% #1=default (opt.), #2=if, #3=value \edef\vl@tempa{\trim@spaces{#3}}% \expandafter\csname #2\ifx\@empty\vl@tempa #1\else\vl@tempa\fi\endcsname } \newcommand*\vl@setcounter[3][0]{% #1=default (opt.), #2=counter, #3=value \edef\vl@tempa{\trim@spaces{#3}}% \setcounter{#2}{\ifx\@empty\vl@tempa #1\else\vl@tempa\fi}% } \newcommand*\vl@setcommand[3][]{% #1=default (opt.), #2=macro, #3=value \edef\vl@tempa{\trim@spaces@noexp{#3}}% \expandafter\protected@xdef\csname #2\endcsname{% \ifx\@empty\vl@tempa #1\else\vl@tempa\fi}% } \newif\ifInland \Inlandtrue \newcommand*\Inland[1]{\vl@setboolean{Inland}{#1}} \newif\ifEU \EUtrue \newcommand*\EU[1]{\vl@setboolean{EU}{#1}} \newcommand*\vl@ShippingNo{} \newcommand*\ShippingNo[1]{\vl@setcommand{vl@ShippingNo}{#1}} \newcommand*\vl@ShippingName{} \newcommand*\ShippingName[1]{\vl@setcommand{vl@ShippingName}{#1}} \newcommand*\vl@ShippingContact{} \newcommand*\ShippingContact[1]{\vl@setcommand{vl@ShippingContact}{#1}} \newcommand*\vl@ShippingStreet{} \newcommand*\ShippingStreet[1]{\vl@setcommand{vl@ShippingStreet}{#1}} \newcommand*\vl@ShippingTown{} \newcommand*\ShippingTown[1]{\vl@setcommand{vl@ShippingTown}{#1}} \newcommand*\vl@ShippingZipcode{} \newcommand*\ShippingZipcode[1]{\vl@setcommand{vl@ShippingZipcode}{#1}} \newcommand*\vl@ShippingLand{} \newcommand*\ShippingLand[1]{\vl@setcommand{vl@ShippingLand}{#1}} \newcommand*\vl@CostUnit{} \newcommand*\CostUnit[1]{\vl@setcommand{vl@CostUnit}{#1}} \newcommand*\vl@FinanceUnit{} \newcommand*\FinanceUnit[1]{\vl@setcommand{vl@FinanceUnit}{#1}} \newcommand*\vl@Account{} \newcommand*\Account[1]{\vl@setcommand{vl@Account}{#1}} \newcommand*\vl@SAPNo{} \newcommand*\SAPNo[1]{\vl@setcommand{vl@SAPNo}{#1}} \newcommand*\vl@Value{} \newcommand*\Value[1]{\vl@setcommand{vl@Value}{#1}} \newcommand*\vl@DateOfArrival{} \newcommand*\DateOfArrival[1]{\vl@setcommand{vl@DateOfArrival}{#1}} \newcommand*\vl@WorkingGroup{} \newcommand*\WorkingGroup[1]{\vl@setcommand{vl@WorkingGroup}{#1}} \newcommand*\vl@TelefonExtension{} \newcommand*\TelefonExtension[1]{\vl@setcommand{vl@TelefonExtension}{#1}} \newcommand*\vl@Date{} \newcommand*\Date[1]{\vl@setcommand{vl@Date}{#1}} \newcommand*\vl@Content{} \newcommand*\Content[1]{\vl@setcommand{vl@Content}{#1}} \newcommand*\vl@Purchaser{} \newcommand*\Purchaser[1]{\vl@setcommand{vl@Purchaser}{#1}} \newcommand*\vl@Referee{} \newcommand*\Referee[1]{\vl@setcommand{vl@Referee}{#1}} \newcounter{vl@TransportType} \setcounter{vl@TransportType}{0} \newcommand*\TransportType[1]{\vl@setcounter{vl@TransportType}{#1}} \newcounter{vl@Shippingtype} \setcounter{vl@Shippingtype}{0} \newcommand*\ShippingType[1]{\vl@setcounter{vl@Shippingtype}{#1}} \newcounter{vl@ShippingCompany} \setcounter{vl@ShippingCompany}{4} \newcommand*\ShippingCompany[1]{\vl@setcounter[4]{vl@ShippingCompany}{#1}} \newcounter{vl@ShippingPayment} \setcounter{vl@ShippingPayment}{0} \newcommand*\ShippingPayment[1]{\vl@setcounter{vl@ShippingPayment}{#1}} \newif\ifInflammable \Inflammablefalse \newcommand*\LabelInflammable[1]{\vl@setboolean{Inflammable}{#1}} \newif\ifGlas \Glasfalse \newcommand*\LabelGlas[1]{\vl@setboolean{Glas}{#1}} \newif\ifSensitive \Sensitivefalse \newcommand*\LabelSensitive[1]{\vl@setboolean{Sensitive}{#1}} \newif\ifTop \Topfalse \newcommand*\LabelTop[1]{\vl@setboolean{Top}{#1}} \newif\ifDangerous \Dangerousfalse \newcommand*\LabelDangerous[1]{\vl@setboolean{Dangerous}{#1}} \newcommand*\vl@mainTitle{} \newcommand\vl@mainTitle@i{\huge Versandauftrag} \newcommand\vl@mainTitle@ii{\normalsize\relscale{1.65} Versandauftrag\par{} \normalsize --~Kopie für Versender~--} \AtBeginDocument{% \def\vl@mainTitle{\vl@mainTitle@i} \mbox{} \newpage \def\vl@mainTitle{\vl@mainTitle@ii} \mbox{} } \renewcommand*\familydefault{\sfdefault} \def\huge{\@setfontsize\huge{20.08}{24.2}} %%\def\large{\@setfontsize\large{11.62}{13.56}} %%\def\tiny{\@setfontsize\tiny\@viipt\@viiipt} \newcommand*\checkBox[2][0]{% \begingroup \fboxrule=0.7bp\fboxsep=0pt % 0.7bp (10pt) \raisebox{.3\height}{\fbox{\parbox[c][11bp]{11bp}{% \mbox{}\ifcase#1\or\centering\relscale{1.35}$\times$\fi% }}}% \endgroup\ifx\relax#2\relax\else~\raisebox{.2\height}{#2}\fi% } \newcommand*\vl@SelCompany[1]{ \ifnum\c@vl@TransportType=0 % \ifnum\c@vl@ShippingCompany=#1 % 1% \else 0% \fi \else 0% \fi } \AddToShipoutPictureBG{% \frenchspacing \AtPageLowerLeft{% \linethickness{0.6bp}% \vl@tempdima=57bp % \vl@tempdimb=58bp % \put(\vl@tempdima,\vl@tempdimb){\framebox(\textwidth,\textheight){}}% \put(227bp,468bp){\textcolor{thisGray}{\rule{318bp}{129bp}}}% % dünne waagerechte Linien \put(\vl@tempdima,767bp){\line(1,0){\textwidth}}% \put(\vl@tempdima,739bp){\line(1,0){\textwidth}}% \put(227bp,597bp){\line(1,0){318bp}}% \put(\vl@tempdima,468bp){\line(1,0){\textwidth}}% \put(\vl@tempdima,417bp){\line(1,0){\textwidth}}% \put(\vl@tempdima,389bp){\line(1,0){\textwidth}}% \put(\vl@tempdima,361bp){\line(1,0){\textwidth}}% \put(\vl@tempdima,267bp){\line(1,0){\textwidth}}% \put(\vl@tempdima,205bp){\line(1,0){\textwidth}}% \put(\vl@tempdima,104bp){\line(1,0){\textwidth}}% \put(\vl@tempdima, 81bp){\line(1,0){\textwidth}}% % dünne senkrechte Linien \put(227bp,468bp){\line(0,1){299bp}}% \put(305bp,739bp){\line(0,1){60bp}}% \put(389bp,597bp){\line(0,1){170bp}}% \put(290bp,\vl@tempdimb){\line(0,1){83bp}}% \put(213bp,361bp){\line(0,1){56bp}}% \put(397bp,361bp){\line(0,1){56bp}}% \put(368bp,104bp){\line(0,1){37bp}}% % Feste Beschriftung \put(57bp,780bp){\parbox[c][32bp]{247bp}{\centering\bfseries\vl@mainTitle}}% \put(321bp,786bp){\large Physikalisch-Technische Bundesanstalt}% \put(343bp,772bp){\large Abbestraße 2--12, 10587 Berlin}% \footnotesize \vl@tempdimc=758bp % \put( 62bp,\vl@tempdimc){Org.-Einheit, Sachbearbeiter}% \put(232bp,\vl@tempdimc){Telefon: 030/3481}% \put(310bp,\vl@tempdimc){Datum}% \put(395bp,\vl@tempdimc){Versandauftrag wurde ausgefüllt von}% \vl@tempdimc=728bp % \normalsize \put(62bp,\vl@tempdimc){\textbf{Versand per:}}% \put(62bp,709bp){\checkBox[\ifnum\c@vl@TransportType=0 1\else0\fi]% {\textbf{Transportunternehmen}}}% \put(77bp,689bp){\checkBox[\vl@SelCompany{0}]{Logiline}}% \put(77bp,675bp){\checkBox[\vl@SelCompany{1}]{TNT}}% \put(77bp,661bp){\checkBox[\vl@SelCompany{2}]{UPS}}% \put(77bp,647bp){\checkBox[\vl@SelCompany{3}]{FedEx}}% \put(77bp,633bp){\checkBox[\vl@SelCompany{4}]{Post/DHL Express (unfreier}}% \put(94bp,622bp){Versand nur ins Inland)}% \put(77bp,606bp){\checkBox[\vl@SelCompany{5}]{}}% \put(62bp,543bp){\textbf{Kundennr.:}% \ifnum\c@vl@TransportType=0 ~\texttt{\vl@ShippingNo}\fi}% \put(62bp,518bp){\checkBox[\ifnum\c@vl@TransportType=1 1\else0\fi]% {\textbf{Abholung wird vom}}}% \put(77bp,507bp){\textbf{Empfänger veranlasst}}% \put(62bp,487bp){\checkBox[\ifnum\c@vl@TransportType=2 1\else0\fi]% {\textbf{PTB-Fahrdienst/Kurier}}}% \put(233bp,\vl@tempdimc){\textbf{Versand nach:}}% \put(233bp,709bp){\checkBox[\ifInland 1\else0\fi]{Inland}}% \put(233bp,689bp){\checkBox[\ifInland 0\else1\fi]{Ausland}}% \put(249bp,669bp){\checkBox[\ifInland 0\else\ifEU 1\else0\fi\fi]{EU}}% \put(249bp,655bp){\checkBox[\ifInland 0\else\ifEU 0\else1\fi\fi]{andere}}% \put(233bp,625bp){(ggf. Proformarechnung beifügen,}% \put(233bp,614bp){erhältlich bei Z.1532~--}% \put(233bp,603bp){Fr. Hirschauer, Tel.~7372)}% \put(396bp,\vl@tempdimc){\textbf{Zustellungsart:}}% \put(396bp,709bp){\checkBox[\ifnum\c@vl@Shippingtype=0 1\else0\fi]% {Standard \scriptsize(2--3 Tage)}}% \put(396bp,689bp){\checkBox[\ifnum\c@vl@Shippingtype=1 1\else0\fi]% {Übernacht-Express}}% \put(396bp,667bp){\checkBox[\ifnum\c@vl@Shippingtype=2 1\else0\fi]% {andere:}}% \put(233bp,580bp){\textbf{\large Reparatur}~(nur bei Bedarf ausfüllen)}% \put(233bp,558bp){\checkBox{\textbf{Reparaturschein liegt bei}}}% \put(233bp,543bp){\textbf{Lieferscheinnummer:}}% \put(233bp,518bp){Mit der Bitte um}% \put(233bp,498bp){\checkBox{\textbf{Reparatur im Rahmen der Gewährleistung}}}% \put(233bp,478bp){\checkBox{\textbf{Reparaturkosten-Voranschlag}}}% \put(62bp,453bp){Angaben zur Zahlungsart:}% \put(62bp,433bp){\checkBox[\ifnum\c@vl@ShippingPayment=0 1\else0\fi]% {\textbf{frei}~(Kosten trägt die PTB)}}% \put(220bp,433bp){\checkBox[\ifnum\c@vl@ShippingPayment=1 1\else0\fi]% {Kosten werden vom Laboratorium}}% \put(236bp,423bp){per \textbf{Kostenbescheid} eingezogen}% \put(403bp,433bp){\checkBox[\ifnum\c@vl@ShippingPayment=2 1\else0\fi]% {\textbf{unfrei}~(Empfänger zahlt)}}% \footnotesize \vl@tempdima=62bp % \vl@tempdimc=408bp % \put(\vl@tempdima,\vl@tempdimc){Kostenstelle}% \put(218bp,\vl@tempdimc){Finanzstelle}% \put(401bp,\vl@tempdimc){Titel}% \vl@tempdimc=380bp % \put(\vl@tempdima,\vl@tempdimc){ggf. SAP-Auftragsnummer}% \put(218bp,\vl@tempdimc){Wertangabe}% \put(401bp,\vl@tempdimc){Ankunftstag (falls notwendig)}% \normalsize \vl@tempdimc=350bp % \put(\vl@tempdima,\vl@tempdimc){Empfänger (Name, Straße, PLZ, Ort) Zustellungen an ein Postfach sind nicht möglich!}% \vl@tempdimc=339bp % \put(\vl@tempdima,\vl@tempdimc){\textbf{Bei allen Sendungen bitte Telefonnummer und ggf. die E-Mail Adresse angeben!}}% \put(\vl@tempdima,257bp){Inhalt:}% \put(\vl@tempdima,194bp){Sendung mit folgendem \textbf{Warnhinweis} versehen:} \put(\vl@tempdima,173bp){\checkBox[\ifInflammable 1\else 0\fi]{Feuergefährlich!}}% \put(167bp,173bp){\checkBox[\ifGlas 1\else 0\fi]{Vorsicht Glas!}}% \put(258bp,173bp){\checkBox[\ifSensitive 1\else 0\fi]{Vorsicht! Empfindliche}}% \put(274bp,163bp){Elektrogeräte}% \put(386bp,173bp){\checkBox[\ifTop 1\else 0\fi]{Oben}}% \put(402bp,163bp){Nicht stürzen!}% \put(478bp,173bp){\checkBox[\ifDangerous 1\else 0\fi]{Gefahrgut}}% \put(193bp,145bp){{\large\textbf{Nur von der Versandstelle auszufüllen}}} \footnotesize \vl@tempdimc=132bp % \put(\vl@tempdima,\vl@tempdimc){Verpackung}% \begingroup \vl@tempdimc=111bp % \put(\vl@tempdima,\vl@tempdimc){\line(1,0){26bp}}% \large \put(105bp,\vl@tempdimc){\checkBox{Karton}}% \put(164bp,\vl@tempdimc){\checkBox{Kiste}}% \put(221bp,\vl@tempdimc){\checkBox{Palette}}% \endgroup \put(295bp,\vl@tempdimc){Gewicht}% \put(351bp,112bp){{\large kg}}% \put(374bp,\vl@tempdimc){Bearbeitet von}% \vl@tempdimc=94bp % \put(\vl@tempdima,\vl@tempdimc){Eingang bei Z.1533 am}% \put(295bp,\vl@tempdimc){Verpackt durch}% \vl@tempdimc=72bp % \put(\vl@tempdima,\vl@tempdimc){Abgesandt am}% \put(295bp,\vl@tempdimc){Unterschrift Z.1533}% % ... % Variable Beschriftung % \vl@tempdima=62bp % \begingroup \ttfamily\normalsize \vl@tempdimc=744bp % -14bp \put(\vl@tempdima,\vl@tempdimc){\vl@WorkingGroup,~\vl@Referee}% \put(395bp,\vl@tempdimc){\vl@Purchaser}% \put(232bp,\vl@tempdimc){\vl@TelefonExtension}% \put(310bp,\vl@tempdimc){\vl@Date}% \vl@tempdimc=394bp % -14bp \put(\vl@tempdima,\vl@tempdimc){\vl@CostUnit}% \put(218bp,\vl@tempdimc){\vl@FinanceUnit}% \put(401bp,\vl@tempdimc){\vl@Account}% \vl@tempdimc=366bp % \put(\vl@tempdima,\vl@tempdimc){\vl@SAPNo}% \put(218bp,\vl@tempdimc){\vl@Value}% \put(401bp,\vl@tempdimc){\vl@DateOfArrival}% \put(\vl@tempdima,327bp){% \parbox[t]{0.975\textwidth}{% \small\setstretch{0.8} \vl@ShippingName \\ \vl@ShippingContact \\ \vl@ShippingStreet \\ \vl@ShippingZipcode~\vl@ShippingTown \\ \vl@ShippingLand }% }% \put(93bp,257bp){\lfitbox[t]{447bp}{56bp}{% \begin{sloppypar}\vl@Content\end{sloppypar}}}% \endgroup } \AtPageLowerLeft{% \put(57bp,58bp){% \linethickness{1.4bp}% \framebox(\textwidth,99bp){}% \put(0,83bp){\line(-1,0){\textwidth}}% } } }% \emergencystretch=3em % \pagestyle{empty} \endinput