Coding program specification blocks as input to the PSBGEN utility
A PSB is a series of macro instructions that describes an application program's characteristics, its use of segments and fields within a database, and its use of logical terminals.
A PSB consists of one or more PCBs (program communication blocks). Of the two types of PCBs, one is used for alternate message destinations, the other, for application access and operation definitions.
After you code the PSB macro instructions, they are used as input to the PSBGEN utility. This utility is a macro assembler that generates a PSB control block then stores it in the IMS.PSBLIB library for subsequent use during database processing.
The following figure shows the PSB generation process.
The following JCL shows the structure of the deck used as input to the PSBGEN utility.
//PSBGEN JOB MSGLEVEL=1
// EXEC PSBGEN,MBR=APPLPGM1
//C.SYSIN DD *
PCB TYPE=TP required for output message destinations
PCB TYPE=DB required for each database the application program
can access
SENSEG required for each segment in the database the
application program can access
SENFLD required for each field in a segment that
the application program can access,
when field-level sensitivity is specified
PCB TYPE=GSAM
⋮
PSBGEN required for each PSB generation
END required for each PSB generation
/*