Linux.FTP-Sync: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
== Dateiformat auf dem FTP-Server ==
'''Dateiname'''
TTMMJJ_NNNN.CSV
'''Spalteninhalte'''
[[Bild:Ftp-sync-fileformat.png]]
Ich stimme hiermit zu, dass im Echtbetrieb die Spaltenüberschriften in der CSV weggelassen werden dürfen. Mindestanforderung ist dann jedoch eine neue Spalte (Spalte 1) in der die Format-Revisions-Nummer steht (in diesem Fall die "R1.000"). So können wir im laufenden Produktiv-Betrieb gleitend von einem Format auf ein anderes übergehen. Andernfalls sehe ich Probleme.
mein Angebot ist auch in der Anlage.
== crontab ==
== crontab ==



Version vom 17. Juli 2006, 08:58 Uhr

Dateiformat auf dem FTP-Server

Dateiname

TTMMJJ_NNNN.CSV


Spalteninhalte

Ich stimme hiermit zu, dass im Echtbetrieb die Spaltenüberschriften in der CSV weggelassen werden dürfen. Mindestanforderung ist dann jedoch eine neue Spalte (Spalte 1) in der die Format-Revisions-Nummer steht (in diesem Fall die "R1.000"). So können wir im laufenden Produktiv-Betrieb gleitend von einem Format auf ein anderes übergehen. Andernfalls sehe ich Probleme.

mein Angebot ist auch in der Anlage.


crontab

*/5  *  *  *  *  fils-ftp  /home/fils-ftp/ftp-sync.sh

ftp-sync.sh

#!/bin/bash
syslog "FTP-Sync running"
php /home/fils-ftp/ftp-sync.php5

ftp-sync.php5

FTP-Funktions Referenz: http://de3.php.net/manual/de/ref.ftp.php

1) Login in den FTP Server
2) Auflisten aller Dateien *.csv in eine Variable
3) Durchlaufen der Variable und im Falle das die Datei älter als 3 Sekunden ist:
 a) Grösse der Datei bestimmen
 b) Datei downloaden
 c) Grösse der Datei im lokalen Filesystem bestimmen
 d) Wenn a=c die Datei auf dem FTP-server löschen

Übernahme in die Datenbank

wird vom OrgaMon übernommen! im Autostart-Moment werden Verzeichnis-Inhalte des FTP-down-Sync abgesaugt und in das JJJ-MM-TT Verzeichnis verschoben, dabei ist das innere Datum aus der Datei zu nehmen. Der CALIBRATIONID ist nach folgender Regel zu berechnen: