Subsystem Started Task Manager (SSTM) provides JES functionality within a CICS region. The JES functionality is equivalent to that of a task started under z/OS and is required to support CICS spooling.
When SSTM is configured for a CICS region, a long-running job associated with the CICS region gets started in the partner JES region. The associated job number is reported in the CICS region's console during region start up. The job can be viewed in the partner JES region's spool view.
CICS spooling allows files to be spooled to the JES region or JCL to be submitted via its internal reader using the SPOOLOPEN, SPOOLWRITE and SPOOLCLOSE APIs. When a file is spooled, it gets associated with the long-running job in the partner JES region as a SYSOUT dataset and gets handled like any other SYSOUT dataset would be that is created during the execution of a job. When JCL is submitted via the internal reader, it gets scheduled for execution just like any other job would be that is submitted to the JES region.
SSTM requires a partner JES region to be configured with the name of a JCL file that is to be used during CICS region initialization to start the long-running job in the JES region. This JCL is expected to have a single job step, and although the program name in the PGM= statement must be syntactically correct, it does not need to exist. Any permanent datasets allocated by the JCL will have locks acquired for them according to their disposition (i.e. DISP=SHR datasets will have a shared lock, and DISP=OLD datasets will have an exclusive lock). Any DISP=OLD datasets will be unavailable to the CICS region, or any job submitted to the JES region that references them, until the CICS region is shut down.
//SSTM JOB 'SSTM Initialisation',CLASS=A,MSGCLASS=A //* //SSTMSTEP EXEC PGM=SSTMINIT //
//MYJOB JOB 'SSTM Initialisation',CLASS=A,MSGCLASS=A //* //STEP1 EXEC PGM=NOTEXIST //A DD DSN=MYUSER.VSAM.TESTFILE,DISP=SHR //To Configure a Partner JES Region with SSTM