Reorganization of modeled databases is performed in much the same manner as a DASDL update. The following WFL job performs the reorganization for the LIVEDB and TESTDB databases using the USEREORGDB option when reorganizing using the tailored software. The reorganization increases the length of Z in data set Q from 12 to 20 characters.
?BEGIN JOB REORGANIZE/BOTHDBS; % % REORGANIZE LIVEDB % COMPILE LIVEDB WITH DASDL; COMPILER DATA UPDATE; OPTIONS (AUDIT); D DATA SET (K NUMBER(6)) AREAS = 100; S SET OF D KEY K; Q DATA SET (Z ALPHA(20)) PACK = TESTPACK; AUDIT TRAIL (KIND = TAPE, DUPLICATED ON TAPE); ?%----- END LIVEDB DASDL ----- RUN SYSTEM/BUILDREORG; FILE DASDL (TITLE = DESCRIPTION/LIVEDB); DATA CARD $ NOZIP UPDATE; GLOBAL USEREORGDB; REORGDBTITLE = REORGTMPDB; ?%----- END BUILDREORG INPUT ----- COMPILE REORGANIZATION/LIVEDB WITH DMALGOL LIBRARY; COMPILER FILE CARD (KIND = DISK, TITLE = DATABASE/REORGSYMBOLIC); COMPILER FILE DASDL (TITLE = DESCRIPTION/REORGANIZATION/LIVEDB); RUN REORGANIZATION/LIVEDB; % REORGANIZE TESTDB COMPILE TESTDB WITH DASDL; COMPILER DATA MODEL LIVEDB; UPDATE; OPTIONS (AUDIT); CONTROL FILE (PACK = TESTPACK); D DATA SET (K NUMBER(6)) PACK = TESTPACK; S SET OF D KEY K PACK = TESTPACK; Q DATA SET (Z ALPHA(20)) PACK = TESTPACK; ?%----- END TESTDB DASDL ----- RUN REORGANIZATION/LIVEDB; DATABASE DB (TITLE = TESTDB); ?END JOB.
The following WFL job performs the reorganization for the LIVEDB and TESTDB databases using the USEREORDB option for the nontailored reorganization program. The reorganization increases the length of Z in data set Q from 12 to 20 characters.
?BEGIN JOB REORGANIZE/BOTHDBS; % % REORGANIZE LIVEDB % COMPILE LIVEDB WITH DASDL; COMPILER DATA UPDATE; OPTIONS (AUDIT); D DATA SET (K NUMBER(6)) AREAS = 100; S SET OF D KEY K; Q DATA SET (Z ALPHA(20)) PACK = TESTPACK; AUDIT TRAIL (KIND = TAPE, DUPLICATED ON TAPE); ?%----- END LIVEDB DASDL ----- RUN SYSTEM/BUILDREORG; FILE DASDL (TITLE = DESCRIPTION/LIVEDB); DATA CARD $ NOZIP UPDATE; GLOBAL DMREORG; USEREORGDB; REORGDBTITLE = REORGTMPDB; ?%----- END BUILDREORG INPUT ----- RUN SYSTEM/REORGANIZATION; FILE DASDL = DESCRIPTION/REORGANIZATION/LIVEDB ON TESTPACK; COMPILE TESTDB WITH DASDL; COMPILER DATA MODEL LIVEDB; UPDATE; OPTIONS (AUDIT); CONTROL FILE (PACK = TESTPACK); D DATA SET (K NUMBER(6)) PACK = TESTPACK; S SET OF D KEY K PACK = TESTPACK; Q DATA SET (Z ALPHA(20)) PACK = TESTPACK; ?%----- END TESTDB DASDL ----- RUN SYSTEM/BUILDREORG; FILE DASDL (TITLE = DESCRIPTION/TESTDB); DATA CARD $ NOZIP UPDATE; GLOBAL DMREORG; USEREORGDB; REORGDBTITLE = MODELTMPDB; ?%----- END BUILDREORG INPUT ----- RUN SYSTEM/REORGANIZATION; FILE DASDL = DESCRIPTION/REORGANIZATION/TESTDB ON TESTPACK; ?END JOB.
Figure 15-3 illustrates the reorganization of a modeled database using the USEREORGDB option.