Linux.FTP-Sync: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
Zeile 21: | Zeile 21: | ||
R1.000;20.07.06;16:25;G4 DN 25 D 250;000000000000;M;317;1431;2;2;+0.1815001E-05;+1.0000010E-04;00 | R1.000;20.07.06;16:25;G4 DN 25 D 250;000000000000;M;317;1431;2;2;+0.1815001E-05;+1.0000010E-04;00 | ||
</code> | </code> | ||
== crontab == | == crontab == | ||
Zeile 63: | Zeile 42: | ||
</code> | </code> | ||
== Übernahme in die Datenbank == | == Übernahme der Daten in die Datenbank == | ||
Das CSV-Quellverzeichnis (OrgaMon muss lese/schreib und verzeichnis-Anlege-Rechte haben) wird im Systemparamter: | |||
AuftragsObjektPfad=I:\Kundenumgebung\heli\Rohstoffe\ftp_area\ | |||
angegeben. Dabei werden alle Dateien verarbeitet, die der Maske *.CSV entsprechen! Dies wird vom OrgaMon automatisch im Rahmen der Tagwache übernommen. Oder zu jeder Zeit sobald der Abfrage-Arbeitsplatz gestartet wird. Nach der Übernahme der CSV-Dateien werden diese in ein ".\Ablage" Verzeichnis verschoben um damit zu signalisieren, dass diese Datei bereits verarbeitet wurden.<br> | |||
Im Problemfall wird eine CSV in das ".\Unlesbar" Verzeichnis verschoben, laufen hier Dateien auf, so muss nach der Ursache in der CSV Datei oder der Datenbank gesucht werden.<br> | |||
== Zuordnungen der Felder in die Datenbank == | |||
CSV-Datei Datenbank | |||
--------------------------------------------------- | |||
FormatRevision - | |||
Datum+Uhrzeit CALIBRATIONS.FIELD_DATE | |||
Zaehlertyp METERS.METERDATA2 | |||
Preufwerkzeug CALIBRATIONS.EQUIPMENTID | |||
Membranhersteller METERS.METERDATA3 | |||
Chargennummer METERS.FIELD_ORDER | |||
fortlNummer METERS.SERIALNUMBER | |||
Station_Pruefkammer METERS.METERDATA4 | |||
Kammer_Glocke METERS.METERDATA5 | |||
Messwert TESTS.METERPLOSS | |||
Grenzwert TESTS.METERMAXPLOSS | |||
Pruefergebnis METERS.GEARS1 | |||
AUTO-QUELLE Datenbank | |||
------------------------------------------------------ | |||
GEN_CALIBRATIONID CALIBRATIONS.CALIBRATIONID |
Version vom 26. Juli 2006, 22:44 Uhr
Dateiformat auf dem FTP-Server
Dateiname
TTMMJJ_NNNN.CSV
Spalteninhalte
Beispieldatei
ACHTUNG: Die Zeile mit den Spaltenüberschriften werden im Echtbetrieb nicht erzeugt!
FormatRevision;Datum;Uhrzeit;Zaehlertyp;Pruefwerkzeug;Membranhersteller;Chargennummer;fortlNummer;Station_Pruefkammer;Kammer_Glocke;Messwert;Grenzwert;Pruefergebnis
R1.000;22.02.2006;12:34;ABCDEFGHIJKLMNOPQRST;1A2B3C4D5E6F7G8;UVWX;1234;9999;1;A;0.123456;0.120000;12
R1.000;20.07.06;16:25;G4 DN 25 D 250;000000000000;M;317;1431;2;2;+0.1815001E-05;+1.0000010E-04;00
crontab
*/5 * * * * fils-ftp php /home/ftpheli/ftp_heli.php5
ftp_heli.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 ins lokale Dateisystem downloaden
c) Grösse der Datei im lokalen Filesystem bestimmen
d) Wenn a=c die Datei auf dem FTP-Server löschen
Übernahme der Daten in die Datenbank
Das CSV-Quellverzeichnis (OrgaMon muss lese/schreib und verzeichnis-Anlege-Rechte haben) wird im Systemparamter:
AuftragsObjektPfad=I:\Kundenumgebung\heli\Rohstoffe\ftp_area\
angegeben. Dabei werden alle Dateien verarbeitet, die der Maske *.CSV entsprechen! Dies wird vom OrgaMon automatisch im Rahmen der Tagwache übernommen. Oder zu jeder Zeit sobald der Abfrage-Arbeitsplatz gestartet wird. Nach der Übernahme der CSV-Dateien werden diese in ein ".\Ablage" Verzeichnis verschoben um damit zu signalisieren, dass diese Datei bereits verarbeitet wurden.
Im Problemfall wird eine CSV in das ".\Unlesbar" Verzeichnis verschoben, laufen hier Dateien auf, so muss nach der Ursache in der CSV Datei oder der Datenbank gesucht werden.
Zuordnungen der Felder in die Datenbank
CSV-Datei Datenbank --------------------------------------------------- FormatRevision - Datum+Uhrzeit CALIBRATIONS.FIELD_DATE Zaehlertyp METERS.METERDATA2 Preufwerkzeug CALIBRATIONS.EQUIPMENTID Membranhersteller METERS.METERDATA3 Chargennummer METERS.FIELD_ORDER fortlNummer METERS.SERIALNUMBER Station_Pruefkammer METERS.METERDATA4 Kammer_Glocke METERS.METERDATA5 Messwert TESTS.METERPLOSS Grenzwert TESTS.METERMAXPLOSS Pruefergebnis METERS.GEARS1 AUTO-QUELLE Datenbank ------------------------------------------------------ GEN_CALIBRATIONID CALIBRATIONS.CALIBRATIONID