*DECK DB$RSR
USETEXT RQPARTX 
      PROC DB$RSR (FITLIST,RLORD,PAKORD); 
      BEGIN 
 #
* *   DB$RSR - RELATION START OBJ-TIME ROUTINE   PAGE  1
* *   J J JANIK                                  DATE  11/07/78 
* 
* DC  PURPOSE 
* 
*     FORMAT THE REQUEST PACKET FOR THE "RELATION START" CALL 
* 
* DC  ENTRY CONDITIONS
* 
*     PARAMETERS
# 
      ARRAY FITLIST;               # ADDRESS OF FIT LIST (ROOT FIRST)  #
        BEGIN 
        ITEM FITADR U(0,42,18); 
        END 
      ITEM RLORD;                  # ADDRESS OF RELATION ORDINAL       #
      ITEM PAKORD;                 # ADDRESS OF PRIMARY/ALT KEY ORDINAL#
# 
*     ASSUMPTIONS 
* 
*     THE FIRST FIT IN THE FITLIST MUST BE SET UP FOR A START.  THE 
*     FIELDS KA,KP,KL,KT,MKL,RKW,RKP AND REL WILL BE USED IN THE START. 
* 
* DC  EXIT CONDITIONS 
* 
*     IF THE REQUEST IS SUCCESSFULLY COMPLETED OR A NON-FATAL ERROR 
*     OCCURRED, CONTROL IS RETURNED TO THE CALLER.
*     IF A FATAL ERROR OCCURRED, THEN THE BATCH 
*     USER IS ABORTED BY CDCS OR CONTROL RETURNS
*     TO THE INTERACTIVE USER.
* 
* DC  CALLING ROUTINES
* 
*     HOST LANGUAGE 
* 
* DC  CALLED ROUTINES 
* 
# 
      XREF PROC DB$RQST;           # FINALIZE REQUEST PACKET AND ISSUE #
                                   # "CALLSS" REQUEST                  #
# 
* 
* DC  NON-LOCAL VARIABLES MODIFIED
* 
*     DB$RQBF - VARIOUS ITEMS ARE CHANGED PRIOR TO THE DB$RQST CALL 
* 
* DC  DESCRIPTION 
* 
* 
*     THE POINTER TO THE KEY AND THE RELATION ORDINAL ARE MOVED TO THE
*     REQUEST PACKET. 
* 
*     SINCE ONLY THE ROOT FILE FILE IS MANIPULATED BY DB$RSR$, THE REST 
*     OF THE FITLIST IS IGNORED.  DB$RQST IS CALLED WITH THE ROOT FIT 
*     AS A PARAMETER.  FIELDS ARE MOVED FROM THE FIT TO THE REQUEST 
*     PACKET PRIOR TO ISSUEING THE "CALLSS" REQUEST 
* 
 #
      CONTROL NOLIST;   #CDGDFDCLS,RQPARDCLS# 
      XREF
        BEGIN 
        END 
      CONTROL LIST; 
  
#     LOCAL VARIABLES                                                  #
  
      BASED ARRAY FIT;;            # USED IN CALL TO DB$RQST           #
  
      CONTROL EJECT;
#     S T A R T   O F   D B $ R S R   E X E C U T A B L E   C O D E    #
  
#     INITIALIZE REQUEST PACKET ENTRIES                                #
  
      RQPRLPAK[0] = PAKORD; 
      RQPRELOR[0] = RLORD;
  
#     COMPLETE REQUEST PACKET AND ISSUE "CALLSS" REQUEST               #
  
      P<FIT> = FITADR[0];          # POINT TO ROOT FILE FIT            #
      DB$RQST (DFRSR,DFWCRSR,FIT);
      END 
      TERM
