PROGRAM SNDMSG,1.0 ! ! ========================== ! // SEND MESSAGE UTILITY \\ ! //==========================\\ ! << BY THE GREAT & MIGHTY OZ >> ! //===============\\==========================//=================\\ ! || * * * * * E D I T H I S T O R Y * * * * * || ! || || ! || 8/07/85 edit history started. /dmm || ! || set up to work with TVI925, TVI950 & WYSE50 || ! || if set up in imulation mode. /dmm || ! || || ! \\==============<<============================>>================// ! \\==========================// MAP1 JOBTBL MAP2 JOBNO,B,1 MAP2 JOBNAM,S,6 MAP2 JOBTRM,S,6 MAP2 JOBPRG,S,6 MAP2 JOBDEV,S,3 MAP2 JOBDVR,B,2 MAP2 JOBPPN MAP3 JOB'PROG,B,1 MAP3 JOB'PROJ,B,1 MAP3 JOBUSR,B,2,@JOBPPN MAP2 JOBCPU,B,4 MAP2 JOBDSR,B,4 MAP2 JOBDSW,B,4 MAP2 JOBCON,S,10 XCALL JOBGET,JOBTBL !<------<<< ***(OPTIONAL)*** 02000 ! 02010 MAP1 USERS 02020 MAP2 JOBNAMS(30),S,6 02030 MAP2 TRMDEFS(30),S,6 02040 MAP1 FILENAME,S,10,"USERS.DAT" 02050 MAP1 RECSIZ99,F,6,LEN(USERS) 02060 MAP1 ENTRY,S,70 02070 MAP1 RTNCDE,F,6 02080 MAP1 INXCTL,F,6 02090 MAP1 NUMFIL,F,6,30 02100 FILEBASE 1 02110 XCALL NOECHO 02120 NFILE = INT((NUMFIL/2)+.5) 02130 ? TAB(-1,0);"MESSAGE SENDING UTILITY" 02140 OPEN: 02150 OPEN #99, FILENAME, RANDOM, RECSIZ99, FILE99 02160 FILE99 = 1 02170 READ #99, USERS 02180 CALL DISPLAY 02190 FOR WHATNO = 1 TO NUMFIL 02200 CALL DISPLAY'JOBNAM 02210 NEXT WHATNO 02220 IN: 02230 ? TAB(24,1);TAB(-1,9);"SELECT JOB "; 02240 ! XCALL INFLD,24,15,02,00,"#EW",ENTRY,INXCTL,1,DEFLT,EXTCODE,TIMER 02245 XCALL INPUT,24,15,02,00,"#EW",ENTRY,INXCTL,1 02250 IF INXCTL GOTO CLOSE 02260 WHATNO=ENTRY 02270 IF WHATNO=99 GOTO SEND'IT 02280 IF WHATNO < 1 OR WHATNO > 30 XCALL MESAG,"",3 : GOTO IN 02290 SEND'IT: 02300 ? TAB(24,1);TAB(-1,9);"MESSAGE"; 02310 XCALL INPUT,24,9,70,00,"AW",ENTRY,INXCTL,1,DEFLT,EXTCODE,TIMER 02320 IF INXCTL GOTO IN 02330 IF WHATNO=99 GOTO SEND'ALL 02340 OPEN #1,"TRM:"+TRMDEFS(WHATNO),OUTPUT 02350 IF ENTRY="" GOTO CLEAR'MSG 02360 ? #1;CHR(7);" "; 02370 ? #1;"f"+ENTRY+":"+JOBNAM 02380 ? #1;"g"; 02390 CLOSE #1 02400 GOTO IN 02410 SEND'ALL: 02420 FOR I = 1 TO 30 02430 IF TRMDEFS(I)="" GOTO NEXT'I 02440 OPEN #1,"TRM:"+TRMDEFS(I),OUTPUT 02450 IF ENTRY="" GOTO CLEAR'ALL 02460 ? #1;CHR(7);" "; 02470 ? #1;"f"+ENTRY+":"+JOBNAM 02480 ? #1;"g"; 02490 CLOSE #1 02500 NEXT'I: 02510 NEXT I 02520 GOTO IN 02530 CLEAR'ALL: 02540 ? #1;" "; 02550 ? #1;"f"+SPACE(78) 02560 ? #1;"g"; 02570 ? #1;"h"; 02580 CLOSE #1 02590 GOTO NEXT'I 02600 CLEAR'MSG: 02610 ? #1;" "; 02620 ? #1;"f"+SPACE(78) 02630 ? #1;"g"; 02640 ? #1;"h"; 02650 CLOSE #1 02660 GOTO IN 02670 CLOSE: 02680 CHAIN "UTLMNU" 02690 DISPLAY: 02700 PRINT TAB(3,21); "SEND MESSAGE, TO SELECTED JOB" 02710 FOR I = 1 TO NUMFIL 02720 ROW = I-(NFILE*INT(I/(NFILE+1)))+4 02730 COL = 12+(INT(I/(NFILE+1))*35) 02740 ? TAB(ROW,COL); I USING "##"; ". " 02750 NEXT I 02760 RETURN 02770 02780 DISPLAY'JOBNAM: 02790 ROW = WHATNO-(NFILE*INT(WHATNO/(NFILE+1)))+4 02800 COL = 20+(INT(WHATNO/(NFILE+1))*35) 02810 ? TAB(ROW,COL); JOBNAMS(WHATNO); 02820 COL = COL+10 02830 ? TAB(ROW,COL); TRMDEFS(WHATNO); 02840 RETURN 02850 02860 !