JCL for the UNLOAD function

The UNLOAD step is performed by IMS Queue Control Facility to remove messages from the shared queues for reinsertion later or for test purposes, similar to the REPROCESS procedure.

Use the UNLOAD step to remove messages from the shared queues for reinsertion later.

You can run the UNLOAD function in batch mode by submitting a JCL job stream.

Sample JCL to run the UNLOAD function

The following example shows the JCL that is required to start a UNLOAD step. Replace the items in lowercase with values that are appropriate for your environment:

//***************************************************************
//* SAMPLE JCL TO EXECUTE THE UNLOAD FUNCTION                   *
//***************************************************************
//RECOVER  EXEC PGM=IQCINI0$,
// PARM='BPEINIT=IQCBINI0,BPECFG=IQCIVPCF,IMSPLEX=IPLEX,QCFIMS=IMS1'
//STEPLIB  DD  DISP=SHR,DSN=hlqual.SIQCLINK
//         DD  DISP=SHR,DSN=IMSREL.RESLIB 
//*
//QCFPRINT DD SYSOUT=A
//*
//UNLOAD   DD DSN=QCF.UNLOAD,UNIT=SYSDA,DISP=(NEW,CATLG),
//         DCB=(LRECL=32756,BLKSIZE=32760,RECFM=VB),
//         SPACE=(CYL,(5,5))
//*
//SNAPDUMP DD SYSOUT=A
//*
//QCFIN    DD DSN=USER.PRIVATE.PROCLIB(unload),UNIT=SYSDA 

DD statements for UNLOAD

STEPLIB DD
Defines the library containing the IMS Queue Control Facility program load modules and IMS libraries that are required for the UNLOAD function to run.

This DD statement is required.

QCFPRINT DD
Defines the output report data set.

This DD statement is required.

UNLOAD DD
Defines the output data set. This can be used as input to the LOAD function.

This DD statement is optional.

If ACTION=(READ) or ACTION=(REPORTONLY) is specified or defaulted to on the FUNCTION or SELECT statement, messages will be unloaded off of the queues and there will be no backup of the unloaded messages.

Restriction: Start of changeDo not specify the RLSE subparameter on the SPACE parameter of the UNLOAD data set. IMS Queue Control Facility opens and closes the UNLOAD data set to check the data set. If RLSE subparameter is present, IMS Queue Control Facility uses the minimum size for the primary allocation size even if an allocation size is specified.End of change
QCFIN DD
Defines the input control statement data set.

This DD statement is required.

Specify DD DUMMY if you do not want to allocate the UNLOAD data set. However, the UNLOAD job will continue as if ACTION=REPORTONLY was specified, so the messages will be unloaded off of the queues and there will be no backup of the unloaded messages.

Example of the PROC USER.PRIVATE.PROCLIB(unload)

Following is an example of the PROC that was specified in the sample JCL, in the QCFIN DD statement as, USER.PRIVATE.PROCLIB(unload):

*********************************************************
* unload the appc and lterm queues
*********************************************************
function unload queuetype(appc,lterm) 
end