With an ever increasing number of FTPs required by MVS batch jobs, the problem of 'No File Available for FTP' is more critical than ever. The ca scheduling system can not handle the situation at all. There is a program available to all batch jobs that will make the job 'SLEEP' for a specified number of seconds before progressing to its next step. Our experience has been that obtaining files from 'foreign' systems is very undependable. We often have to contact a support person to get a process started to make the required file available. The program 'YWSLPBC' will accept a delay amount, in seconds, and a time of day, in hours minutes and seconds, to control its operation. By combining the delay with smart FTP checking (DL5691XP) and the MVS internal reader, the availability of files from foreign systems can be less dependent on the time of day. The time of day parameter will force an abend rather than a delay, once that time of day has been exceeded. This will prevent a job from waiting forever for a file and to alert the MVS team while still on site of the file problem. The job being controlled in this manner must be a 'stand alone job', meaning that it can not trigger subsequent jobs. The normal steps for a job utilizing 'YWSLPBC' would have the first step executing 'YWSLPBC', the second step would set the delay parameter to an appropriate interval, the third attempts the FTP, the fourth executes 'DL5691XP'. If the FTP was successful, the delay parameter should be set to 1 second and the balance of the job should be allowed to run. If the FTP fails because of a 'NO FILE' condition, simply run 'IEBGENER' to write the job to the internal reader for immediate execution. Sample JCL: //STEP1 EXEC PGM=YWSLPBC //SYSOUT DD SYSOUT=* //SYSIN DD DISP=SHR,DSN=NPPM3.PROD.D.jobname.DELAY //* //* * FORCE 1 HOUR DELAY, FAIL AFTER 2PM //* //STEP2 EXEC PGM=IEBGENER //SYSUT1 DD * 3600,140000 //SYSUT2 DD DISP=OLD,DSN=NPPM3.PROD.D.jobname.DELAY //SYSOUT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //* //STEP3 EXEC PGM=FTP . . . //STEP4 EXEC PGM=DL5691XP . . . //* //* IF (STEP4.RC = 0) THEN RESET DELAY TO 1 SECOND //* //STEP5 EXEC PGM=IEBGENER //SYSUT1 DD * 0001,140000 //SYSUT2 DD DISP=OLD,DSN=NPPM3.PROD.D.jobname.DELAY . . . //* // ELSE //* //STEPxxx EXEC PGM=IEBGENER //SYSUT1 DD DISP=SHR,DSN=UCC7.EXEC.JCL(jobname) //SYSUT2 DD SYSOUT=(*,INTRDR) . . . //* //* NOTIFY MVS ON-CALL VIA TEAM PAGER //* //STEPyyy EXEC PGM=IEBGENER //SYSUT1 DD * PAGE jobname FTP FAILED - NO FILE ON REMOTE SERVER WILL RETRY IN 1 HOUR. //SYSUT2 DD SUBSYS=(OPSS,OPSDSN,,mvsteam) //SYSIN DD DUMMY //SYSPRINT DD SYSOUT=* //* // ENDIF //