[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    May 2007
    Beiträge
    295

    Question FTP-Immer aktuellstes File "Get"n

    Hi!

    Ich habe eine Frage an euch, vieleicht kennt ja jemand die Antwort

    Ich soll von einem Server im Internet mehrere .csv Dateien per FTP auf unsere iSeries holen und dann weiterverarbeiten.
    Das weiterverarbeiten funktioniert schon recht gut (CPYFRMIMPF etc) nur ich möchte es automatisieren das die .csv Datei geholt wird. Das Problem ist die Namensgebung der files:

    Zum Beispiel:

    PHP-Code:
    firma-ekpreis-Jul18_23Uhr30.csv 
    Kann ich per CLP irgendwie so eine *LIKE abfrage machen und das neueste damit rausfinden?

    Hat da jemand eine Idee?

    Danke im Voraus!

    Mfg
    Greets
    Christian
    Anwendungsentwickler und ein bissal Systemoperator
    https://github.com/prsbrc
    LinkedIn

  2. #2
    Registriert seit
    Aug 2004
    Beiträge
    923
    mh...
    wie gross ist denn da das Mengengerüst ungefähr?
    Gibt es da alle 30 Minuten eine neue Datei? Sprich gibt es:
    firma-ekpreis-Jul18_21Uhr30.csv
    firma-ekpreis-Jul18_22Uhr00.csv
    firma-ekpreis-Jul18_22Uhr30.csv
    firma-ekpreis-Jul18_23Uhr00.csv
    firma-ekpreis-Jul18_23Uhr30.csv

    Und heissen die immer so?
    oder gibt es auch
    firma-ekpreis-Jul18_23Uhr29.csv ?

    Also die Frage ist wie genau ist das Schema und mit was muss man rechen dort zu finden/nicht zu finden.

    Wenn der Name immer gleich ist und z.B. die Uhrzeit immer im 30 Minutentakt geht, könnte man sich den Namen für den GET ja zusammenbasteln und zuerst versuchen 23:30 zu GETn und wnn nicht gefunden dann 23:00 uns.. immer rückwärts gezählt.

    Andere Variante:
    Ein Inhaltverzeichnis ausgeben (LS DIR oder so) und das in nem eigenen Programm einlesen und verarbeiten und dann per Programmlogik selber entscheiden.
    Letztere Möglichkeit ist nicht schwer zu proggen denke ich. (Hab sowas ähnliches mal gemacht sprich Verzeichnis als Text rüberholen und dann auslesen)

    k.

    Nachtrag:
    Habs gefunden. Einfach im CL nen OVRDBF FILE(OUTPUT) auf ne Datei machen, dann im FTP nen DIR und dann per selbstgestricktes RPG die OUTFILE auswerten.

    k.

    Hängt eben nun von den Antworten auf meine Fragen ab, was einfacher zu realisieren ist denke ich.

  3. #3
    Registriert seit
    May 2007
    Beiträge
    295
    Der Name ändert sich immer.
    Es gibt so ca fast jeden Tag 1 oder 2 neue Dateien die ich einlesen soll ...

    ZB:
    ......Jul17_11Uhr10.csv
    ......Jul18_11Uhr30.csv
    ......Jul18_23Uhr30.csv
    etc, etc, etc ...

    Ich werde beide varianten mal testen.

    Vielen Dank!

    MfG
    Greets
    Christian
    Anwendungsentwickler und ein bissal Systemoperator
    https://github.com/prsbrc
    LinkedIn

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Jede Datei hat ein Erstellungsdatum, nimm dieses doch.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Aug 2004
    Beiträge
    923
    hihi,

    genau das habe ich bewusst nicht vorgeschlagen.
    Der Teufel ist ein Eichhörnchen oder wie das heisst.
    Dann fummelt da jemand manuell rum, die Datei ist ne alte und hat trotzdem das aktuellste Datum....
    nee nee... Regel Nummer eins -> dont trust!

    kuempi

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Deswegen verschiebe ich verarbeitete Dateien immer in ein anderes Verzeichnis. Dann stellt sich die Frage erst gar nicht.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  7. #7
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    jaja, das HK Graber Prinzip und seine Tücken, wer vor Eichhörnchen sicher sein will, muss vorwärts gerichtet synchronisieren, entweder stößt der, der die Dateien erzeugt die Folgeverarbeitung direkt an (per RPC oder FTP remote Command) oder man journalisiert das IFS Verzeichnis (dafür gibt es das !!!) und auf das event, dass ein neuer Eintrag auftaucht, wird automatisch die Weiterverarbeitung angestoßen (RCVJRNE ist dein Freund), die dann auch den Dateinamen kennt und alles damit machen kann, was sie für nötig hält.

    mfg

    Dieter Bender

    Zitat Zitat von kuempi von stein Beitrag anzeigen
    hihi,

    genau das habe ich bewusst nicht vorgeschlagen.
    Der Teufel ist ein Eichhörnchen oder wie das heisst.
    Dann fummelt da jemand manuell rum, die Datei ist ne alte und hat trotzdem das aktuellste Datum....
    nee nee... Regel Nummer eins -> dont trust!

    kuempi
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  8. #8
    Registriert seit
    May 2007
    Beiträge
    295
    Hi!
    Ich machs jetzt folgendermaßen:

    Ich hole mir per FTP/LS die liste der Dateien im Ordner in eine lokale temporäre Tabelle.
    Per RPG lese ich diese Tabelle aus, stöpsle mir aus dem dateinamen das Datum zusammen, vergleiche es mit dem heutigem Datum und mit einer weiteren Tabelle die alle Dateinamen enthält welche schon daowngeloadet wurden und hole mir das aktuelle File.
    Ist zwar etwas kompliziert aber funktioniert

    Danke nochmals für die Hinweise!

    MfG
    Greets
    Christian
    Anwendungsentwickler und ein bissal Systemoperator
    https://github.com/prsbrc
    LinkedIn

Similar Threads

  1. fehlende DDS Sourcen: disassembler?
    By emax in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 06-10-06, 11:01
  2. Savf File per FTP
    By wuwu in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 18-08-06, 08:09
  3. FTP von V5R3M0 nach V5R4M0
    By Frank.Sobanek in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 22-06-06, 20:22
  4. Nach FTP: DAMAGED MEMBER FILE
    By warwickbassguitar in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 05-09-05, 21:10
  5. Savf kopieren
    By Joe in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 01-08-03, 13:50

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •