CICS ACTIVATE provides resource activation capabilities for programs and transactions. It enables programs to activate resources, manage resource states, and handle resource activation in CICS environments.
CICS ACTIVATE is a command that allows programs to activate resources in the system. It provides resource activation capabilities, resource state management, and resource processing for CICS applications.
12345EXEC CICS ACTIVATE [RESOURCE(resource-name)] [TYPE(resource-type)] [RESP(response-code)] END-EXEC
File resource types
Database resource types
Network resource types
System resource types
1234567891011121314151617181920212223242526IDENTIFICATION DIVISION. PROGRAM-ID. ACTIVATE01. DATA DIVISION. WORKING-STORAGE SECTION. 01 RESOURCE-NAME PIC X(8) VALUE 'MYFILE01'. 01 RESOURCE-TYPE PIC X(8) VALUE 'FILE'. 01 RESPONSE-CODE PIC S9(8) COMP. PROCEDURE DIVISION. DISPLAY 'Activating resource' DISPLAY 'Resource: ' RESOURCE-NAME DISPLAY 'Type: ' RESOURCE-TYPE EXEC CICS ACTIVATE RESOURCE(RESOURCE-NAME) TYPE(RESOURCE-TYPE) RESP(RESPONSE-CODE) END-EXEC IF RESPONSE-CODE = DFHRESP(NORMAL) DISPLAY 'Resource activated successfully' ELSE DISPLAY 'Resource activation failed' END-IF EXEC CICS RETURN END-EXEC.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455IDENTIFICATION DIVISION. PROGRAM-ID. ACTIVATE02. DATA DIVISION. WORKING-STORAGE SECTION. 01 RESOURCE-NAME PIC X(8). 01 RESOURCE-TYPE PIC X(8). 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-STATUS PIC X(1). PROCEDURE DIVISION. PERFORM INITIALIZE-RESOURCES PERFORM ACTIVATE-MULTIPLE-RESOURCES EXEC CICS RETURN END-EXEC. INITIALIZE-RESOURCES. MOVE 'FILE001' TO RESOURCE-ID(1) MOVE 'FILE' TO RESOURCE-TYPE(1) MOVE 'DB2001' TO RESOURCE-ID(2) MOVE 'DB2' TO RESOURCE-TYPE(2) MOVE 'TCP001' TO RESOURCE-ID(3) MOVE 'TCPIP' TO RESOURCE-TYPE(3) MOVE 'MEM001' TO RESOURCE-ID(4) MOVE 'MEMORY' TO RESOURCE-TYPE(4). ACTIVATE-MULTIPLE-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 PERFORM ACTIVATE-SINGLE-RESOURCE IF RESPONSE-CODE = DFHRESP(NORMAL) MOVE 'A' TO RESOURCE-STATUS(RESOURCE-COUNT) DISPLAY 'Resource ' RESOURCE-COUNT ' activated successfully' ELSE MOVE 'F' TO RESOURCE-STATUS(RESOURCE-COUNT) DISPLAY 'Resource ' RESOURCE-COUNT ' activation failed' END-IF END-PERFORM. ACTIVATE-SINGLE-RESOURCE. EXEC CICS ACTIVATE RESOURCE(RESOURCE-NAME) TYPE(RESOURCE-TYPE) RESP(RESPONSE-CODE) END-EXEC.
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950IDENTIFICATION DIVISION. PROGRAM-ID. ACTIVATE03. DATA DIVISION. WORKING-STORAGE SECTION. 01 RESOURCE-NAME PIC X(8) VALUE 'MYFILE01'. 01 RESOURCE-TYPE PIC X(8) VALUE 'FILE'. 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-RESOURCE-WITH-RETRY EXEC CICS RETURN END-EXEC. ACTIVATE-RESOURCE-WITH-RETRY. PERFORM ACTIVATE-RESOURCE IF RESPONSE-CODE NOT = DFHRESP(NORMAL) AND RETRY-COUNT < MAX-RETRIES ADD 1 TO RETRY-COUNT DISPLAY 'Retry ' RETRY-COUNT ' resource activation operation' PERFORM ACTIVATE-RESOURCE-WITH-RETRY END-IF. ACTIVATE-RESOURCE. EXEC CICS ACTIVATE RESOURCE(RESOURCE-NAME) TYPE(RESOURCE-TYPE) RESP(RESPONSE-CODE) END-EXEC EVALUATE RESPONSE-CODE WHEN DFHRESP(NORMAL) MOVE 'Y' TO RESOURCE-ACTIVATE-SUCCESSFUL DISPLAY 'Resource activation operation successful' WHEN DFHRESP(NOTAUTH) DISPLAY 'Not authorized to activate resource' WHEN DFHRESP(INVREQ) DISPLAY 'Invalid resource activation request' WHEN DFHRESP(RESOURCEERR) DISPLAY 'Resource activation error' WHEN DFHRESP(RESOURCENOTFOUND) DISPLAY 'Resource not found' WHEN DFHRESP(RESOURCEINUSE) DISPLAY 'Resource is in use' WHEN OTHER DISPLAY 'Unexpected resource activation error' END-EVALUATE.
Think of CICS ACTIVATE like turning on a light switch:
Create a program that activates basic resources.
Write a program that manages multiple resource activations.
Implement comprehensive error handling for resource activation failures.