diff --git a/rechnung.ini b/rechnung.ini index 3e51680..686e959 100644 --- a/rechnung.ini +++ b/rechnung.ini @@ -1,11 +1,11 @@ # file: rechnung.ini # -# Bei adresse1 muss am Ende ein Semikolon (;) stehen. Dies sorgt dafür, dass im +# Bei adresse1 müssen an jedem Zeilenumbruch zwei Semikola (;;;;) stehen. Dies sorgt dafür, dass im # LaTeX-Code dies durch zwei Backslashes ersetzt wird. [start] kunde=Firma A -adresse= Strasse A; 012345 Stadt A; +adresse= Strasse A;; 012345 Stadt A;; anrede=Sehr geehrte Damen und Herren, einleitung=anbei die Rechnung anzahl=1 @@ -17,7 +17,7 @@ lfdnr=1 [start] kunde=Firma B -adresse=Personalabteilung; Frau B; Strasse B; 01234 Stadt B; +adresse=Personalabteilung;; Frau B;; Strasse B;; 01234 Stadt B;; anrede=Sehr geehrte Frau B, einleitung=Wie in Vertrag 08/15 vereibart berechne ich anzahl=11 @@ -29,7 +29,7 @@ lfdnr=1 [start] kunde=Herr C -adresse=Strasse C; 12345 Stadt C; +adresse=Strasse C;; 12345 Stadt C;; anrede=Sehr geehrter Herr C, einleitung=anbei die Rechnung anzahl=1 diff --git a/rechnung.sh b/rechnung.sh index 4080fd0..0cf6a16 100755 --- a/rechnung.sh +++ b/rechnung.sh @@ -460,27 +460,29 @@ make_invoice() ( dead_days="16" fi + # Bei der Ersetzung unten wird jedes ';' durch genau ein '\' ersetzt. Daher ist die Anzahl der ';' wichtig. month_ascii=$(date '+%B') inv_date=$(date '+%Y%m%d') - inv_dead=$(date -d "+${dead_days}days" '+%d.\\,%m.\\,%Y') + inv_dead=$(date -d "+${dead_days}days" '+%d.;,%m.;,%Y') rechnungsnummer="$inv_date--$LFDNR" subject="Rechnung zu $SHORT" filename="$(date '+%Y%m%d')_Rechnung_${month_ascii}_$(echo "$KUNDE" | $TR_BIN " " "_").ltx" - buffer="$KUNDE; $ADRESSE" - anschrift="${buffer//;/\\\\\\\\}" + buffer="$KUNDE;; $ADRESSE" + #anschrift=$(echo "$buffer" | sed 's/;/\\\\/g') + print_info "Erstelle Rechnung: $filename" { printf "s!#LCOFILE#!%s!\n" "$LCO" printf "s!#SUBJECT#!%s!\n" "$subject" printf "s!#ANREDE#!%s!\n" "$ANREDE" - printf "s!#ANSCHRIFT#!%s!\n" "$anschrift" + printf "s!#ANSCHRIFT#!%s!\n" "$(echo "$buffer" | sed 's/;/\\\\/g')" printf "s!#RECHNUNGSNUMMER#!%s!\n" "$rechnungsnummer" printf "s!#ANZAHL#!%s!\n" "$ANZAHL" printf "s!#POSITION#!%s!\n" "$POSITION" printf "s!#EINLEITUNG#!%s!\n" "$EINLEITUNG" printf "s!#BETRAG#!%s!\n" "$BETRAG" - printf "s!#DEADLINE#!%s!\n" "$inv_dead" + printf "s!#DEADLINE#!%s!\n" "$(echo "$inv_dead" | sed 's/;/\\\\/g')" } >$SEDFILE cp "$TEMPLATEFILE" "$filename" $SED_BIN -i -f "$SEDFILE" "$filename"