Once you have created the debug view (statement, source, COPY, or listing),
you can begin debugging your application. To start the ILE source , use
the Start Debug (STRDBG) command. Once the is started, it remains active
until you enter the End Debug (ENDDBG) command.
Initially you can add as many as 20 program objects to a debug session
by using the Program (PGM) parameter on the STRDBG command. They can be any
combination of OPM or ILE programs. (Depending on how the OPM programs
were compiled and also on the debug environment settings, you may be able
to debug them by using the ILE source .)
In addition, you can initially
add as many as 20 service program objects to a debug session by using the
Service Programs (SRVPGM) parameter on the STRDBG command. The rules for debugging
a service program are the same as those for debugging a program:
- The program or service program must have debug data.
- You must have *CHANGE authority to a program or service program object
to include it in a debug session.
Note: If debugging a program using the COPY or root source
view, the source code must be on the same system as the program object being
debugged. In addition, the source code must be in a library/file(member) with
the same name as when it was compiled.
For an ILE program, the entry module is shown if it has debug data; otherwise,
the first module bound to the ILE program with debug data is shown.
For an OPM program, the first program specified on the STRDBG command is
shown if it has debug data, and the OPMSRC parameter is *YES. That is, if
an OPM program is in a debug session, then you can debug it using the ILE
source if the following conditions are met:
- The OPM program was compiled with OPTION(*LSTDBG) or OPTION(*SRCDBG).
(Three OPM languages are supported: RPG, COBOL, and CL. RPG and COBOL programs
can be compiled with *LSTDBG or *SRCDBG, but CL programs must be compiled
with *SRCDBG.
- The ILE debug environment is set to accept OPM programs. You can do this
by specifying OPMSRC(*YES) on the STRDBG command. (The system default is OPMSRC(*NO).)
If these two conditions are not met, then you must debug the OPM
program with the OPM system .
If an OPM program compiled without *LSTDBG or *SRCDBG is specified and
a service program is specified, the service program is shown if it has debug
data. If there is no debug data, then the DSPMODSRC screen will be empty.
If an ILE program and a service program are specified, then the ILE program
will be shown.