Summary:
If a Job (or external link) did not run and the application was force completed, then the link/job will be marked complete with a cc=0 even though it never ran. How would you indicate that they did not run?
Instructions:
1) Define an application to use CONDITIONAL statements, and add an APPLEND with HOLD. This will cause the jobs/links to be bypassed if they don't run before APPL is force completed.
For example:
Parm CONDITIONAL is on every job except ESPA and ESPE. The CONDITIONAL parm on a job will cause the job to BYPASS if there is no UNCONDITIONAL job to run in the application. The APPLEND job APPL1 is on hold and will only run when released.
APPL APPL1 JCLLIB 'ABC.DEF.GHI' JOB ESPA RUN ANY RELEASE ADD(ESPE) ENDJOB JOB ESPB CONDITIONAL HOLD RUN ANY ENDJOB JOB RREXTA EXTERNAL APPLID(APPL2) CONDITIONAL RUN NOW RELEASE ADD(ESPC) ENDJOB JOB ESPC CONDITIONAL RUN ANY ENDJOB JOB RREXTB EXTERNAL SCOPE(7:00) CONDITIONAL RUN NOW RELEASE ADD(ESPG) ENDJOB JOB ESPG CONDITIONAL RUN ANY ENDJOB JOB ESPE RUN ANY ENDJOB APPLEND APPL1 HOLD ENDJOB
2) Trigger in application to get the following results:
APPL1 and ESPB are waiting to be released from hold. If you release APPL1 the application will end and all the jobs with CONDITIONAL will be bypassed. You could also release job ESPB and it will run until completion.
When the user wants to complete the above application, they would release job APPL1 and all remaining jobs would be bypassed. If all the jobs complete normally then releasing APPL1 is not required.
APPL1 APPL1 747 MANHOLD MANHOLD ESPA APPL1 747 COMPLETE COMPLETED AT 13.1 ESPB APPL1 747 MANHOLD MANHOLD ESPC APPL1 747 PREDWAIT WAITING, HC=1 ESPE APPL1 747 COMPLETE COMPLETED AT 13.1 ESPG APPL1 747 PREDWAIT WAITING, HC=1 RREXTA APPL1 747 EXTERNAL EXTNL RREXTB APPL1 747 EXTERNAL EXTNL