Almost every mainframe shop has a program already in existence to “pause” a batch job. You should ask your software guys.
Over the years, COBOL has grown in its capabilities. So, in this case you do not need Assembler. (Which is too bad, becasue I think Assembler is the best.)
Here is a piece of COBOL code that can be used to “pause” a job. This program uses an IBM supplied module ILBOWAT. You should verify this is still correct. (This is an OLD, old program of mine…)
* DESCRIPTION =
* THIS PROGRAM USES IBM SUPPLIED MODULE TO “PAUSE” YOUR PROGRAM.
* > A “SLEEP” FUNCTION
* > MODULE NAMED ILBOWAT0. NOT ILBOWAT.
* > CALLED MODULE IS AMODE 24, YOU MUST USE COMPILE OPTION DATA(24).
* > PARAMETER PASSED IS IN SECONDS.
* > CHECK RETURN CODE – YOU MIGHT HAVE DONE SOMETHING WRONG.
01 DELAY-SECONDS PIC S9(9) VALUE ZERO COMP.
MOVE 60 TO DELAY-SECONDS.
CALL ‘ILBOWAT0’ USING DELAY-SECONDS.
I hope this works out for you.