[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Mar 2007
    Beiträge
    15

    Ausgabe bei FTP mit RCMD und Info über Teildatei

    Hallo zusammen,

    ich habe zwei Fragen bezüglich des RCMD Befehls bei einer FTP-Verbindung mit einer AS400:

    1. Ich kann mit QUOTE RCMD Befehle auf dem Remote-System absetzen. Für meine Frage verwende ich folgendes Beispiel:

    ftp> quote rcmd dsplibl
    250 Command dsplibl successful.
    ftp>

    Es funktioniert soweit aber ich hätte gerne auch die Ausgabe von dem Befehl. Direkt scheint es nicht zu funktionieren, daher ist meine Frage ob man durch ein Override oder ähnliches die Ausgabe auf der AS400 in eine temporäre Datei umleiten kann um sie dann später mit FTP auslesen und anzeigen zu können.

    2. Ist es über eine FTP Verbindung mit Hilfe eines Remote-Befehls möglich, genauere Informationen über ein Member einer Datei auszulesen (z.B QSYS.LIB/MYLIB.LIB/MYFILE.FILE/MYMEMBER.MBR). Ich denke da speziell an die Größe der Teildatei oder das Datum der letzten Änderung. Der FTP-Befehl "ls" liefert zwar die Member einer Datei aber leider nur die Namen. Auch hier bräuchte ich die Ausgabe in meiner FTP-Verbindung (evtl. auch über ein Zwischenfile o.ä.)

    Hoffe, das funktioniert, so wie ich mir das vorstelle

    Danke
    Thomas

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Du kannst natürlich per RCMD DSPOBJD mit Ausgabe in eine Datei (z.B. in QTEMP) erstellen, auch gilt dies per DSPFD mit MBR-Infos.
    Diese kannst du dann per GET runterladen und auswerten.

    DSPLIB erstellt leider nur einen Spool, den du dann per CPYSPLF erst noch kopieren musst.
    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

  3. #3
    Registriert seit
    Mar 2007
    Beiträge
    15
    Danke vielmals für die schnelle Antwort. Zumindest kann ich mir jetzt die nötigen Informationen auf dem Bildschirm anzeigen.

    Allerdings klappt das mit dem OUTFILE nicht so:

    Satzformat QWHFDML für Ausgabedatei TEXTXYZ nicht gefunden.


    Leider weiss ich nicht, wie ich eine temporäre Datei erstelle die dem gewünschten Format entspricht

    Wenn ich so eine in QTEMP erstelle, muss ich die dann nach der Verarbeitung löschen oder passiert das automatisch ?

    Grüße
    Thomas

  4. #4
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Die im Parameter OUTFILE angegebene Datei wird automatisch erstellt, falls nicht noch nicht vorhanden ist (siehe Hilfe zum Parameter OUTFILE).

    Objekte in der Bibliothek QTEMP werden vom System automatisch gelöscht, wenn der Job, zu dem diese Bibliothek QTEMP gehört, beendet wird.

  5. #5
    Registriert seit
    Mar 2007
    Beiträge
    15
    Danke !

    Ich habe jetzt die Ausgabe von

    DSPFD mit Typ *MBRLIST generiert und sie bei mir auf dem PC unter Windows gespeichert.

    Habe aber jetzt wieder ein Problem:

    Die Ausgabedatei beinhaltet manche Informationen als Klartext (Datum, Uhrzeit, Dateiname usw.), manche binär und manche im COMP-3 Format.

    So beträgt beispielsweise die Dateigröße 270336 Bytes, das steht dann in der Ergebnisdatei auf der AS400 als

    00 00 00 00 02 70 33 6F

    Beim Übertragen auf den PC (ASCII Modus, Binär geht garnicht) wird dann draus sowas:

    00 00 00 00 02 F8 93 3F

    Wie komme ich nun von dieser Zahl auf die Dateigröße ? Habe schon versucht die einzelnen Bytes mit einer EBCDIC <-> ASCII Tabelle umzuwandeln aber entweder passt sie nicht oder ich mach was falsch ..

    Jemand eine Idee ?

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Das Problem ist natürlich, dass eine Datei per FTP nicht so einfach übertragbar ist.

    Hier musst du dann ggf. die Datei noch mal per CPYTOIMPF ins IFS ausgeben, dabei kannst du dann z.B. ein CSV-Format erstellen.
    Diese Ausgabe holst du dann per GET aus dem IFS.

    Einfacher wird das ganze allerdings über ODBC und FTP.

    Per ODBC erstellst du die Informationen "CALL QCMDEXC (...)", kannst diese dann per "SELECT ..." im Klartext verarbeiten und dann die benötigten FTP-Scripte generieren.
    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 2007
    Beiträge
    15
    Danke !!

    Der Hinweis mit CPYTOIMPF war Gold wert. Habe nun meine Datei so wie ich sie brauche. Da mein IFS Verzeichnis als Netzlaufwerk verbunden ist, kann ich das File sogar direkt holen, ohne FTP.

    Das sieht dann in etwa so aus

    DSPFD FILE(MYLIB/MYFILE) TYPE(*MBRLIST) OUTPUT(*OUTFILE) OUTFILE(QTEMP/OUTPUT)

    CPYTOIMPF FROMFILE(QTEMP/OUTPUT) TOSTMF("/TMP/LIST.TXT") MBROPT(*ADD) STMFCODPAG(*PCASCII) RCDDLM(*CRLF) DTAFMT(*DLM)

    Den Vorschlag mit ODBC hab ich garnicht weiter verfolgt, da ich von meiner Entwicklungsumgebung keine ODBC Zugriffe machen kann.

    Nochmals danke

    Thomas

Similar Threads

  1. Daten perr FTP ins IFS
    By malzusrex in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 05-12-06, 13:38
  2. Ftp put hängt sich auf
    By TARASIK in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 21-11-06, 16:18
  3. Savf File per FTP
    By wuwu in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 18-08-06, 08:09
  4. Teildatei mit SQL anzeigen
    By Rico in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 06-07-06, 16:25
  5. Mehrere Teildateien in eine Teildatei kopieren
    By KaFi in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 04-05-06, 11:49

Berechtigungen

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