Invoke-OrdersBatch #
ÜBERSICHT #
Verarbeitet eine Liste von EDIFACT-ORDERS-Dateien aus einem Ordner (älteste zuerst) in einer Pipeline: ConvertFrom-EdifactOrders → Import-SalesOrderSimulation → Show-Invoice → Convert-HtmlToPdf. Optional kann die Order auch importiert werden.
SYNTAX #
Invoke-OrdersBatch [-Datapath] <string> [[-Mask] <string>] [[-Order] <string>] [[-MaxFiles] <int>]
[[-SpecialSearch] <int>] [-NoPdf] [-CreateOrder]
BESCHREIBUNG #
Sucht *.edi (oder Mask) im Input-Ordner, sortiert nach LastWriteTime (älteste zuerst) und verarbeitet pro Datei die gesamte Kette. Fehler pro Datei beenden nicht den Batch. Ergebnis ist ein PSCustomObject mit Summen und einer Item-Liste.
PARAMETER #
-InputFolder #
Ordner mit den EDI-Dateien.
-Conn #
Datenbankverbindung (wie von Get-ConnByUdl zurückgegeben). Wird 1:1 an Import-SalesOrderSimulation übergeben.
-DataPath #
Type: string
Verzeichnis, in dem sich die JSON-Datenbank für Mail- oder Partner definitionen befindet (z. B. database\mail.json).
-Mask #
Type: string
Default: '*.edi'
Dateimaske (Default: *.edi).
-Order #
Type: string
Default: 'OldestFirst'
Sortierreihenfolge. OldestFirst (Default) oder NewestFirst.
-MaxFiles #
Type: int
Default: 0
Limit der zu verarbeitenden Dateien (0 = alle). Überzählige werden als Skipped gezählt/gelistet.
-SpecialSearch #
Type: int
Default: 1
Steuert die GLN basierte MATCH Logik. Wert 1 aktiviert die Suche Lieferadresse per GLN und MATCH Endung LIEFERUNG LIEFER LIEF. Der Präfix vor der Endung wird für die Rechnungsadresse mit RECHNUNG oder RECH kombiniert. Standard 1.
-NoPdf #
Type: switch
Deaktiviert die PDF-Erzeugung. Stattdessen wird das generierte HTML-Dokument als E-Mail-Anhang versendet. Die interne Simulation und HTML-Erzeugung bleiben unverändert.
-CreateOrder #
Type: switch
Legt nach erfolgreicher Konvertierung und Simulation einen echten Auftrag in der EULANDA-Datenbank an. Es wird ausschließlich das RAW-XML verwendet. Ohne diesen Schalter erfolgt nur eine Simulation ohne Datenbankänderungen.
BEISPIELE #
$conn = Get-ConnByUdl -Udl "C:\EULANDA\EULANDA_1 Dreistern.udl"
Invoke-OrdersBatch `
-InputFolder '.\testdata\queues\postoffice\CONRAD\inbound\ORDERS' `
-Conn $conn `
-DataPath '.\database' `
-MaxFiles 5 `
-Order OldestFirst `
-Verbose