INHOTMSM ; DGH,FRW,JSH,JPD ; 6 Mar 96 13:05; Output Controller background processor
Source file <INHOTMSM.m>
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| INRHB(INBPN,MESS,SRVR,UPDT) | ;Update background process file ; Input: ; INBPN-Background process ien ; MESS-Text ; SRVR-Server # ; LAST- 1 Update 3rd piece to $H, 0 leave 3rd piece | |
| END | ||
| HALT | ;Halt process | |
| TYPE(DA) | ;Return type of transaction ; Input: DA - ien of transaction | |
| NEXTDA(PRIO,DTTM,NO) | ;Get next transaction off queue ; Output: PRIO ; DTTM - Date,Time of transaction ; opt NO - Node to $Q ; Returns: DA - next transaction | |
| QS(GLB,SUB) | ; return subscript ; input: GLB = global reference returned from $Query ; SUB = numeric position of subscript to return ; output: returns value of subscript denoted by SUB ; mimics $QS except instead of error on bad data, just returns NULL | |
| ERROR | ;Error module for server | |
| SETENV | ;Set up environment | |
| KILL | ;Kill entry from INLHSCH | |
| SRVR(INBPN,INHSRVR) | ;Output controller background processor - server | |
| SVLOOP | ;Loop through transactions in the server queue | |
| WAIT() | ;max wait time before shutting down ; Return 0 to shut down 1 to not shut down | |
| RUN() | ;Function to decide if routine should continue to run | |
| TRANSOK() | ;Verify transaction is ok to process | |
| LOOP | ;Main loop | |
| NEWSRV | ;Try to start new server | 
| Name | Field # of Occurrence | 
|---|---|
| $$PRIO^INHB1 | SRVR+12 | 
| ENO^INHE | TRANSOK+4, TRANSOK+5, ERROR+3 | 
| ^INHOM | SVLOOP+22 | 
| ^INHOS | SVLOOP+20 | 
| ^INHOT | SVLOOP+18 | 
| ULOG^INHU | TRANSOK+4, TRANSOK+5 | 
| $$ERRMSG^INHU1 | ERROR+3 | 
| SETDT^UTDT | SETENV+2 | 
| $$REPLACE^UTIL | INHOTMSM+19 | 
| AUDCHK^XUSAUD | SRVR+15 | 
| AUDSTP^XUSAUD | HALT+5 | 
| ITIME^XUSAUD | SRVR+15, SVLOOP+5 | 
| Name | Line Occurrences (* Changed, ! Killed) | 
|---|---|
| ^%ZOSF("AVJ" | INHOTMSM+16 | 
| ^%ZOSF("PRIORITY" | SRVR+12 | 
| ^%ZOSF("SIGNOFF" | RUN+5 | 
| ^%ZOSF("TRAP" | SRVR+9, ERROR+1 | 
| ^DIJUSV( | HALT+3! | 
| ^INLHSCH | SVLOOP+3, SVLOOP+6, SVLOOP+10, TRANSOK+4!, KILL+1! | 
| ^INLHSCH("DEST" | KILL+1! | 
| ^INRHB("RUN" | INHOTMSM+12*, INHOTMSM+23!, NEWSRV+3, NEWSRV+8*, NEWSRV+9, NEWSRV+10, RUN+2, RUN+4, RUN+5!, SRVR+6 , SRVR+10*, HALT+1!, HALT+2, SVLOOP+1*, INRHB+7*, INRHB+8* | 
| ^INRHD - [#4005] | TYPE+3 | 
| ^INRHSITE(1 | INHOTMSM+13, INHOTMSM+16, INHOTMSM+17, RUN+3, SRVR+17, SRVR+18, SRVR+20 | 
| ^INTHOS(1 | INHOTMSM+18, SRVR+7, ERROR+2 | 
| ^INTHPC - [#4004] | SRVR+14 | 
| ^INTHU - [#4001] | TYPE+2, TRANSOK+1, TRANSOK+3 | 
| Name | Line Occurrences | 
|---|---|
| $$NEXTDA | LOOP+3, SVLOOP+6, NEXTDA+14 | 
| $$QS | NEXTDA+10, NEXTDA+12 | 
| $$RUN | INHOTMSM+22, LOOP+5, NEWSRV+2, NEWSRV+14, SRVR+8, SRVR+25 | 
| $$TRANSOK | SVLOOP+11 | 
| $$TYPE | SVLOOP+8, TRANSOK+2 | 
| $$WAIT | SRVR+25 | 
| HALT | ERROR+5 | 
| INRHB | LOOP+1, LOOP+4, NEWSRV+13 | 
| KILL | SVLOOP+9, TRANSOK+5 | 
| LOOP | INHOTMSM+22 | 
| NEWSRV | LOOP+5 | 
| SETENV | SRVR+11 | 
| SVLOOP | SRVR+25 | 
| Name | Field # of Occurrence | 
|---|---|
| ^( | INRHB+7*, INRHB+8* | 
| ^("SIGNOFF" | RUN+5 | 
| >> | Not killed explicitly | 
| * | Changed | 
| ! | Killed | 
| ~ | Newed | 
| Name | Field # of Occurrence | 
|---|---|
| % | TRANSOK+2*, QS+5~, QS+10*, QS+12* | 
| BP | SVLOOP+14~, SVLOOP+15*, SVLOOP+16 | 
| DA | LOOP+3*, LOOP+4, TYPE~, TYPE+2, SVLOOP+6*, SVLOOP+8, SVLOOP+18, SVLOOP+20, SVLOOP+22, NEXTDA+5! , NEXTDA+6*, NEXTDA+12*, NEXTDA+14*, NEXTDA+15, TRANSOK+1, TRANSOK+2, TRANSOK+3, TRANSOK+4, TRANSOK+5, KILL+1 , ERROR+3 | 
| DAY | NEXTDA+5~, NEXTDA+6*, NEXTDA+12 | 
| >> DEST | TYPE+2*, TYPE+3, TRANSOK+4, TRANSOK+5, KILL+1, ERROR+3 | 
| >> DEV | SRVR+25*, SVLOOP+18 | 
| >> DOM | TYPE+3* | 
| DTTM | LOOP+3, SVLOOP+6, SVLOOP+14~, NEXTDA~, NEXTDA+10*, NEXTDA+14, KILL+1 | 
| DUZ | HALT+3, SVLOOP+14~, SETENV+1* | 
| DUZ(0 | SETENV+1* | 
| GLB | QS~, QS+6*, QS+7, QS+8, QS+9*, QS+10, QS+11*, QS+12*, QS+13 | 
| >> H | SVLOOP+6* | 
| I | QS+5~ | 
| INAVJ | INHOTMSM+16*, NEWSRV+6, SVLOOP+14~ | 
| INBPN | INHOTMSM+12, INHOTMSM+23, LOOP+1, LOOP+4, NEWSRV+3, NEWSRV+8, NEWSRV+9, NEWSRV+10, NEWSRV+13, RUN+2 , RUN+4, SRVR~, SRVR+5, SRVR+6, SRVR+10, SRVR+14, HALT+1, HALT+2, SVLOOP+1, SVLOOP+15 , SVLOOP+16~*, INRHB~, INRHB+7, INRHB+8 | 
| INCUTOFF | INHOTMSM+15*, SRVR+18*, SVLOOP+14~, NEXTDA+12 | 
| >> INFSHNG | INHOTMSM+17*, NEWSRV+14 | 
| INHANG | INHOTMSM+13*, LOOP+4, SRVR+17*, SRVR+24, SVLOOP+3, SVLOOP+6, SVLOOP+14~, SVLOOP+23, WAIT+2 | 
| INHER | SRVR+9!, ERROR+3 | 
| >> INHJOB(4 | INHOTMSM+19*, NEWSRV+9 | 
| INHMWAIT | SRVR+20*, SRVR+22, SVLOOP+14~, WAIT+3 | 
| INHO | SVLOOP+14~ | 
| >> INHSRVMO | INHOTMSM+16* | 
| >> INHSRVNO | NEWSRV+3*, NEWSRV+8, NEWSRV+9, NEWSRV+10 | 
| INHSRVR | SRVR~, SRVR+5, SRVR+6, SRVR+10, SRVR+15, HALT+1, HALT+2, SVLOOP+1, SVLOOP+5, SVLOOP+15 , SVLOOP+16~* | 
| INHWAIT | SRVR+24*, SVLOOP+8*, SVLOOP+14~, WAIT+2*, WAIT+3 | 
| INJOB | SVLOOP+14~ | 
| INLKFLG | NEWSRV+1~*, NEWSRV+4*, NEWSRV+12 | 
| INPNAME | SRVR+14~*, SRVR+15, SVLOOP+5 | 
| INSHTDN | SRVR+22*, SRVR+23*, SVLOOP+14~, WAIT+2, WAIT+3 | 
| INSHTDN1 | SRVR+24*, SVLOOP+14~, WAIT+2*, WAIT+3 | 
| INTHROT | INHOTMSM+14*, NEWSRV+9, SVLOOP+14~ | 
| IO | SETENV+1* | 
| >> JOB | INHOTMSM+18*, INHOTMSM+19 | 
| MES | TRANSOK+4*!, TRANSOK+5*! | 
| MESS | INRHB~, INRHB+7, INRHB+8 | 
| MODE | INHOTMSM+14*, NEWSRV+3, SRVR+24*, SVLOOP+14~ | 
| N | LOOP+3*, TRANSOK+4, QS+5~, QS+11*, QS+12 | 
| >> ND | NEXTDA+10*, NEXTDA+12 | 
| NO | NEXTDA~, NEXTDA+7*, NEXTDA+8*, NEXTDA+9, NEXTDA+10, NEXTDA+12, NEXTDA+13*, NEXTDA+14 | 
| >> NT | NEXTDA+10*, NEXTDA+12 | 
| P | NEXTDA+10*, NEXTDA+11, NEXTDA+12, NEXTDA+13, QS+5~, QS+10* | 
| PO | QS+5~, QS+10* | 
| PRIO | LOOP+3, SVLOOP+6, SVLOOP+14~, NEXTDA~, NEXTDA+12*, NEXTDA+14, TRANSOK+4, KILL+1 | 
| S | QS+5~, QS+10* | 
| SRVR | INRHB~, INRHB+7 | 
| SUB | QS~, QS+6, QS+10, QS+11 | 
| SV | SVLOOP+14~, SVLOOP+15*, SVLOOP+16 | 
| TIME | NEXTDA+5~, NEXTDA+6*, NEXTDA+12 | 
| >> TYPE | TYPE+2*, TYPE+3*, TYPE+4, SVLOOP+8*, SVLOOP+18, SVLOOP+20, SVLOOP+22, TRANSOK+5 | 
| U | INHOTMSM+13, INHOTMSM+14, INHOTMSM+15, INHOTMSM+16, INHOTMSM+17, TYPE+2, TYPE+3, SRVR+14, SRVR+17, SRVR+18 , SRVR+20, SVLOOP+14~, SETENV+1*, INRHB+7, INRHB+8 | 
| UPDT | INRHB~, INRHB+6*, INRHB+7, INRHB+8 | 
| X | INHOTMSM+11~, INHOTMSM+13*, INHOTMSM+14, INHOTMSM+15, NEWSRV+14*, SRVR+9*, SRVR+12*, ERROR+1*, QS+5~ | 
| X( | QS+6, QS+7*, QS+10*, QS+11 | 
| X(0 | QS+7*, QS+8* | 
| >> XUAUDIT | SRVR+15, HALT+5, SVLOOP+5 | 
| >> Y | NEWSRV+7 |