Invoke-SftpUpload

EulandaXtools — Funktionsreferenz

Invoke-SftpUpload

ÜBERSICHT

Lädt Dateien über SFTP für einen definierten Partner hoch und führt lokale Nachbearbeitungen aus.

SYNTAX

Invoke-SftpUpload [-Partner] <hashtable> [[-TechnicalEmails] <string>] [-PartnerName] <string>
    [-DataPath] <string> [[-LogFile] <string>]

BESCHREIBUNG

Die Funktion 'Invoke-SftpUpload' führt einen SFTP-Upload durch, basierend auf den Angaben eines Partnerobjekts. Es werden alle passenden Dateien aus einem lokalen Verzeichnis gemäß definierter Dateimaske ausgewählt, hochgeladen und optional anschließend gelöscht, verschoben oder umbenannt (postLocalAction). Der Upload erfolgt entweder durch direkte Übergabe des Partnerobjekts oder über den Namen in einer JSON-Datenbank. Die Funktion protokolliert alle Aktionen, zählt Erfolge/Fehler, und gibt ein strukturiertes Ergebnis zurück.

PARAMETER

-Partner

Type: hashtable

Ein Hashtable mit allen Verbindungs- und Konfigurationsdaten des Partners (Pflicht bei ParameterSet 'ByPartner').

-TechnicalEmails

Type: string
Default: $null

Optionale Empfänger für technische Fehlermeldungen (z. B. bei Uploadfehlern).

-PartnerName

Type: string

Der Name des Partners, dessen Konfiguration aus der JSON-Datenbank geladen wird (Pflicht bei ParameterSet 'ByName').

-DataPath

Type: string

Pfad zur JSON-Datenbank, aus der Partnerinformationen gelesen werden (Pflicht bei ParameterSet 'ByName').

-LogFile

Type: string
Default: $null

Optionaler Pfad zu einer Logdatei, in die Fehlermeldungen zusätzlich geschrieben werden sollen.

AUSGABEN

Ein [pscustomobject] mit folgenden Eigenschaften:

BEISPIELE

# Upload via Partnerobjekt
$partner = @{ partnerName = 'KundeX'; connection = @{ sftp = @{ server = 'host'; user = 'xyz' } }; localFolders = @{ uploadPath = 'C:\Daten' } }
Invoke-SftpUpload -Partner $partner
# Upload per Partnername (aus JSON-Datenbank)
Invoke-SftpUpload -PartnerName 'KundeX' -DataPath 'C:\Config\partner.json'