/******************************************************************/ /* Program: SYSSETUP */ /* */ /* Desc: Run this program once when installing */ /* software on a new system. */ /* */ /* This program will create the appropriate class, subsystem, */ /* job description and so on. */ /******************************************************************/ PGM DCL VAR(&SYSTEM) TYPE(*CHAR) LEN(8) /* GET LOCAL SYSTEM NAME */ RTVNETA SYSNAME(&SYSTEM) /* CREATE A NEW SUBSYSTEM DESCRIPTION */ CRTSBSD SBSD(QSYS/NEWSYSSBS) POOLS((1 *INTERACT)) + MAXJOBS(*NOMAX) TEXT('New Custom + Subsystem') MONMSG MSGID(CPF0000) /* CREATE A NEW CLASS TO CONTROL RUN PRIORITY */ CRTCLS CLS(QSYS/EDOCSCLS) RUNPTY(25) TEXT(New Sys - Job Class') MONMSG MSGID(CPF0000) /* CREATE A NEW JOB QUEUE */ CRTJOBQ JOBQ(QSYS/NEWSYSJOBQ) TEXT('Custom Job queue') MONMSG MSGID(CPF0000) /* ADD THE JOBQ TO THE SUBSYSTEM */ ADDJOBQE SBSD(NEWSYSSBS) JOBQ(NEWSYSSJOBQ) MAXACT(*NOMAX) MONMSG MSGID(CPF0000) /* CREATE A NEW JOB DESCRIPTION */ CRTJOBD JOBD(QSYS/NEWSYSJOBD) JOBQ(QSYSNEWSYSJOBQ) + TEXT(New Job Description') + RTGDTA(*RQSDTA) + RQSDTA('CALL YOURLIB/YOURPGM') + INLLIBL(YOURLIB QGPL) AUT(*USE) MONMSG MSGID(CPF0000) /* ADD AN AUTOSTART JOB ENTRY TO THE SUBSYSTEM DESCRIPTION */ ADDAJE SBSD(QSYS/NEWSYSSBS) JOB(NEWSYSJOB) + JOBD(QSYS/NEWSYSJOBD) MONMSG MSGID(CPF0000) /* START THE SUBSYTEM */ STRSBS SBSD(NEWSYSSBS) MONMSG MSGID(CPF0000) /* Submit Your Custom Jobs */ SBMJOB CMD(CALL PGM(YOURPGM)) JOBQ(NEWSYSSBS) MONMSG MSGID(CPF0000) ENDPGM