% !TEX root = ../Main.tex % Input Validation: Summe \newcommand{\validateCurrency}{\detokenize{ var amount = String(event.value ?? "0").replaceAll(".", "").replaceAll(",", "."); if (amount && (isNaN(amount) || parseFloat(amount) < 0)) { app.alert("Ungueltiger Betrag: " + event.value + ". Bitte geben Sie eine gueltige Zahl ein."); event.rc = false; } else { event.value = parseFloat(amount).toLocaleString("de-DE", { minimumFractionDigits: 2, maximumFractionDigits: 2 }); } }} \begin{Form}[action=http://localhost:5000/,method=post] \paPage{Vergleichsangebote}{ % Auswahl der Position in der Kostenaufstellung, für die Vergleichsangebote eingereicht werden; Bezeichnung des benötigten Angebots \vspace{-2em} \FormSection{}{% % Nebeneinander: Links Position, rechts Bezeichnung; Tabellenzelle; Ohne Überschrift; Ohne Bezeichner (Inhalt des Drop-downs enthält "Position #") \begin{tabular}{@{}p{0.1\textwidth}p{0.92\textwidth}@{}} \textbf{Position} & \textbf{Bezeichnung} \\ \CustomChoiceMenuDefault{pa-offer-position}{}{width=\linewidth,default=-}{ -=-, Pos. 1=1, Pos. 2=2, Pos. 3=3, Pos. 4=4, Pos. 5=5, Pos. 6=6, Pos. 7=7, Pos. 8=8, Pos. 9=9, Pos. 10=10, Pos. 11=11, Pos. 12=12, Pos. 13=13, Pos. 14=14, Pos. 15=15, Pos. 16=16, Pos. 17=17, Pos. 18=18, Pos. 19=19, Pos. 20=20, Pos. 21=21, Pos. 22=22, Pos. 23=23, Pos. 24=24 } & \CustomTextFieldDefault{pa-offer-name}{}{Bezeichnung}{width=\linewidth} \\ \end{tabular} } \FormSection{Angebot 1 (bevorzugt)}{% \begin{tabular}{@{}p{0.3\textwidth}p{0.35\textwidth}p{0.35\textwidth}@{}} \textbf{Bezeichnung} & \multicolumn{2}{p{0.73\textwidth}}{ \CustomTextFieldDefault{pa-offer-1-provider}{}{Anbieter}{width=\linewidth} } \\ \textbf{Angebotssumme} & & \hspace{\fill} \CustomTextFieldDefault{pa-offer-1-amount-euro}{}{Angebotssumme (\euro)}{width=6em,align=2,default={0,00},validate=\validateCurrency}~\euro \\ \end{tabular} \vspace{0.5em}\\ \textbf{Kommentar / Begründung:}\vspace{0.5em}\\ \TextField[ name=pa-offer-1-comment, multiline, width=1.055\textwidth, height=3\baselineskip, bordercolor=black, backgroundcolor=white, charsize=12pt, align=0, readonly=\isReadOnlyVariant ]{}\vspace{-1.5em} } \FormSection{Angebot 2}{% \begin{tabular}{@{}p{0.3\textwidth}p{0.35\textwidth}p{0.35\textwidth}@{}} \textbf{Bezeichnung} & \multicolumn{2}{p{0.73\textwidth}}{ \CustomTextFieldDefault{pa-offer-2-provider}{}{Anbieter}{width=\linewidth} } \\ \textbf{Angebotssumme} & & \hspace{\fill} \CustomTextFieldDefault{pa-offer-2-amount-euro}{}{Angebotssumme (\euro)}{width=6em,align=2,default={0,00},validate=\validateCurrency}~\euro \\ \end{tabular} \vspace{0.5em}\\ \textbf{Kommentar:}\vspace{0.5em}\\ \TextField[ name=pa-offer-2-comment, multiline, width=1.055\textwidth, height=2\baselineskip, bordercolor=black, backgroundcolor=white, charsize=12pt, align=0, readonly=\isReadOnlyVariant ]{}\vspace{-1.5em} } \FormSection{Angebot 3}{% \begin{tabular}{@{}p{0.3\textwidth}p{0.35\textwidth}p{0.35\textwidth}@{}} \textbf{Bezeichnung} & \multicolumn{2}{p{0.73\textwidth}}{ \CustomTextFieldDefault{pa-offer-3-provider}{}{Anbieter}{width=\linewidth} } \\ \textbf{Angebotssumme} & & \hspace{\fill} \CustomTextFieldDefault{pa-offer-3-amount-euro}{}{Angebotssumme (\euro)}{width=6em,align=2,default={0,00},validate=\validateCurrency}~\euro \\ \end{tabular} \vspace{0.5em}\\ \textbf{Kommentar:}\vspace{0.5em}\\ \TextField[ name=pa-offer-3-comment, multiline, width=1.055\textwidth, height=2\baselineskip, bordercolor=black, backgroundcolor=white, charsize=12pt, align=0, readonly=\isReadOnlyVariant ]{}\vspace{-1.5em} } } \end{Form}