Übersicht FTP Upload



Mit diesem Funktionsbaustein können Dateien auf einen FTP, SFTP oder SCP Server hochgeladen werden. Der Upload wird bei FTP vom Programm ftp-upload, bei SFTP und SCP vom OpenSSH Client (sftp bzw. scp, jeweils mit sshpass) durchgeführt und steht daher nur auf der Linux Steuerung zur Verfügung.


Eingänge

TR
Trigger
Bei steigender Flanke wird der Upload gestartet. Läuft bereits ein Upload dieses Bausteins, wird die Flanke ignoriert. Ein Upload wird nach spätestens 300 Sekunden abgebrochen.

Ausgänge

ER
Fehler
Rückgabewert des Upload Programms. 0 = Upload erfolgreich, ungleich 0 = Fehler. 124 bedeutet, dass der Upload nach 300 Sekunden abgebrochen wurde. Negative Werte sind interne Fehler: -1 = keine Datei zum Hochladen, -2 = benötigtes Programm nicht gefunden (bei SFTP sftp bzw. sshpass), -3 = Fehler beim Erstellen der SFTP Batch-Datei, -4 = eine angegebene Datei wurde nicht gefunden.

Parameter

Protokoll
FTP: Upload über das FTP Protokoll (unverschlüsselt).
SFTP: Upload über SFTP (SSH, verschlüsselt).
SCP: Upload über SCP (SSH, verschlüsselt). Die Dateien werden in das Home-Verzeichnis des Benutzers auf dem Server kopiert.
Bei SFTP und SCP erfolgt die Anmeldung mit Benutzername und Passwort, der Host-Schlüssel wird nicht geprüft.
Dateiname
Dateiname, durch Semikolon getrennt können mehrere Dateinamen angegeben werden.
Pfad
Automatisch: Die Dateien werden im Arbeitsverzeichnis des Projektes gesucht, daher benötigen beispielsweise CSV Dateien keine Pfadangabe.
Manuell: Im Parameter Dateiname wird der vollständige Pfad der Datei angegeben. Dies ist nur für Sonderfälle nötig.
Host
Hostname des FTP, SFTP bzw. SCP Servers
Port
Nur für SFTP und SCP. Port des SSH Servers, 0 = Standard-Port 22. Bei FTP wird dieser Parameter nicht ausgewertet, FTP verwendet immer Port 21.
Benutzername
Benutzername
Passwort Passwort. Sonderzeichen wie Klammern, Leerzeichen oder geschweifte Klammern können direkt eingegeben werden. Hinweis beim Aktualisieren älterer Projekte: Früher mussten solche Passwörter in einfache Anführungszeichen gesetzt werden. Das ist nicht mehr nötig. Die Anführungszeichen sind aus bestehenden Projekten zu entfernen, da sie sonst als Teil des Passwortes übertragen werden und die Anmeldung am FTP Server fehlschlägt. Das gilt ebenso für Host, Benutzername und Dateiname.
Datei umbenennen Optional. Mit dieser Option kann die Datei umbenannt werden. Beispielsweise um ein Datum anzuhängen. Beispiel: log_%d_%m_%Y.csv wird in log_10_11_2023.csv umbenannt. Ist in diesem Parameter nichts angegeben, wird der originale Dateiname verwendet.
Werden im Parameter Dateiname mehrere Dateien angegeben, kann auch hier für jede Datei ein eigenes Muster durch Semikolon getrennt angegeben werden. Beispiel: Dateiname log.csv;error.csv, Umbenennen log_%Y%m%d.csv;error_%Y%m%d.csv. Für Dateien ohne eigenes Muster wird der Originalname verwendet. Zum Umbenennen wird eine Kopie der Datei erzeugt, die nach dem Upload wieder gelöscht wird.
Datei umbenennen Offset Zeit Offset in Sekunden für das Umbenennen der Datei. Beispielsweise -3600 bedeutet minus 1 Stunde. Wird die Datei beispielsweise um 0:00h versendet und man möchte das Datum des Vortages verwenden, kann mit diesem Parameter ein Offset angegeben werden um das Datum des Vortages zu verwenden.




Folgende Platzhalter sind für das Umbenennen verfügbar:

%a Abgekürzter Name des Wochentags Sun
%A Vollständiger Name des Wochentags Sunday
%b Abgekürzter Monatsname Mar
%B Vollständiger Monatsname March
%c Zeit+Datum Sun Aug 19 02:56:02 2012
%d Tag des Monats (01-31) 19
%H Stunde im 24-Stunden-Format (00-23) 14
%I Stunde im 12h-Format (01-12) 05
%j Tag des Jahres (001-366) 231
%m Monat als Dezimalzahl (01-12) 08
%M Minute (00-59) 55
%p Bezeichnung AM (0-12) oder PM (12-0) PM
%S Sekunde (00-61) 02
%U Wochennummer mit dem ersten Sonntag als erstem Tag der ersten Woche (00-53) 33
%w Wochentag als Dezimalzahl mit Sonntag als 0 (0-6) 4
%W Wochennummer mit dem ersten Montag als erstem Tag der ersten Woche (00-53) 34
%x Datum 08/19/12
%X Zeit 02:50:06
%y Jahr, letzte zwei Ziffern (00-99) 01
%Y Jahr 2012
%Z Name oder Abkürzung der Zeitzone CDT
%% Prozent Zeichen %



Siehe auch allgemeine Parameter aller Funktionsbausteine.