Linux.FTP-Sync: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
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>
== crontab ==
<code>
*/5  *  *  *  *  fils-ftp  php /home/ftpheli/ftp_heli.php5
</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 ".\Ablage" Verzeichnis verschoben um damit zu signalisieren, dass diese Datei bereits verarbeitet wurden.<br>
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 ".\Unlesbar" Verzeichnis verschoben, laufen hier Dateien auf, so muss nach der Ursache in der CSV Datei oder der Datenbank gesucht werden.<br>
 
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.METERDATA3
  Membranhersteller          METERS.METERDATA4
  Chargennummer              METERS.FIELD_ORDER
  Chargennummer              METERS.METERDATA5
  fortlNummer                METERS.SERIALNUMBER
  fortlNummer                METERS.SERIALNUMBER
  Station_Pruefkammer        METERS.METERDATA4
  Station_Pruefkammer        METERS.POSITIONNUMBER
  Kammer_Glocke              METERS.METERDATA5
  Kammer_Glocke              METERS.METERDATA6
  Messwert                  TESTS.METERPLOSS
  Messwert                  TESTS.METERPLOSS
  Grenzwert                  TESTS.METERMAXPLOSS
  Grenzwert                  TESTS.METERMAXPLOSS
  Pruefergebnis              METERS.GEARS1
  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