If you spend any time developing RPG applications you will find that, sooner or later, you will need to debug a program that runs in batch. There are a few steps that you need to take in order to do this and, because my memory is terrible, I’m putting them here.
- Know what job queue your job is being submitted to. Hold this job queue.
- Submit your job.
- Your job is now sitting on the held job queue waiting to be released. Display the job and make a note of the user name, job name and number.
- Start a service job using
STRSRVJOB
entering the name, job name and number from the previous step. STRDBG PGM(ProgramName)
. You can’t enter any breakpoints yet, so hit F12 to exit the source display- Release the job queue
- The Start Serviced Job screen will be displayed asking you to press F10 to enter debug commands for the job. Press F10.
DSPMODSRC
and enter your breakpoints.- Press F12 to resume and F3 to return to the Start Serviced Job screen.
- Press Enter to start your job.
The job will now begin running and will stop, passing control back to your screen, when the first breakpoint is reached.