CICS ACTIVATE (RESOURCE) provides specific resource activation capabilities for programs and transactions. It enables programs to activate specific resources, manage resource states, and handle resource activation in CICS environments.
CICS ACTIVATE (RESOURCE) is a command that allows programs to activate specific resources in the system. It provides specific resource activation capabilities, resource state management, and resource processing for CICS applications.
123456EXEC CICS ACTIVATE RESOURCE [RESOURCE(resource-name)] [TYPE(resource-type)] [PARAMETERS(parameter-list)] [RESP(response-code)] END-EXEC
Specific file resource types
Specific database resource types
Specific network resource types
Specific system resource types
1234567891011121314151617181920212223242526272829IDENTIFICATION DIVISION. PROGRAM-ID. ACTIVATERESOURCE01. DATA DIVISION. WORKING-STORAGE SECTION. 01 RESOURCE-NAME PIC X(8) VALUE 'MYFILE01'. 01 RESOURCE-TYPE PIC X(8) VALUE 'FILE'. 01 PARAMETER-LIST PIC X(20) VALUE 'PARM1=VAL1,PARM2=VAL2'. 01 RESPONSE-CODE PIC S9(8) COMP. PROCEDURE DIVISION. DISPLAY 'Activating specific resource' DISPLAY 'Resource: ' RESOURCE-NAME DISPLAY 'Type: ' RESOURCE-TYPE DISPLAY 'Parameters: ' PARAMETER-LIST EXEC CICS ACTIVATE RESOURCE RESOURCE(RESOURCE-NAME) TYPE(RESOURCE-TYPE) PARAMETERS(PARAMETER-LIST) RESP(RESPONSE-CODE) END-EXEC IF RESPONSE-CODE = DFHRESP(NORMAL) DISPLAY 'Specific resource activated successfully' ELSE DISPLAY 'Specific resource activation failed' END-IF EXEC CICS RETURN END-EXEC.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263IDENTIFICATION DIVISION. PROGRAM-ID. ACTIVATERESOURCE02. DATA DIVISION. WORKING-STORAGE SECTION. 01 RESOURCE-NAME PIC X(8). 01 RESOURCE-TYPE PIC X(8). 01 PARAMETER-LIST PIC X(20). 01 RESPONSE-CODE PIC S9(8) COMP. 01 RESOURCE-COUNT PIC S9(2) COMP VALUE 0. 01 MAX-RESOURCES PIC S9(2) COMP VALUE 4. 01 RESOURCE-STATUS PIC X(1). 01 RESOURCE-LIST. 05 RESOURCE-ITEM OCCURS 4 TIMES. 10 RESOURCE-ID PIC X(8). 10 RESOURCE-TYPE PIC X(8). 10 RESOURCE-PARMS PIC X(20). 10 RESOURCE-STATUS PIC X(1). PROCEDURE DIVISION. PERFORM INITIALIZE-SPECIFIC-RESOURCES PERFORM ACTIVATE-MULTIPLE-SPECIFIC-RESOURCES EXEC CICS RETURN END-EXEC. INITIALIZE-SPECIFIC-RESOURCES. MOVE 'FILE001' TO RESOURCE-ID(1) MOVE 'FILE' TO RESOURCE-TYPE(1) MOVE 'PARM1=VAL1' TO RESOURCE-PARMS(1) MOVE 'DB2001' TO RESOURCE-ID(2) MOVE 'DB2' TO RESOURCE-TYPE(2) MOVE 'PARM2=VAL2' TO RESOURCE-PARMS(2) MOVE 'TCP001' TO RESOURCE-ID(3) MOVE 'TCPIP' TO RESOURCE-TYPE(3) MOVE 'PARM3=VAL3' TO RESOURCE-PARMS(3) MOVE 'MEM001' TO RESOURCE-ID(4) MOVE 'MEMORY' TO RESOURCE-TYPE(4) MOVE 'PARM4=VAL4' TO RESOURCE-PARMS(4). ACTIVATE-MULTIPLE-SPECIFIC-RESOURCES. PERFORM VARYING RESOURCE-COUNT FROM 1 BY 1 UNTIL RESOURCE-COUNT > MAX-RESOURCES MOVE RESOURCE-ID(RESOURCE-COUNT) TO RESOURCE-NAME MOVE RESOURCE-TYPE(RESOURCE-COUNT) TO RESOURCE-TYPE MOVE RESOURCE-PARMS(RESOURCE-COUNT) TO PARAMETER-LIST PERFORM ACTIVATE-SINGLE-SPECIFIC-RESOURCE IF RESPONSE-CODE = DFHRESP(NORMAL) MOVE 'A' TO RESOURCE-STATUS(RESOURCE-COUNT) DISPLAY 'Specific resource ' RESOURCE-COUNT ' activated successfully' ELSE MOVE 'F' TO RESOURCE-STATUS(RESOURCE-COUNT) DISPLAY 'Specific resource ' RESOURCE-COUNT ' activation failed' END-IF END-PERFORM. ACTIVATE-SINGLE-SPECIFIC-RESOURCE. EXEC CICS ACTIVATE RESOURCE RESOURCE(RESOURCE-NAME) TYPE(RESOURCE-TYPE) PARAMETERS(PARAMETER-LIST) RESP(RESPONSE-CODE) END-EXEC.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152IDENTIFICATION DIVISION. PROGRAM-ID. ACTIVATERESOURCE03. DATA DIVISION. WORKING-STORAGE SECTION. 01 RESOURCE-NAME PIC X(8) VALUE 'MYFILE01'. 01 RESOURCE-TYPE PIC X(8) VALUE 'FILE'. 01 PARAMETER-LIST PIC X(20) VALUE 'PARM1=VAL1'. 01 RESPONSE-CODE PIC S9(8) COMP. 01 RETRY-COUNT PIC S9(2) COMP VALUE 0. 01 MAX-RETRIES PIC S9(2) COMP VALUE 3. 01 RESOURCE-ACTIVATE-SUCCESSFUL PIC X(1) VALUE 'N'. PROCEDURE DIVISION. PERFORM ACTIVATE-SPECIFIC-RESOURCE-WITH-RETRY EXEC CICS RETURN END-EXEC. ACTIVATE-SPECIFIC-RESOURCE-WITH-RETRY. PERFORM ACTIVATE-SPECIFIC-RESOURCE IF RESPONSE-CODE NOT = DFHRESP(NORMAL) AND RETRY-COUNT < MAX-RETRIES ADD 1 TO RETRY-COUNT DISPLAY 'Retry ' RETRY-COUNT ' specific resource activation operation' PERFORM ACTIVATE-SPECIFIC-RESOURCE-WITH-RETRY END-IF. ACTIVATE-SPECIFIC-RESOURCE. EXEC CICS ACTIVATE RESOURCE RESOURCE(RESOURCE-NAME) TYPE(RESOURCE-TYPE) PARAMETERS(PARAMETER-LIST) RESP(RESPONSE-CODE) END-EXEC EVALUATE RESPONSE-CODE WHEN DFHRESP(NORMAL) MOVE 'Y' TO RESOURCE-ACTIVATE-SUCCESSFUL DISPLAY 'Specific resource activation operation successful' WHEN DFHRESP(NOTAUTH) DISPLAY 'Not authorized to activate specific resource' WHEN DFHRESP(INVREQ) DISPLAY 'Invalid specific resource activation request' WHEN DFHRESP(RESOURCEERR) DISPLAY 'Specific resource activation error' WHEN DFHRESP(RESOURCENOTFOUND) DISPLAY 'Specific resource not found' WHEN DFHRESP(RESOURCEINUSE) DISPLAY 'Specific resource is in use' WHEN OTHER DISPLAY 'Unexpected specific resource activation error' END-EVALUATE.
Think of CICS ACTIVATE (RESOURCE) like turning on a specific light switch:
Create a program that activates basic specific resources.
Write a program that manages multiple specific resource activations.
Implement comprehensive error handling for specific resource activation failures.