This is my approach:
!JOB CRSLIMJ,MGR.OEKVT,CRSDAT
!COMMENT * ======================================================== *
!COMMENT * FILE : CRSLIMJ.JOB *
!COMMENT * -------------------------------------------------------- *
!COMMENT * AUTOR : F. Harasleben *
!COMMENT * VERSION : 1.00 *
!COMMENT * DATE-WRITTEN: 20-03-2000 *
!COMMENT * DATE-CHANGED: 20-03-2000 *
!COMMENT * -------------------------------------------------------- *
!COMMENT * BESCHREIBUNG: Transferjob für die Übertragung der *
!COMMENT * PARAGRAPH Files von ISABELLE auf DTS *
!COMMENT * und Verarbeitung der Files *
!COMMENT * -------------------------------------------------------- *
!COMMENT * AENDERUNGEN : *
!COMMENT * ======================================================== *
!COMMENT
!COMMENT ------------------ ANZAHL FILES FTP PARM -------------------
!COMMENT
!ECHO open YouComputer > FTPLIST
!ECHO USER YourUser >> FTPLIST
!ECHO YourPWD >> FTPLIST
!ECHO EXITONERROR >> FTPLIST
!ECHO cd /users/files/OKPARAG >> FTPLIST
!ECHO ls P* ftplim1 >> FTPLIST
!ECHO exit >> FTPLIST
!COMMENT
!COMMENT ------------------ ANZAHL FILES ERMITTELN ----------------
!COMMENT
!run ftp.arpa.sys < FTPLIST
!IF FTPLASTERR <> 0 THEN
! ABORTJOB
!ELSE
! file ftplim2;msg
! print ftplim1 > *ftplim2
!COMMENT
!COMMENT --------------- WAR ETWAS DABEI FÜR UNS ? --------------
!COMMENT
! IF (FINFO("ftplim2","EOF") = 0) THEN
! STREAM CRSLIMJ.HF;in=,,10
! EOJ
! ENDIF
!COMMENT
!COMMENT ------------------ HOLEN DER DATEIEN ------------------------
!COMMENT
! SETVAR StartUm, !HPHOUR
! IF "!StartUm" > "12" THEN
! SETVAR Index, 1
! ELSE
! SETVAR Index, "A"
! ENDIF
! WHILE (FINFO("ftplim2","EOF") > 0) DO
! INPUT FTPFile < ftplim2
! SETVAR FTPFile, RTRIM(FTPFile)
! SETVAR MPEFile, "P" + RHT("!HPYYYY",2) + RHT("00"+"!HPMONTH",2)
! SETVAR MPEFile, MPEFile + RHT("00"+"!HPDATE",2) + "!Index"
! ECHO Nun wird die Datie !FTPFile nach !MPEFILE geholt
!COMMENT
!COMMENT ------------------ HOLEN FILES FTP PARM --------------------
!COMMENT
! ECHO open YouComputer > FTPGET
! ECHO USER YourUser >> FTPGET
! ECHO YourPWD >> FTPGET
! ECHO cof2000 >> FTPGET
! ECHO cd /users/files/OKPARAG >> FTPGET
! ECHO GET !FTPFile !MPEFile;REC=-303,1,F,ASCII;DISC=500000>> FTPGET
! ECHO DELETE !FTPFile >> FTPGET
! ECHO exit >> FTPGET
! run ftp.arpa.sys < FTPGET
! IF FTPLASTERR <> 0 THEN
! SHOWVAR FTP@
! ABORTJOB
! ELSE
! FILE INTLIMIT=!MPEFile.CRSDAT
! PURGE ERRLIM.CRSDAT
! BUILD ERRLIM.CRSDAT;REC=-132,1,f,ascii;DISC=1000000;TEMP
! SETVAR INTLIM10 , FALSE
! SETVAR INTLIM10ERR, 1
! CONTINUE
!QUICK INFO="AUTO=INTL10.QKGO LINEREAD TERM=HP700/92-48" > ERRLIM.CRSDAT
! SAVE ERRLIM.CRSDAT
! FILE INTLIM10=INTLIM10;DEV=DREDV2
! FCOPY FROM=INTLIM10.DATA;to=*INTLIM10
! IF !INTLIM10 <> TRUE THEN
! SHOWVAR INT@
! ABORTJOB
! ELSE
! IF !INTLIM10ERR <> 0 THEN
! SHOWVAR INT@
! ABORTJOB
! ELSE
! TELLOP INTLIM10 OKAY
! COPY !MPEFile.CRSDAT,.CRSSAV
! PURGE !MPEFile.CRSDAT
! ENDIF
! ENDIF
! ENDIF
! IF "!StartUm" > "12" THEN
! SETVAR Index, Index + 1
! ELSE
! SETVAR Index, CHR(ORD("!Index") + 1)
! ENDIF
! ENDWHILE
!ENDIF
!EOJ
Lars Appel
<[log in to unmask] An: [log in to unmask]
.COM> Kopie:
Gesendet von: Thema: Re: ftp in while loops
HP-3000
Systems
Discussion
<HP3000-L@RAVE
N.UTC.EDU>
20-04-2000
22:17
Bitte
antworten an
Lars Appel
>Has anyone ever used ftp inside a while loop in a batch job? We have
>tried this with different jobs but only the first iteration of the while
>loop works.
It's probably not a good idea to have FTP read its commands from the
job $STDIN inside the while loop. It should work OK, if FTP reads its
commands from a (temp) file via input redirection (ftp < somefile).
Lars.
|