*DECK DB$TQTC 
USETEXT CDCSCTX 
      PROC DB$TQTC; 
      BEGIN 
 #
* *   DB$TQTC -- TQT CREATOR                     PAGE  1
* *   C O GIMBER                                 11/14/75 
* 
* DC  PURPOSE 
* 
*     CREATE TQT ENTRY
* 
* DC  ENTRY CONDITIONS
* 
*     P<RCB> SET FOR CURRENT REQUEST. 
*     TQT BASED ARRAY POINTER IS SET TO AN EXISTING TQT ENTRY.
* 
* DC  EXIT CONDITIONS 
* 
*     TQT ENTRY CREATED.
* 
* DC  CALLED ROUTINES 
# 
      XREF PROC DB$FLOP;     # GENERATE FLOW POINT                     #
      XREF FUNC DB$LNK;      # CREATE LINKED BLOCK                     #
# 
* DC  CALLING ROUTINES
* 
*     DB$IREC -- INPUT RECEIVER 
*     DB$INV$ -- INVOKE SYMBIONT
* 
* DC  NON-LOCAL VARIABLES 
* 
*     CDCS COMMON 
 #
  
#     LOCAL VARIABLES                                                  #
  
      ITEM INDEX        I;   # SCRATCH - FOR LOOP                      #
  
  
  
#     B E G I N   D B $ T Q T C   E X E C U T A B L E   C O D E .      #
  
  
  
      CONTROL IFGR DFFLOP,0;
        DB$FLOP ("TQTC   ");
      CONTROL ENDIF;
  
 #
* 
* DC  DESCRIPTION 
* 
*     CREATE LINKED TQT ENTRY.
 #
      P<TQT> = DB$LNK(LOC(TQTCHAIN),DFTQTSIZE); 
 #
*     SET TQT POINTER IN RCB. 
 #
      RCTQT[0] = LOC(TQT);
 #
*     SET TQT FIELDS. 
 #
      FOR INDEX=1 STEP 1
        UNTIL DFTQTSIZE-1 
      DO
        BEGIN 
        TQWORD00[INDEX] = 0;
        END 
      TQRUID[0] = RCIRRUID[0];
      TQTASK[0] = RCIRTASK[0];
      TQRCB[0] = LOC(RCB);
      TQRSTID[0] = " "; 
      TQVENAME[0] = " ";
      TQPRNAME[0] = " ";
  
      IF TQTASK[0] NQ 0      # IF INTERACTIVE QU OR TAF USER           #
      THEN                   # THEN SET IMMEDIATE RETURN.              #
        BEGIN 
        TQIMRTN[0] = TRUE;
        END 
  
      RETURN; 
      END 
      TERM; 
