Linux.FTP-Sync: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Root (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
(5 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== Dateiformat auf dem FTP-Server == | == Dateiformat auf dem FTP-Server == | ||
[[RF1-I]] | |||
'''Dateiname''' | '''Dateiname''' | ||
Zeile 20: | Zeile 20: | ||
R1.000;22.02.2006;12:34;ABCDEFGHIJKLMNOPQRST;1A2B3C4D5E6F7G8;UVWX;1234;9999;1;A;0.123456;0.120000;12<br> | R1.000;22.02.2006;12:34;ABCDEFGHIJKLMNOPQRST;1A2B3C4D5E6F7G8;UVWX;1234;9999;1;A;0.123456;0.120000;12<br> | ||
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> | ||
Zeile 31: | Zeile 25: | ||
FTP-Funktions Referenz: http://de3.php.net/manual/de/ref.ftp.php<br> | FTP-Funktions Referenz: http://de3.php.net/manual/de/ref.ftp.php<br> | ||
Eine PHP Script lädt die CSV Datei vom FTP-Server der Prüfmaschine in ein lokales Verzeichnis. Nach der Übertragung wir die Datei vom FTP-Server gelöscht. Das lokale Ablageverzeichnis muss für den OrgaMon sichtbar sein. | |||
<code> | <code> | ||
Zeile 40: | Zeile 35: | ||
c) Grösse der Datei im lokalen Filesystem bestimmen | c) Grösse der Datei im lokalen Filesystem bestimmen | ||
d) Wenn a=c die Datei auf dem FTP-Server löschen | d) Wenn a=c die Datei auf dem FTP-Server löschen | ||
</code> | |||
== crontab == | |||
<code> | |||
*/5 * * * * fils-ftp php /home/ftpheli/ftp_heli.php5 | |||
</code> | </code> | ||
Zeile 48: | Zeile 49: | ||
AuftragsObjektPfad=I:\Kundenumgebung\heli\Rohstoffe\ftp_area\ | 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 " | 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. | ||
Im Problemfall wird eine CSV in das " | |||
AuftragsAblagePfad=K:\Sicherung\heli\ | |||
Nach der Übernahme der CSV-Dateien werden diese in ein "~AuftragsAblagePfad~\Ablage" Verzeichnis verschoben um damit zu signalisieren, dass diese Datei bereits verarbeitet wurden.<br> | |||
Im Problemfall (z.B. "falsche Revisionsnummer", "Wert ist bereits in der Datenbank") wird eine CSV in das "~AuftragsAblagePfad~\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 == | == Zuordnungen der Felder in die Datenbank == | ||
Zeile 59: | Zeile 64: | ||
Zaehlertyp METERS.METERDATA2 | Zaehlertyp METERS.METERDATA2 | ||
Preufwerkzeug CALIBRATIONS.EQUIPMENTID | Preufwerkzeug CALIBRATIONS.EQUIPMENTID | ||
Membranhersteller METERS. | Membranhersteller METERS.METERDATA4 | ||
Chargennummer METERS. | Chargennummer METERS.METERDATA5 | ||
fortlNummer METERS.SERIALNUMBER | fortlNummer METERS.SERIALNUMBER | ||
Station_Pruefkammer METERS. | Station_Pruefkammer METERS.POSITIONNUMBER | ||
Kammer_Glocke METERS. | Kammer_Glocke METERS.METERDATA6 | ||
Messwert TESTS.METERPLOSS | Messwert TESTS.METERPLOSS | ||
Grenzwert TESTS.METERMAXPLOSS | Grenzwert TESTS.METERMAXPLOSS | ||
Pruefergebnis METERS. | Pruefergebnis METERS.METERDATA9 | ||
AUTO-QUELLE Datenbank | AUTO-QUELLE Datenbank | ||
------------------------------------------------------ | ------------------------------------------------------ | ||
GEN_CALIBRATIONID CALIBRATIONS.CALIBRATIONID | GEN_CALIBRATIONID CALIBRATIONS.CALIBRATIONID |
Aktuelle Version vom 5. Dezember 2006, 15:44 Uhr
Dateiformat auf dem FTP-Server
RF1-I 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
ftp_heli.php5
FTP-Funktions Referenz: http://de3.php.net/manual/de/ref.ftp.php
Eine PHP Script lädt die CSV Datei vom FTP-Server der Prüfmaschine in ein lokales Verzeichnis. Nach der Übertragung wir die Datei vom FTP-Server gelöscht. Das lokale Ablageverzeichnis muss für den OrgaMon sichtbar sein.
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
crontab
*/5 * * * * fils-ftp php /home/ftpheli/ftp_heli.php5
Ü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.
AuftragsAblagePfad=K:\Sicherung\heli\
Nach der Übernahme der CSV-Dateien werden diese in ein "~AuftragsAblagePfad~\Ablage" Verzeichnis verschoben um damit zu signalisieren, dass diese Datei bereits verarbeitet wurden.
Im Problemfall (z.B. "falsche Revisionsnummer", "Wert ist bereits in der Datenbank") wird eine CSV in das "~AuftragsAblagePfad~\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.METERDATA4 Chargennummer METERS.METERDATA5 fortlNummer METERS.SERIALNUMBER Station_Pruefkammer METERS.POSITIONNUMBER Kammer_Glocke METERS.METERDATA6 Messwert TESTS.METERPLOSS Grenzwert TESTS.METERMAXPLOSS Pruefergebnis METERS.METERDATA9 AUTO-QUELLE Datenbank ------------------------------------------------------ GEN_CALIBRATIONID CALIBRATIONS.CALIBRATIONID