Rechnungen schreiben mit KOMA-Script
Ich habe lange nach einer flexiblen Lösung für Rechnungen gesucht und mir dabei folgende Lösung gestrickt, die ich hier vorstellen möchte:
    \documentclass[parskip=half]{scrlttr2}
    %Spracheinstellungen
    \usepackage{polyglossia}
    \setdefaultlanguage[spelling = new]{german}
    \usepackage{blindtext, xltxtra}    %The xltxtra-package automatically loads the following packages: fixltx2e, metalogo, xunicode, fontspec
    
    % zum Rechnen in Tabellen
    \usepackage{fp, xstring, spreadtab, numprint}
    % Um das Euro-Symbol typografisch korrekt auszugeben und es rechts vom Betrag zu stellen, wird das Paket eurosym mit der Option [right] geladen
    
    \usepackage[right]{eurosym}
    
    %Mit den folgenden Optionen wird bei der PDF-Ausgabe des LaTeX-Dokuments der englische Dezimalpunkt als Dezimalkomma ausgegeben.
    
    \STsetdecimalsep{,} % Werte müssen weiterhin mit Punkt geschrieben sein, Ausgabe erfolgt mit Komma
    \STautoround*{2} % auf 2 Ziffern runden
    
    % Jetzt werden die Variablen definiert, die durch den Befehl \usekomavar expandiert werden können. Aber innerhalb der Umgebung spreadtab funktioniert das in der Tabelle für Berechnungen nicht. Dank der dante-Mailingliste muss einfach nur eine weitere Variable angelegt werden, in der das Token bereits expandiert gespeichert werden kann. Das erfolgt durch den Befehl \usekomavar[\def\nstundensatz]{stundensatz}. Der Inhalte der Variablen "stundensatz" kann also mit \usekomavar{stundensatz} oder mit \nstundensatz ausgegeben werden.
    
    \newkomavar{leistung}
    \setkomavar{leistung}{September}
    \newkomavar{stunden}
    \setkomavar{stunden}{67.89}
    \usekomavar[\def\nstunden]{stunden}
    \newkomavar{stundensatz}
    \setkomavar{stundensatz}{12.34}
    \usekomavar[\def\nstundensatz]{stundensatz}
    \newkomavar{mwst}
    \setkomavar{mwst}{19}
    \usekomavar[\def\nmwst]{mwst}
    \setkomavar{invoice}{xxyyzz-2013}
    \newkomavar{bank} \setkomavar{bank}{Meine Bank\\BLZ 123 456 78\\Kontonummer 123 456 789 00}
    
    %Nun der eigentliche Brief - die Rechnung:
    
    \begin{document}
    \begin{letter}{Firma Freundlich\\Rechnugstraße 12\\45678 Ortsname}
    \opening{Sehr geehrte Damen und Herren,}
    Wir erbrachten im Monat \usekomavar{leistung} folgende Leistungen:
    
    % Hier nun die rechnende Tabelle (Die Option [\STsavecell\gesamtsumme{c3}]) speichert das Endergebnis (Zelle c3 der Tabelle), um das Ergebnis auch außerhalb der Tabelle verwenden zu können):
    
    % Die Zahlwerte werden in :={Variable oder Zahlwert} gesetzt; so kann "spreadtab" zwischen Text und Zahlwerten unterscheiden. Bleibt :={} leer, wird das als leerer Zahlwert (0) verstanden, der jedoch nicht ausgegeben wird.
    \begin{spreadtab}[\STsavecell\gesamtsumme{c3}]{{tabular}{p{55mm}p{41mm}r}}	
    :={\nstunden} Stunden	für dies und das &	à \EUR{:={\nstundensatz}}		&	\EUR{\numprint{:={a1*b1}}}\\
    :={}					&  zuzüglich :={}19\,\% USt.		&	\EUR{\numprint{:={\nmwst*(c1)/100}}}\\
    :={}					&	:={}Summe						&	\EUR{\numprint{:={c1+c2}}}\\ 
    \end{spreadtab}
    
    Bitte überweisen Sie den Rechnungsbetrag von \EUR{\numprint{\gesamtsumme}} unter Angabe der Rechnungsnummer \usekomavar{invoice} auf das Konto:
    
    \usekomavar{bank}
    \closing{Mit freundlichen Grüßen}   
    \end{letter}
    \end{document}
Für Anregungen und Kritik jetzt schon vielen Dank!