The program data area can be use by the exit point in pretty much any fashion the exit point wants. Generally it’s used to provide a filter for selecting the appropriate exit program. As an example, the Command Analyzer Retrieve Exit uses the program data to indicate what CL command the exit program is intended to work with. If the first twenty bytes equal ‘SBMJOB QSYS’ then the exit program gets called when the SBMJOB command runs out of QSYS. Another exit program, for the same exit point, might have it’s program data set to ‘ENDJOBABN QSYS’.
A different exit point, for instance Job Notification might use the program data to define what notifications the exit program wants generated and for what subsystem.