*DECK DB$SRNM                                                            SRNM 
USETEXT MDBCMTX 
USETEXT MD10CTX 
USETEXT SCANTXT 
USETEXT UTMPTTX 
      PROC DB$SRNM;                                                      SRNM 
 #                                                                       SRNM 
  *   DB$SRNM - PROCS WHICH STORE NAMES          PAGE  1
  *             DB$SR27, DB$SR37, DB$SR38 AND DB$SR54 
  *   J. JAN JANIK                                                       SRNM 
  *   J. G. SERPA - MDU 2.3 ENHANCEMENTS         DATE  07/21/80 
  *   R. M. PAPPE                                DATE  09/26/80 
  
  
  DC  PURPOSE                                                            SRNM 
                                                                         SRNM 
      TO STORE THE NAMES (UP TO 30 CHAR) INTO THE PROPER HOLDING CELLS   SRNM 
      IN COMMON.                                                         SRNM 
                                                                         SRNM 
  DC  ENTRY CONDITIONS                                                   SRNM 
                                                                         SRNM 
      CURWORD CONTAINS THE NAME, DB$CLNG ITS LENGTH. DB$CLNG IS 30 OR    SRNM 
      LESS.                                                              SRNM 
                                                                         SRNM 
  DC  EXIT CONDITIONS                                                    SRNM 
                                                                         SRNM 
      ALL PROCS EXIT TO DB$NO AFTER THE INFORMATION IS STORED.
      DB$SR27 - STORES CURWORD IN AREANAM, LENGTH IN ARNMLEN             SRNM 
      DB$SR37 - STORES CURWORD IN SUBNAME, LENGTH IN SBNMLEN             SRNM 
      DB$SR38 - STORES CURWORD IN SCHNAME, LENGTH IN SCNMLEN             SRNM 
      DB$SR54 - STORES CURWORD IN VERSNAM 
                                                                         SRNM 
  DC  CALLING ROUTINES                                                   SRNM 
                                                                         SRNM 
      DB$STD - SYNTAX TABLE DRIVER                                       SRNM 
                                                                         SRNM 
  DC  CALLED ROUTINES                                                    SRNM 
                                                                         SRNM 
# 
      XREF
        BEGIN 
        FUNC DB$CPFN B;      # VALIDATE VERSION NAME                   #
        PROC DB$NO;          # SYNTAX TABLE DRIVER -NO- RETURN         #
        PROC DB$YES;         # SYNTAX TABLE DRIVER -YES- RETURN        #
        END 
# 
                                                                         SRNM 
  DC  NON-LOCAL VARIABLES MODIFIED
                                                                         SRNM 
      AREANAM, ARNMLEN - AREA NAME AND LENGTH IN 1,0 COMMON              SRNM 
      SCHNAME, SCNMLEN - SCHEMA NAME AND LENGTH IN 1,0 COMMON            SRNM 
      SUBNAME, SBNMLEN - SUBSCHEMA NAME AND LENGTH IN 1,0 COMMON         SRNM 
      VERSNAM          - VERSION NAME IN (1,0) COMMON 
  
 #                                                                       SRNM 
      BEGIN                                                              SRNM 
      XDEF                                                               SRNM 
        BEGIN                                                            SRNM 
        PROC DB$SR27;        # STORES AREA NAME AND LENGTH             # SRNM 
        PROC DB$SR37;        # STORES SUBSCHEMA NAME AND LENGTH        # SRNM 
        PROC DB$SR38;        # STORES SCHEMA NAME AND LENGTH           # SRNM 
        PROC DB$SR54;        # STORES VERSION NAME                     #
        END                                                              SRNM 
      CONTROL EJECT;                                                     SRNM 
      PROC DB$SR27;                                                      SRNM 
        BEGIN                                                            SRNM 
        AREANAM = " ";                                                   SRNM 
        C<0,DB$CLNG> AREANAM = C<0,DB$CLNG> CURWORDC[0];                 SRNM 
        ARNMLEN = DB$CLNG;                                               SRNM 
        ARNMLNW = DB$CLNW;
        DB$NO;                                                           SRNM 
                                                                         SRNM 
        END                                                              SRNM 
                                                                         SRNM 
                                                                         SRNM 
                                                                         SRNM 
                                                                         SRNM 
                                                                         SRNM 
      PROC DB$SR37;                                                      SRNM 
        BEGIN                                                            SRNM 
        SUBNAME = " ";                                                   SRNM 
        C<0,DB$CLNG> SUBNAME = C<0,DB$CLNG> CURWORDC[0];                 SRNM 
        SBNMLEN = DB$CLNG;                                               SRNM 
        DB$NO;                                                           SRNM 
                                                                         SRNM 
        END                                                              SRNM 
                                                                         SRNM 
                                                                         SRNM 
                                                                         SRNM 
                                                                         SRNM 
                                                                         SRNM 
      PROC DB$SR38;                                                      SRNM 
        BEGIN                                                            SRNM 
        SCHNAME = " ";                                                   SRNM 
        C<0,DB$CLNG> SCHNAME = C<0,DB$CLNG> CURWORDC[0];                 SRNM 
        SCNMLEN = DB$CLNG;                                               SRNM 
        DB$NO;                                                           SRNM 
                                                                         SRNM 
        END                                                              SRNM 
      CONTROL EJECT;
      PROC DB$SR54; 
      BEGIN 
 #
* *   DB$SRNM                                    PAGE  1
* *   DB$SR54 - STORE VERSION NAME
* *   R. M. PAPPE                                DATE  07/28/80 
* 
* DC  PURPOSE 
* 
*     STORE A VERSION NAME. 
* 
* DC  ENTRY CONDITIONS
* 
*     CURWORD CONTAINS A VERSION NAME.
* 
* DC  EXIT CONDITIONS 
* 
*     IF THE VERSION NAME IS VALID IT IS STORED IN CELL VERSNAM 
*     AND RETURN IS TO DB$YES. OTHERWISE, RETURN IS TO DB$NO. 
* 
* DC  CALLING ROUTINES
* 
*     VRSNTRY - CREATE A VERSION ENTRY
* 
* DC  CALLED ROUTINES 
* 
*     DB$CPFN - VALIDATE VERSION NAME 
*     DB$NO   - SYNTAX TABLE DRIVER -NO- RETURN 
*     DB$YES  - SYNTAX TABLE DRIVER -YES- RETURN
* 
* DC  NON-LOCAL VARIABLES MODIFIED
* 
*     VERSNAM IN (1,0) COMMON 
* 
* DC  DESCRIPTION 
* 
*     DB$CPFN IS CALLED TO VALIDATE THE VERSION NAME. 
*     IF THE VERSION NAME IS VALID, ITS NAME IS STORED IN CELL VERSNAM
*     AND RETURN IS TO DB$YES. OTHERWISE, RETURN IS TO DB$NO. 
* 
 #
  
      IF DB$CPFN                   # VALIDATE LENGTH AND CHARACTERS    #
      THEN
        BEGIN 
        VERSNAM = C<0,DB$CLNG>CURWORD[0]; 
        DB$YES; 
  
        END 
      DB$NO;
  
      END 
      END                                                                SRNM 
      TERM                                                               SRNM 
