## 4.9 Functions similar to deadline scheduling 

JES2 features two functions that are similar to JES3 deadline scheduling. The first function is a way to hold a job until a specific time. The other function is a way to move up a job’s position in the execution queue over time so that it runs before a certain time. 

## 4.9.1 HOLDUNTL on SCHEDULE JCL statement 

HOLDUNTIL= indicates a date and time (or an amount of time that the job is held) when the job can be released from hold status. 

You specify a date and time when a job can be released, as shown in Example 4-34. The job is released on 16:30 on Jun. 12 2019 in this example. 

//JOBZ JOB CLASS=A,MSGCLASS=H,MSGLEVEL=(1,1),NOTIFY=&SYSUID // REGION=0M //SCHED SCHEDULE HOLDUNTL=('16:30','2019/163') //STEP01 EXEC PGM=IEBGENER //SYSPRINT DD SYSOUT=* //SYSUT1 DD DSN=SYS1.PARMLIB(JES3IN00),DISP=SHR //SYSUT2 DD DUMMY //SYSIN DD DUMMY /* 

Another option is to specify how long the job must be held, as shown in Example 4-35. The job is released after 30 minutes from the job submission in this example. 

//JOBZ JOB CLASS=A,MSGCLASS=H,MSGLEVEL=(1,1),NOTIFY=&SYSUID, // REGION=0M //SCHED SCHEDULE HOLDUNTL='+00:30' //STEP01 EXEC PGM=IEBGENER //SYSPRINT DD SYSOUT=* //SYSUT1 DD DSN=SYS1.PARMLIB(JES3IN00),DISP=SHR //SYSUT2 DD DUMMY //SYSIN DD DUMMY /* 

Until a job is released, $DJ shows the status as shown in Example 4-36. 

$DJ9498 $HASP890 JOB(JOBZ) 551 $HASP890 JOB(JOBZ) STATUS=(AWAITING EXECUTION),CLASS=A, $HASP890 PRIORITY=8,SYSAFF=(ANY),HOLD=(JOB, $HASP890 HOLDUNTL) 

