When migrating from Cobol 4.2 (COBOL42) to Cobol 6.3 (COBOL63) a new processor group was created for Cobol 6.3.
The new processor group (COBOL63) was set up as default and new modules are using it for ADD process by updating the TYPE COBOL.
The issue is for the re-compiling of old Elements originally compiled in COBOL42 processor group. The new default processor is not respected as per the TYPE Definition update to COBOL63.
A recompilation will use the old processor group (COBOL42) unless it's over typed for each Element.
Is there a way to change all the Elements with processor group COBOL42 to have a default of COBOL63?
Release : All
Component :
The processor group of the last time the Element was Generated is stored in the Element's METADATA in the MCF.
Use the ALTER command. The alter command can change the old processor group to a new processor group.
For example:
ALTER ELEMENT '*'
FROM ENVIRONMENT 'PROD' SYSTEM '*' SUBSYSTEM '*'
TYPE 'COBOL' STAGE '*'
REPLACE PROCESSOR GROUP COBOL43 WITH COBOL63
OPTIONS NOUPDATE ELEMENT
.
This will command is set up initially with OPTIONS NOUPDATE ELEMENT. This will force no changes to be done. It will show the Elements that will be changed. To update the Elements change NOUPDATE to UPDATE.
This command will try to change all Elements in the Environment PROD, for all Systems and Subsystems, Type of COBOL and all stages.
If the element also has processor group COBOL43 it will be selected to be changed to processor group COBOL63.
The ALTER processor group will not change how the existing element selects the delete processor. So only the default processor group will be changed.
The alter command is very powerful. It is recommended that a backup be done before running the alter to update elements
The alter command also requires SMF recording to be turned on.
For further details, see the ALTER statement.