Expand-InvoiceTemplate #
ÜBERSICHT #
Löst Platzhalter in Template-Strings anhand von Rechnungsdaten auf.
SYNTAX #
Expand-InvoiceTemplate [-Template] <string> [[-Conn] <__ComObject>] [[-Udl] <string>] [[-ConnStr]
<string>] [[-InvoiceNo] <int>] [[-InvoiceId] <int>] [[-Variables] <hashtable>]
[<CommonParameters>]
BESCHREIBUNG #
Die Funktion Expand-InvoiceTemplate ersetzt Platzhalter in Vorlagen-Strings (FileMask, Subject, Body etc.) mit Werten aus der Datenbank und Systemvariablen.
Delegiert die eigentliche Expansion an Expand-PlaceholderString, wodurch alle dort verfügbaren Features nutzbar sind:
%Feldname%— Datenbankfeld (KopfNummer, Datum, VorgangName, Name1, Ort etc.)%grundwerte.<Unterpfad>.<Feldname>%— SQL-Registry-Werte aus \MODULES\Grundwerte<Unterpfad> (z.B.%grundwerte.firmenstamm.Strasse%)%YYYY%,%MM%,%DD%,%HH%,%NN%,%SS%— Aktuelle Datum/Uhrzeit%SYSTEM.USERNAME%,%SYSTEM.TODAY_ISO%etc. — System-Variablen%DESKTOPDIR%,%COMPUTER%,%USER%,%TEMPDIR%,%DOCDIR%— System%FDformat:Feld%— Datumsformatierung (z.B.%FDdd.MM.yyyy:Datum%)%FFformat:Feld%— Zahlenformatierung (z.B.%FF#,##0.00:VkBrutto%)%?Feld%...%?|%...%?%— Bedingte Abschnitte mit Else%?Feld=Wert%,%?Feld^Prefix%,%?Feld*Enthält%— Vergleiche%L20:Feld%— Feste Breite,%URL:Feld%,%XML:Feld%— Kodierung%!Ref%— Rekursive Expansion- Alte Syntax:
$$invoicenumber$$wird automatisch zu%KopfNummer%migriert - Legacy:
%FN...%(alte Zahlenformatierung) wird zu%FF...%migriert
PARAMETER #
-Template #
Type: string
Der Template-String mit Platzhaltern.
-Conn #
Type: __ComObject
Ein bereits geöffnetes ADODB.Connection-Objekt.
-Udl #
Type: string
Pfad zu einer UDL-Datei.
-ConnStr #
Type: string
ADO-Connection-String.
-InvoiceNo #
Type: int
Rechnungsnummer (KopfNummer).
-InvoiceId #
Type: int
Interne Rechnungs-ID.
-Variables #
Type: hashtable
Optionale Hashtable mit zusätzlichen Variablen (z.B. @{format=‘ZUGFeRD’; client=‘MeinClient’}). Diese haben Vorrang vor Systemvariablen.
AUSGABEN #
string
Der aufgelöste Template-String.
BEISPIELE #
$result = Expand-InvoiceTemplate -Template '%YYYY%-%MM%-%DD%-%VorgangName%-%KopfNummer%' `
-Conn $conn -InvoiceNo 20260271
# Ergebnis: "2026-04-04-Rechnung-20260271"
$result = Expand-InvoiceTemplate -Template '%VorgangName% %KopfNummer% (%format%)' `
-Conn $conn -InvoiceNo 20260271 -Variables @{format='ZUGFeRD'}
# Ergebnis: "Rechnung 20260271 (ZUGFeRD)"