-
FTP
Moin zusammen !
Ich versuche gerade in einem RPG Programm ein FTP abzusetzen (Aufruf QCMDEX mit den jeweiligen Befehlen (hier Modulaufruf CLCMD)).
Nur allerdings hab ich das mit den Input-Dateien und Output-Dateien noch nicht wirklich kapiert und die OVRDBF funktionieren nicht....
Hier mal mein Quellcode:
Code:
FINPUT O E DISK USROPN RENAME(QFTPCMD:INPUT00)
FOUTPUT IF E DISK USROPN RENAME(QFTPCMD:OUTPUT00)
*
C CALLP CLCMD('CRTDUPOBJ OBJ(QFTPCMD) ' +
C 'FROMLIB(*LIBL) OBJTYPE(*FILE) ' +
C 'TOLIB(QTEMP)')
C CALLP CLCMD('CLRPFM FILE(QFTPCMD) MBR(OUTPUT)')
C CALLP CLCMD('CLRPFM FILE(QFTPCMD) MBR(INPUT)')
C CALLP CLCMD('OVRDBF FILE(INPUT) ' +
C 'TOFILE(*LIBL/QFTPCMD) MBR(INPUT) ' +
C 'OVRSCOPE(*JOB)')
C CALLP CLCMD('OVRDBF FILE(OUTPUT) ' +
C 'TOFILE(*LIBL/QFTPCMD) MBR(OUTPUT) ' +
C 'OVRSCOPE(*JOB)')
C*
C* Befehlsfolge für Eingabedatei FTP
C OPEN INPUT
**** Datei mit Commandos schreiben ****
.....
* FTP Absetzen
C CALLP CLCMD('FTP ' + RMTSYS)
usw....
Datei Input:
Code:
A*-----------------------------
A R QFTPCMD
A SRCDTA 80
Datei Output:
Code:
A R QFTPCMD
A SRCDTA 80
Datei QFTPCMD:
Code:
R QFTPCMD
TEXT2 256
TEXT3 256
Die Output-Datei möchte ich später auslesen um Fehler zu analysieren ...
Ich weiß nicht weiter... vielleicht kann mir jemand auf die Sprünge helfen !
Gruß
Maxx
-
Moin moin,
muss das denn alles im RPG passieren?
Die FTP-Commands aus RPG in eine File reinschreiben ist ja noch okay, aber den Rest (Durchführung FTP mit OVR usw. ) würde ich persönlich über nen CL erledigen lassen.
k.
-
Es is doch eigentlich egal, obs im CL oder im RPG passiert, oder ?
LG
Maxx
-
Zitat von Bratmaxxe
Es is doch eigentlich egal, obs im CL oder im RPG passiert, oder ?
Japp,
ich mach das nur so. Ist so einfach und man kann hinterher gut reinschauen und Fehler auswerten, oder sogar nen Programm laufen lassen, was das LOG einliest und analysiert...
okay.
weil das ja immer wieder Konfusionen gibt,
hier zum allerletzten mal der Ablauf wie man es machen "könnte".
Das Beispiel geht hier mal von QCLSRC/KUEMPI aus.
Zuerst ein leeres Member anlegen, da kommen später die Logdaten rein.
PHP-Code:
STRSEU SRCFILE(KUEMPI/QCLSRC) SRCMBR(FTPLOG) TYPE(TXT) TEXT('FTP nach xx Logdatei')
Dann ein Member anlegen, da wo FTP-Kommandos reinkommen.
PHP-Code:
STRSEU SRCFILE(KUEMPI/QCLSRC) SRCMBR(FTPCMD) TYPE(TXT) TEXT('FTP nach xx Kommandos')
In diese "CMD-File" schreiben wir rein, was FTP alles machen soll.
Da ist alles möglich was FTP so kann.
Im Beispiel logt sich ein User "kuempi" auf dem fremden System
mit dem Passwort "geheim" ein und macht dann einfach einen PUT
Beispielinhalt von FTPCMD:
PHP-Code:
kuempi geheim
namefmt 1
bin
put kuempi/hugo
quit
Nun brauchen wir noch ein CLP was mit diesen beiden Teilen arbeitet.
Beispiel:
PHP-Code:
PGM
CLRPFM FILE(KUEMPI/QCLSRC) MBR(FTPLOG)
MONMSG (CPF0000 CPF9999)
OVRDBF FILE(INPUT) TOFILE(KUEMPI/QCLSRC) +
MBR(FTPCMD)
OVRDBF FILE(OUTPUT) TOFILE(KUEMPI/QCLSRC) +
MBR(FTPLOG)
FTP RMTSYS('xxx.xxx.xxx.xxx') <- Hier die IP rein!
DLTOVR FILE(INPUT OUTPUT)
ENDPGM
Soweit so gut, gehst Du mal hinterher auf das LOG und schaust es Dir an.
Wenn Du nun - aus welchen Gründen auch immer - in der CL-Source nicht das Passwort
stehen haben möchtest, musst Du eben die Inputfile (FTPCMD) per RPG-Programmm
füllen und nach der Übertragung wieder löschen. Ich denke mal, das bekommst
Du selber hin.
k.
Achso, nochwas. Die CMD muss nicht zwingend TXT sein, es geht auch ne richtige File mit Satzformat und einem Feld a 80 oder was weiss ich.
Ist evtl einfacher dann, wenn Du das im RPG füllen willst/musst.
k.
-
Vielen Dank Kuempi !
Ich versuche jedoch meinen Fehler vergebens zu finden....
Programm bricht beim Open INPUT ab:
QFTPCMD liegt in der LIBL Dateien und hat die Member Input und Output die ich vorher per ADDPFM hinzugefügt habe.
Teildateien von QFTPCMD:
Ausw. Teildatei Datum Text
INPUT 16.08.06 Inputdatei für AS400 FTP-Transfers
OUTPUT 16.08.06 Outputdatei für AS400 FTP-Transfers
QFTPCMD 16.08.06 Commands für AS400 FTP-Transfers
Die LIBL:
Folgenr. Bibliothek
0
10 QTEMP
20 Y2PTF62040
30 QIWS
40 DATEIEN1
50 DATEIEN
60 PGM
Anbei der LOG...
Objekt QFTPCMD der Art *FILE in Bibliothek QTEMP erstellt.
1 Objekte dupliziert.
Inhalt der Teildatei OUTPUT in Datei QFTPCMD in DATEIEN gelöscht.
Inhalt der Teildatei INPUT in Datei QFTPCMD in DATEIEN gelöscht.
Aktualitätsprüfung für Datei, QFTPCMD Bibliothek DATEIEN, Teildatei INPUT.
Fehlernachricht CPF4131 während OPEN angezeigt.
Was is verkehrt.... ?
Gruß
Maxx
-
Zitat von Bratmaxxe
...Was is verkehrt.... ?
...
Na da schlägt der Levelcheck bei Dir zu.
Müsstest Du nach der Memberstellung Dein RPG nochmal wandeln...
Ist natürlich Quatsch.
In Deinem Fall würde ich mal den OVRDBF um LVLCHK(*NO) erweitern.
k.
-
was wäre Mäxxchen nur ohne Kuempi ?
Vielen Dank dafür, funzt jetzt alles super ...
MFG
Maxx
Similar Threads
-
By malzusrex in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 05-12-06, 13:38
-
By TARASIK in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 21-11-06, 16:18
-
By KM in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 28-08-06, 13:50
-
By wuwu in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 18-08-06, 08:09
-
By Frank.Sobanek in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 22-06-06, 20:22
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks