PROGRAM USERS,1.0
!
!                          ==========================
!                         //  DEFINE SYSTEM USERS   \\
!                        //==========================\\
!                       <<  BY THE GREAT & MIGHTY OZ  >>
!       //===============\\==========================//=================\\
!       ||       * * * * *   E D I T   H I S T O R Y   * * * * *        ||
!       ||                                                              ||
!       ||  8/07/85 edit history started. /dmm                          ||
!       ||                                                              ||
!       \\==============<<============================>>================//
!                        \\==========================//
02000 !
02010 MAP1 USERS
02020   MAP2 JOBNAMS(30),S,6
02030   MAP2 TRMDEFS(30),S,6
02040 MAP1 NUMFIL,F,6,30
02050 MAP1 FILENAME,S,10,"USERS.DAT"
02060 MAP1 RECSIZ99,F,6,LEN(USERS)
02070 MAP1 JOBNAM,S,6
02080 MAP1 TRMDEF,S,6
02090 MAP1 ENTRY,S,6
02100 MAP1 RTNCDE,F,6
02110 MAP1 INXCTL,F,6
02120   FILEBASE 1
02130   PRINT TAB(-1,1);TAB(-1,10); "DEFINE SYSTEM USERS "
02140   XCALL NOECHO
02150   NFILE = INT((NUMFIL/2)+.5)
02160 OPEN:
02170   LOOKUP FILENAME, FOUND
02180   IF FOUND = 0 THEN GOTO NEW'FILE
02190 EXISTING'FILE:
02200   OPEN #99, FILENAME, RANDOM, RECSIZ99, FILE99
02210   FILE99 = 1
02220   READ #99, USERS
02230   CALL DISPLAY
02240   FOR WHATNO = 1 TO NUMFIL
02250           CALL DISPLAY'JOBNAM
02260   NEXT WHATNO
02270 CHANGES:
02280   CNGCTL = 1
02290   XCALL ANYCN,CNGCTL,WHATNO
02300   IF CNGCTL = 0 THEN GOTO END'IT
02310   IF (WHATNO < 1) OR (WHATNO > NUMFIL) THEN GOTO CHANGES
02320   CALL GET'JOBNAM
02330   GOTO CHANGES
02340
02350 NEW'FILE:
02360   ALLOCATE FILENAME, 1
02370   OPEN #99, FILENAME, RANDOM, RECSIZ99, FILE99
02380   CALL DISPLAY
02390   FOR WHATNO = 1 TO NUMFIL
02400           CALL GET'JOBNAM
02410           CALL DISPLAY'JOBNAM
02420   NEXT WHATNO
02430   GOTO CHANGES
02440
02450 END'IT:
02460   FILE99 = 1
02470   WRITE #99, USERS
02480   CLOSE #99
02490 CLOSE:
02500   CHAIN "UTLMNU"
02510
02520 DISPLAY:
02530   ? TAB(3,21); "ENTER JOBNAM SPECIFICATIONS FOR EACH FILE";
02540   ? TAB(4,20);"JOBNAME";TAB(4,30);"TRMDEF";TAB(4,55);"JOBNAME";TAB(4,65);"TRMDEF"
02550   FOR I = 1 TO NUMFIL
02560   ROW = I-(NFILE*INT(I/(NFILE+1)))+5
02570   COL = 12+(INT(I/(NFILE+1))*35)
02580   ? TAB(ROW,COL); I USING "##"; ". "
02590   NEXT I
02600   RETURN
02610 GET'JOBNAM:
02620   ROW = WHATNO-(NFILE*INT(WHATNO/(NFILE+1)))+5
02630   COL = 20+(INT(WHATNO/(NFILE+1))*35)
02640   DEFLT=1
02650   JOBNAM=JOBNAMS(WHATNO)
02660   XCALL INPUT,ROW,COL,6,0,"A^",JOBNAM,INXCTL,1,DEFLT,EXTCODE,TIMER
02670   JOBNAMS(WHATNO) = JOBNAM
02680   COL = COL+10
02690   TRMDEF=TRMDEFS(WHATNO)
02700   XCALL INPUT,ROW,COL,6,0,"A^",TRMDEF,INXCTL,1,DEFLT,EXTCODE,TIMER
02710   TRMDEFS(WHATNO) = TRMDEF
02720   DEFLT=0
02730   RETURN
02740 DISPLAY'JOBNAM:
02750   ROW = WHATNO-(NFILE*INT(WHATNO/(NFILE+1)))+5
02760   COL = 20+(INT(WHATNO/(NFILE+1))*35)
02770   ? TAB(ROW,COL); JOBNAMS(WHATNO);
02780   COL = COL+10
02790   ? TAB(ROW,COL); TRMDEFS(WHATNO);
02800   RETURN
02810 !