****H00031C****
START: PGM
/**/
MONMSG MSGID(CPF0000 RPG0000)
/**/
CHGLIBL LIBL(PPRGDEV PDTASRC PDTAL1 PPRGSRC POBJSRC +
QGPL QRPG QTEMP)
/**/
DSPPGMREF PGM(POBJSRC/*ALL) OUTPUT(*OUTFILE) +
OUTFILE(QTEMP/TMH0003101) OUTMBR(*FIRST *ADD)
/**/
CLRPFM FILE(*LIBL/F00028)
/**/
CALL PGM(*LIBL/H00031R)
/**/
END: ENDPGM
****H00031R****
C* /MAIN = Main process.
C*******************************************************************
CSR /MAIN BEGSR
C*
C*--- Add records into F00028.
C*
C/EXEC SQL insert into F00028 select distinct substr(WHFNAM,1,10),
C+ WHPNAM, 'U' from TMH0003101 where WHOTYP = '*FILE' and
C+ WHFUSG between 4 and 7
C/END-EXEC
C*
C/EXEC SQL insert into F00028 select distinct substr(WHFNAM,1,10),
C+ WHPNAM, 'O' from TMH0003101 where WHOTYP = '*FILE' and
C+ WHFUSG between 2 and 3 and substr(WHFNAM,1,10)||WHPNAM
C+ not in (select F00028FID||F00028PID from F00028)
C/END-EXEC
C*
C/EXEC SQL insert into F00028 select distinct substr(WHFNAM,1,10),
C+ WHPNAM, 'I' from TMH0003101 where WHOTYP = '*FILE' and
C+ WHFUSG = 1 and substr(WHFNAM,1,10)||WHPNAM not in
C+ (select F00028FID||F00028PID from F00028)
C/END-EXEC
C*
C*--- Delete unnecessary records in F00028.
C*
C/EXEC SQL delete from F00028 where F00028FID = ' '
C/END-EXEC
C*
C/EXEC SQL delete from F00028 where F00028FID like '*%'
C/END-EXEC
C*
C/EXEC SQL delete from F00028 where F00028FID like '&%'
C/END-EXEC
C*
CSR ENDSR
****F00028****
A UNIQUE
A*
A R F00028R TEXT('File Master File')
A*
A F00028FID 10O COLHDG(' ' 'File' 'Name')
A F00028PID 10O COLHDG(' ' 'Program' 'ID')
A F00028_MOD 1A COLHDG(' ' 'Access' 'Mode')
A*
A K F00028FID
A K F00028PID
START: PGM
/**/
MONMSG MSGID(CPF0000 RPG0000)
/**/
CHGLIBL LIBL(PPRGDEV PDTASRC PDTAL1 PPRGSRC POBJSRC +
QGPL QRPG QTEMP)
/**/
DSPPGMREF PGM(POBJSRC/*ALL) OUTPUT(*OUTFILE) +
OUTFILE(QTEMP/TMH0003101) OUTMBR(*FIRST *ADD)
/**/
CLRPFM FILE(*LIBL/F00028)
/**/
CALL PGM(*LIBL/H00031R)
/**/
END: ENDPGM
****H00031R****
C* /MAIN = Main process.
C*******************************************************************
CSR /MAIN BEGSR
C*
C*--- Add records into F00028.
C*
C/EXEC SQL insert into F00028 select distinct substr(WHFNAM,1,10),
C+ WHPNAM, 'U' from TMH0003101 where WHOTYP = '*FILE' and
C+ WHFUSG between 4 and 7
C/END-EXEC
C*
C/EXEC SQL insert into F00028 select distinct substr(WHFNAM,1,10),
C+ WHPNAM, 'O' from TMH0003101 where WHOTYP = '*FILE' and
C+ WHFUSG between 2 and 3 and substr(WHFNAM,1,10)||WHPNAM
C+ not in (select F00028FID||F00028PID from F00028)
C/END-EXEC
C*
C/EXEC SQL insert into F00028 select distinct substr(WHFNAM,1,10),
C+ WHPNAM, 'I' from TMH0003101 where WHOTYP = '*FILE' and
C+ WHFUSG = 1 and substr(WHFNAM,1,10)||WHPNAM not in
C+ (select F00028FID||F00028PID from F00028)
C/END-EXEC
C*
C*--- Delete unnecessary records in F00028.
C*
C/EXEC SQL delete from F00028 where F00028FID = ' '
C/END-EXEC
C*
C/EXEC SQL delete from F00028 where F00028FID like '*%'
C/END-EXEC
C*
C/EXEC SQL delete from F00028 where F00028FID like '&%'
C/END-EXEC
C*
CSR ENDSR
****F00028****
A UNIQUE
A*
A R F00028R TEXT('File Master File')
A*
A F00028FID 10O COLHDG(' ' 'File' 'Name')
A F00028PID 10O COLHDG(' ' 'Program' 'ID')
A F00028_MOD 1A COLHDG(' ' 'Access' 'Mode')
A*
A K F00028FID
A K F00028PID