*DECK DMLVERS 
      PROC DMLVERS(VERSNAM,ERRRTN); 
        BEGIN 
 #
* *   DMLVERS - NEW VERSION INTERFACE ROUTINE        PAGE  1
* * 
* *   H.S.WOO                                    DATE  08/06/80 
* 
* DC  PURPOSE 
* 
*     ISSUE A VERSION CHANGE REQUEST TO CDCS, 
*     PASSING VERSION NAME AS PARAMETER.
* 
*     ENTRY CONDITIONS
* 
*  C  PARAMETERS
* 
*     VERSNAM -- NAME OF VERSION TO BE SWITCHED 
*                TO.
* 
*     ERRRTRN -- ERROR BRANCH(OPTIONAL).
* 
* DC  EXIT CONDITIONS 
* 
*     WHEN CONTROL RETURNS FROM CDCS, ERROR 
*     STATUS WILL BE CHECKED.  ON ERROR, CONTROL
*     WILL SWITCH TO THE LABEL SPECIFIED IN THE ERR 
*     PARAMETER.
*     UPON RETURN FROM CDCS, ERROR STATUS IS STORED IN
*     DBSTAT.  IF STATED VERSION NAME IS NOT FOUND, THEN
*     CDCS WILL ABORT THE USER PROGRAM. 
*     CONTROL THEN RETURNS TO THE APPLICATION PROGRAM.
* 
* DC  CALLING ROUTINES
* 
*     DMLVERS IS CALLED FROM THE APPLICATION PROGRAM
*     AS A RESULT OF A DML NEW VERSION CALL.
* 
* DC  CALLED ROUTINES 
* 
*     DB$VERS  --  CDCS VERSION CHANGE OBJECT-TIME
*                  ROUTINE
* 
*     DMLRTRN  --  RETURN ROUTINE  --  SETS REGISTER
*                  TO RETURN PARAMETER
* 
* DC  NON-LOCAL VARIABLES MODIFIED
* 
*     NONE
* 
* DC  DESCRIPTION 
* 
*     A CALL TO DMLVERS IS GENERATED BY THE PREPROCESSOR
*     AS A RESULT OF A NEW VERSION CALL STATEMENT.  DMLVERS 
*     WILL ISSUE THE VERSION CHANGE REQUEST TO CDCS.
*     WHEN CONTROL RETURNS TO THE APPLICATION PROGRAM,
*     THE NAMED VERSION WILL BE IN EFFECT FROM THAT POINT ON. 
* 
 #
  
        CONTROL EJECT;
#**********************************************************************#
#                                                                      #
#     F O R M A L    P A R A M E T E R S   D E C L A R A T I O N S     #
#                                                                      #
        ITEM VERSNAM C(7);    # VERSION NAME                           #
        ITEM ERRRTN  I;       # (FTN5 ONLY)ERROR RETURN LABEL(OPTIONAL)#
                              # DO NOT REFERENCE, MAY NOT BE THERE     #
#                                                                      #
#     X R E F       D E C L A R A T I O N S                            #
#                                                                      #
        XREF PROC DB$VERS;   # CDCS VERSION INTERFACE ROUTINE          #
        XREF PROC DMLRTRN;   # SET RETURN REGISTER ROUTINE             #
#                                                                      #
#     C O M M O N   B L O C K    D E C L A R A T I O N                 #
#     F O R    F O R T R A N                                           #
#                                                                      #
        COMMON DB0000;
*CALL DB0DCLS 
#                                                                      #
#**********************************************************************#
                              #---L O C A L   V A R I A B L E S--------#
        ITEM RTNPARM;         # RETURN PARAMETER                       #
        CONTROL EJECT;
        CONTROL DISJOINT; 
#                                                                      #
#     E X E C U T A B L E    C O D E    B E G I N S    H E R E         #
#                                                                      #
  
        DB$VERS(VERSNAM,RTNPARM);  # CALL CDCS VERSION INTERFACE       #
                                   # ROUTINE                           #
          DBSTAT = RTNPARM;        # STORE ERROR INFORMATION IN DBSTAT #
        IF RTNPARM NQ 0 
        THEN
          BEGIN 
          RTNPARM = 1;             # SET RTNPARM TO 1                  #
          END 
        DMLRTRN(RTNPARM);          # SET THE RETURN PARAMETER          #
        RETURN;                    # RETURN TO THE APPLICATION PROGRAM #
      END 
      TERM
