*COMDECK HISTORY
 *L498*    ************************************************ 
DC2A001   CORRECTIVE CODE TO FIX THE "DELETE GLOBAL" PROBLEM, ALSO
          CORRECT HEADER LINES IN DCCONTOT AND DCCONCBL.
          BBR    79/03/12    DCUPDDEL 
          RMP    79/03/22    DCCONTOT,DCCONCBL,DCCVTGEN 
          BBR    79/03/26    BALDEF2,DCTOT315,DCUPDATE
  
 DC2A002  CORRECTIVE CODE TO FIX THE FOLLOWING PROBLEMS:  
          1. ALLOW MULTIPLE USERS TO QUERY THE CATALOG
          2. GIVE ELEMENTS WITHIN GROUPS THEIR OWN LENGHT RATHER
             THAN GROUP LENGTH
          3. MISCELANEOUS COSMETIC CHANGES TO HEADERS AND SOURCE
             AND OBJECT COMPUTER CLAUSES
          4. DELETION OF UNREFERENCED DIAGNOSTICS IN DCRPT. 
          5. UTILITY SYSTEM WAS NOT UPDATING THE FIRST CONTROL WORD OF MAST3
             BECAUSE THE RETURN-CODE SWITCHES WERE DEFINED AS ALPHANUMERIC
             AND THEN NUMERIC FUNCTIONS WERE PERFORMED. THE FINAL CHECK,
             BEFORE WRITING CTL-RECORD-1, WAS COMPARING "00" TO 
             " 0" CAUSING THE MODULE TO GO TO EOJ INSTEAD OF FOLLOWING
             THROUGH TO THE NEXT PARAGRAPH. 
             SYSTEM 
          BBR    79/04/23    DCTOT315,DCCVTGEN,DCCONTOT 
                             DCCONCBL,-DCRET- 
          RMP    79/04/25    -DCRPT-.CWEOR4 
          RMP    79/04/25    DCUTL,DCUTL100 
                             DCUPDATE,DCUPD00,DCUPDDEL
 *L505*    ************************************************ 
 DC2A003  COBOL5 NO LONGER ISSUES AN AUTOMATIC CLOSE OF A FILE IF COBOL5 IS 
          EXECUTING FROM A SUB-PROGRAM. THIS CAUSED THE CONTROL-RECORD
          IN MAST3 TO NOT BE UPDATED AFTER "UPDATES" WERE PERFORMED, WHICH
          IN TURN PREVENTED "REVISION-CHECKING" AND "DISPLAY UPDATE" FROM 
          EXECUTING PROPERLY. 
          CORRECTIVE CODE WILL PERFORM THE CLOSE OF MAST3 IN UPD00 PRIOR
          TO RETURNING TO THE ROOT PROGRAM. 
          RMP    79/04/30    DCUPDATE,DCUPD00,DCUPDDEL
  
 *L508*    ************************************************ 
 *L518*    ************************************************ 
 DC2*80   UPDATE COPYRIGHT CODE FOR 1980. 
          RMP    79/11/01    COPYRIGHT
 *L528*    ************************************************ 
 DC2A007  PROBLEM - DCUTL SYSTEM STOPS PROCESSING OF "COPY"              DC2A007
          STATEMENTS WHEN AN ENTRY WITHOUT DETAIL LINES IS               DC2A007
          ENCOUNTERED.                                                   DC2A007
          SOLUTION - ADD CODE TO THE COPY MODULE TO DIAGNOSE             DC2A007
          THE ENTRY WITHOUT DETAILS AND CONTINUE PROCESSING.             DC2A007
          BBR    07/18/80    DCUTL800                                    DC2A007
 DC2*81   UPDATE COPYRIGHT CODE FOR 1981
          RMP    80/08/12    COPYRIGHT
 DC2A013  PROBLEM - UPDATE MODULE FORMATS RECORDS GREATER THAN
          1197 CHARACTERS IN SIZE INCORRECTLY BY CREATING A 
          CONTINUATION INDICATOR AS THREE ASTERISKS INSTEAD OF
          SIX AS EXPECTED BY THE RETRIEVAL MODULES. 
          SOLUTION - INCREASE THE SIZE OF THE CONTINUATION
          INDICATOR IN THE UPDATE MODULE FROM THREE TO SIX
          ASTERISKS.
          BBR    80/07/18    DCUPDDEL,DCUPDATE
          RMP    80/70/23    HISTORY
 DC2A015  PROBLEM - QUERY SYSTEM (DCRET) EXECUTION FIELD LENGTH 
          IS LARGER THAN NECESSARY BECAUSE IT CONTAINS ALL
          THE MODULES ASSOCIATED WITH THE GENERATE SYSTEM.
          SOLUTION - SEPARATE THE TWO SYSTEMS AS FOLLOWS: 
          DCRET - WILL CONTAIN THE QUERY SYSTEM 
          DCGEN - WILL CONTAIN THE GENERATE SYSTEM. 
          BBR    80/07/18    GENCS,DCGENER,DCGEN001,DCRETR
                             DCCBL010,DCCBL300,DCCBL315,DCCBL320
                             DCTOT300,DCTOT315,DCPLC300,DCPLC315
          RMP    80/08/12    HISTORY
 *L538*    ************************************************ 
 DC2A009  AN END-IO STATEMENT WILL BE GENERATED WHEN TOTAL DBDLS
          ARE GENERATED.
          BBR    80/12/20    DCTOT315 
 DC2A010  WHEN THE CREATE OPTION IS USED WITH A SELECT ON A CONVERT 
          RUN FOR A TOTAL DBDL TRANSACTIONS WILL BE GENERATED.
          BBR    80/10/20    DCCONTOT 
 DC2A012  WHEN CONVERTING DBDL RECORD STURCTURE KEYS, DATA CATALOGUE
          WILL USE THE TOTAL WORD TKEY INSTEAD OF COBOLS KEY. 
          BBR    80/12/20    DCCVTGEN 
 *L552*    ************************************************ 
 DC20006  PROBLEM. DIAGNOSTIC 600 IS ISSUED WHEN CATEGORY LINE
          NUMBERS ARE USED TO FURTHER EXPAND CATEGORY HEADERS.
          THIS PROBLEM OCCURS ONLY IN AN ASCII SYSTEM BECAUSE 
          OF THE WAY CHOSEN TO CHECK FOR A NUMERIC FIELD. 
          SOLUTION. CHANGE THE CHECK FOR A NUMBER TO BE 
          -IF NUMERIC- INSTEAD OF -GREATER THAN "Z"-. 
          RMP    81/04/16     DCUPDATE,DCUPD00,DCUPDKW
 *L564*    ************************************************ 
 CD2*82   UPDATE COPYRIGHT CODE FOR 1982. 
         PJR     09/03/81    COPYRIGHT
 *L577*    ************************************************ 
 *L587*    ************************************************ 
 *L599*    ************************************************ 
 DC2A025  PROBLEM  - QUERY (DCRET) ERROR MESSAGE "INPUT IGNORED UNTIL 
                     NEXT FUNCTION" IS MISLEADING NOW THAT QUERY AND
                     GENERATE ARE SEPARATE MODULES. 
          SOLUTION - CHANGE MESSAGE VALUE CLAUSE. 
          BR     04/20/83    DCQRY020 
  
  
 DC2A026  PROBLEM  - QUERY (DCRET) ERROR MESSAGE "FIRST STATEMENT NOT 
                     A FUNCTION" IS MISLEADING NOW THAT QUERY AND 
                     GENERATE ARE SEPERATE MODULES. 
          SOLUTION - CHANGE MESSAGE USED TO "INPUT IGNORED UNTIL
                     $QUERY" BY SETTING ERROR CODE (INDEX TO ERROR
                     MESSAGE TABLE).
          BR     04/20/83    DCRETR 
  
 DC2A027  PROBLEM  - QUERY (DCRET) DOES NOT FLAG ERROR IN TITLE 
                     DIRECTIVE UNTIL THE NEXT DIRECTIVE AND AN IN-
                     CORRECT ERROR MESSAGE IS DISPLAYED.  IN ADDITION 
                     THE TITLE DIRECTIVE IS ECHOED BACK DURING INTER- 
                     ACTIVE PROCESSING. 
          SOLUTION - THE CHANGES FOR QB0001 TOOK CARE OF THE MESSAGE
                     BEING OUT OF SYNC, BUT THE ERROR CODE WAS
                     CORRECTED IN ORDER TO HAVE THE RIGHT ERROR MESSAGE 
                     DISPLAYED.  TESTING FOR ON LINE PROCESSING PRIOR 
                     TO ECHOING DIRECTIVES WAS ADDED. 
          BR     04/20/83    DCRETR 
  
 D2A028   PROBLEM  - QUERY (DCRET) DOES NOT IMMEDIATELY FLAG ERROR
                     IN $QUERY OR FIRST STATEMENT AFTER $QUERY. 
                     ERROR MESSAGES ARE OUT OF SYNC IN THOSE TWO
                     INSTANCES BECAUSE OF EXTRA CODE FOR GENERATE 
                     OPTION PROCESSING WHICH WAS USED WHEN QUERY AND
                     GENERATE WERE EXECUTED FROM ONE ABSOLUTE.
          SOLUTION - DELETE UNNECESSARY CODE AND REWRITE PART OF THE
                     ERROR PROCESSING.
          BR     04/20/83    DCRETR 
  
 DC2A029  PROBLEM  - REPORT MODULE PRINTS GARBAGE AS END OF PAGE
                     MESSAGE WHEN SHOWREQ=NO OPTION IS USED.
          SOLUTION - ENSURE SPACES ARE ALWAYS IN END OF PAGE MESSAGE
                     AREA WHEN MESSAGE IS NOT REQUESTED.
          BR     04/20/83    CATRTS,DCRPT200
  
 DC2A030  PROBLEM  - UTILITY (DCUTL) INITIALIZE PROCESSING HAS
                     INCORRECT SPELLING FOR SYSTEM NAME "TRECORDS", 
                     WHICH INHIBITED THE USE OF THAT FIELD IN ALL 
                     MODULES. 
          SOLUTION - CORRECT THE VALUE CLAUSE.
          BR     04/20/83    DCUTL100 
  
 DC2A031  PROBLEM  - UTILITY (DCUTL) DOES NOT CHANGE ALIAS REFERENCES 
                     IN THE RENAME PROCESSING.
          SOLUTION - PROGRAM HAS THE NECESSARY PROCESSING LOGIC BUT 
                     DID NOT CHECK FOR THAT INSTANCE.  CHANGED IF 
                     STATEMENT. 
          BR     04/20/83    DCUTL300 
  
 DC2A032  PROBLEM  - UTILITY (DCUTL) BACKUP AND RESTORE SUMMARY 
                     REPORTS HAVE MISLEADING STUB TITLES FOR SOME 
                     COUNTERS.  TOTAL COUNTER FOR MAST2 SHOULD BE 
                     CALLED "RELATIONAL" AND THE ONE FOR MAST1 SHOULD 
                     BE "DATA".  THIS WILL ALLOW THE CLEAR DISTINCTION
                     BETWEEN THE SUBTOTALS BY ENTITY TYPES VERSUS TOTALS
                     BY FILES.
          SOLUTION - CHANGE VALUE CLAUSES FOR THE APPROPRIATE REPORT
                     FIELDS.
          BR     04/20/83    DCUTL,DCUTL500,DCUTL600
  
 DC2A033  PROBLEM  - UTILITY (DCUTL) RESTORE SUMMARY REPORT HAS 
                     INCORRECT STUB TITLE FOR MAST3 COUNTER.
                     SHOULD BE "CONTROL".  PROGRAM DOES NOT SET UP
                     REPORT FIELD.
          SOLUTION - MOVE CORRECT VALUE TO REPORT FIELD.
          BR     04/20/83    DCUTL600 
  
 DC2A034  PROBLEM  - UTILITY (DCUTL) COPY OR MOVE DIRECTIVES GENERATE 
                     SYSTEM NAME "KEY=" FOR CLASSIFICATION CATEGORY.
                     THAT IS NOT VALID SYNTAX FOR UPDATE MODULE.
          SOLUTION - CHECK FOR CONDITION AND BYPASS THE SET UP OF 
                     SYSTEM NAME. 
          BR     04/20/83    DCUTL800 
  
          PROBLEM  - UPDATE (DCUPD) DOES NOT FLAG DELETE OF A CATEGORY
                     DURING AN ADD TRANSACTION. 
          SOLUTION - TEST FOR THIS CONDITION AND FLAG THE ERROR.
          BR     04/20/83    DCUPDATE 
  
 DC2A036  PROBLEM  - UPDATE (DCUPD) DOES NOT REMOVE SPACE BETWEEN 
                     EQUAL SIGN OF ADD DIRECTIVE AND THE CATNAME. 
                     CATNAME IS USED AS KEY.  THEREFORE LATER THE 
                     ENTRY CAN NOT BE RETRIEVED DIRECTLY BECAUSE
                     SPACE IS FIRST CHARACTER OF THE KEY (CATNAME). 
          SOLUTION - CHECK FOR SPACES ON DIRECTIVE. 
          BR     04/20/83    DCUPDATE 
  
 DC2A037  PROBLEM  - UPDATE (DCUPD) INCORRECTLY PROCESSES THE SECOND
                     CONSECUTIVE DELETE DIRECTIVE, WHEN THE FIRST 
                     DELETE HAS A WHERE-USED, GLOBAL OR USING CLAUSE
                     AND THE SECOND DOES NOT.  IT USES THE SAME 
                     CLAUSE FOR THE SECOND AS WAS ENTERED FOR THE 
                     FIRST. 
          SOLUTION - BLANK OUT DELETE TRANSACTION HOLD AREA.
          BR     04/20/83    DCUPDDEL 
  
 DC2A038  PROBLEM  - UPDATE (DCUPD) STOPS INPUT IF DIRECTIVE BEGINS 
                     WITH "9".  HIGH VALUES IN COLUMN 1 OF TRANSACTION
                     HOLD AREA IS USED AS THE END OF FILE INDICATOR TO
                     TO CONTROL PROGRAM LOGIC.
          SOLUTION - CHANGE END OF FILE INDICATOR TO "-" IN COLUMN 1
                     OF HOLD AREA.  THAT CHARACTER IS NEVER USED IN 
                     COLUMN 1 OF THE INPUT DIRECTIVES.
          BR     04/20/83    DCUPDATE 
  
 DC2A039   PROBLEM  - PAGE HEADINGS ARE PRINTED DURING INTERACTIVE
                     UPDATES. 
          SOLUTION - FLAG FOR PRINTING WAS NOT SET CORRECTLY FOR
                     INTERACTIVE USAGE. 
          ROC    10/01/83    DCUPD
  
 DC2A040   PROBLEM  - FIELDS TRUNCATED WITHOUT MESSAGE. 
          SOLUTION - THIS PROBLEM INVOLVED MODIFYING DCUPDKW.  A NEW
                     VARIABLE WAS ADDED TO KEEP TRACK OF HOW LONG THE 
                     INPUT VALUE IS.  THIS WAS NECESSARY BECAUSE
                     IMBEDDED BLANKS ARE LEGAL FOR SOME CATEGORIES
                     WITHIN AN ENTITY TYPE.  ALSO, DCUPDKW NO LONGER
                     GOES TO CATEGORY-EDIT WITHOUT CHECKING THE FIELD 
                     LENGTH AGAINST THE MAXIMUM ALLOWED (FOUND IN MAST3). 
          ROC    10/01/83    DCUPD
  
 DC2A041   PROBLEM  - STRUCTURE LINE CAUSE DCUPD TO ABORT.
          SOLUTION - THIS ERROR IS DEPENDENT ON MULTIPLE ENTRIES ON A 
                     LINE AND THE POSITION IN THE UPDATE.  IF THE FIRST 
                     LINE TO BE CHANGED IS MISSING THE CATNAME, DCUPD 
                     ABORTS.  HOWEVER, IF SOME OTHER LINES OR CATEGORIES
                     WERE CHANGED PRIOR TO THIS ERROR A 660-S ERROR IS
                     GENERATED WITH SOME WORDS OVERLAPPING FROM THE 
                     PREVIOUS ERROR.  DCUPD BLOWS UP BECAUSE THE SUBSCRIPT
                     FLD WAS NOT INITIALIZED WHEN A COMMA IS FOUND BEFORE 
                     AN EQUAL SIGN.  ERROR MESSAGES WERE ERRONEOUS
                     BECAUSE NO NEW VALUE WAS MOVED TO KEY-WORD.  THE 
                     SECOND FIELD WAS BEING SKIPPED BECAUSE TX WAS
                     INCREMENTED BEYOND THE COMMA.  MAST2 POINTERS ARE
                     NOT DAMAGED. 
          ROC    10/01/83    DCUPD
  
 DC2A042   PROBLEM  - DCUPD LOOPS WHEN DUPLICATE DELETE TRANSACTIONS OCCUR. 
          SOLUTION - THE REASON THE UPDATE MODULE BEGINS LOOPING IS 
                     BECAUSE OF VARIABLES THAT ARE NOT IN COMMON STORAGE. 
                     BY INITIALIZING THEM IN THE BEGINNING OF THE 
                     SUBPROGRAM, DCUPDDEL, THE MODULE DOES NOT LOOP AND 
                     WILL ISSUE THE ERROR MESSAGE:  430-S DEL FOR NON-
                     EXISTENT ENTRY.
          ROC    10/01/83    DCUPDDEL 
  
 DC2A043   PROBLEM  - EDIT ONLY OPTION CAUSES A PARTIAL DELETE IN DCUPD.
          SOLUTION - DELETES ARE HANDLED IN THE SUB-PROGRAM DCUPDDEL. 
                     A SIMPLE DELETE FOR EDIT-ONLY=YES GOES THRU THE
                     PARAGRAPH WHICH DELETED THE POINTER FROM 
                     DC2ALLNAMES.  BY ADDING AN ADDITIONAL PARAGRAPH
                     NAME THE POINTER WILL NOT BE DELETED BUT THE 
                     INFORMATIVE MESSAGE WILL STILL BE PRINTED. 
          ROC    10/01/83    DCUPD
  
 DC2A045   PROBLEM  - ERROR IN CONTINUATION WHEN CHANGING STRUCTURES LINES
                     CAUSES AN 850 ERROR. 
          SOLUTION - WHEN AN ERROR IN CONTINUATION IS FOUND, AN ERROR 
                     MESSAGE IS PRINTED OUT AND THE NEXT LINE IS
                     PROCESSED.  INSTEAD, MAST2 NEEDS TO BE UPDATED WITH
                     INFORMATION FROM THE FIRST LINE IF IT IS NECESSARY.
                     THIS CHANGE HAS BEEN COMPLETED.
          ROC    10/01/83    DCUPDATE 
  
 DC2A046   PROBLEM  - UPDATE ALLOWS CHANGE TO COMMENT LINE BUT DOESNT BLANK 
                     OUT UNUSED FIELD.
          SOLUTION - THE PROBLEM CAUSES ERRONEOUS DATA FIELDS IN MAST1. 
                     WHEN AN EXISTING COMMENT LINE IS CHANGED TO A DETAIL 
                     LINE (IN ANY CATEGORY) NO CHECK ON THE EXISTING LINE 
                     IS MADE BEFORE CALLING OR IN THE APPROPRIATE EDIT
                     ROUTINE, WHICH REBUILDS THE LINE.  THEREFORE, FIELDS 
                     THAT ARE SYNTACTICALLY CORRECT OVERLAY THE COMMENT 
                     WITHOUT BLANKING OUT UNNECESSARY CHARACTERS.  TO 
                     FIX THE PROBLEM THE WORK ARRAY NEEDS TO BE BLANKED 
                     OUT IN THE EDIT ROUTINE PRIOR TO FIELD EDITING CODE
                     AND SPECIAL ERROR HANDLING INCLUDED TO RESTORE THE 
                     COMMENT LINE IN THE EVENT NO FIELDS ARE ACCEPTED FOR 
                     THE NEW LINE.  THIS CHANGE AFFECTS ALL EDIT ROUTINES.
                     TO TEST THIS CHANGE ALL INEGRATION TESTING PROCEDURES
                     RELATED TO THE UPDATE MODULE WILL NEED TO BE EXECUTED. 
           ROC   10/01/83    DCUPDLNK 
  
 DC2A048   PROBLEM  - ATTEMPT TO DELETE STRUCTURE LINE IS REJECTED WITH 
                     THE DIAG "DCUPD-685-S" 
          SOLUTION - THE DIAGNOSTIC OCCURRED BECAUSE THE PROGRAM CHECKS 
                     FOR "DEL" OR "DELETE" WHEN AN ATTEMPTS IS MADE TO
                     DELETE A STRUCTURE LINE.  THE CODE HAS BEEN MODIFIED 
                     TO CHECK FOR "$DEL" OR "$DELETE" ALSO.  THE
                     DOCUMENTATION HAS BEEN REVISED TO HANDLE A DELETE OF 
                     A STRUCTURE LINE WITH OR WITHOUT THE DOLLAR SIGN.
          ROC    10/01/83    DCUPDATE 
  
  
 DC2A050   PROBLEM  - FIELD CONTAINING DELETE VALUE CREATES OUTPUT
                     TRANSACTION WITH VALUE $DELETE.
          SOLUTION - AN ATTEMPT TO RECREATE THE PROBLEM REVEALED THAT THE 
                     SAID PROBLEM RESIDES IN THE UPDATE MODULE AND NOT
                     THE UTILITY.  THE UPDATE MODULE EDIT ROUTINES PERFORM
                     FIELD BY FIELD CHECKS FOR THE USER ENTERED VALUES
                     $DEL AND DEL, OR $DELETE AND DELETE.  IN A FEW CASES 
                     WHERE THE CHECK IS INCORRECTLY CODED AND THERE ARE 
                     NO PREDEFINED CODE VALUES, THE $DELETE OR DELETE IS
                     STORED AS A VALUE.  IN THESE CASES THE UTILITY MODULE
                     IS SIMPLY ECHOING WHAT IS IN THE DATA FILE.
          ROC    10/01/83    DCUPD
  
 DC2A051   PROBLEM  - KW=KEYWORD USE-OUTPUT STATEMENT CONSIDERS USE-OUTPUT
                     AS PART OF KEYWORD.
          SOLUTION - WHEN EXTRACTING EACH INDIVIDUAL FIELD IN THE SELECT
                     STATEMENT WHENEVER AND EQUAL SYMBOL "=" WAS ENCOUNTERED. 
                     THE NEXT EXTRACTING PROCESS WOULD SEARCH FOR A 32
                     CHARACTER FIELD AS IN AN OPTION QUERY.  THE SOLUTION 
                     WAS TO CHECK TO SEE IF A BLANK IMMEDIATELY FOLLOWED
                     THE EQUAL SYMBOL.  IF SO, NO OPTION QUERY WAS TAKING 
                     PLACE.  IF NO BLANK FOLLOWED THE EQUAL SYMBOL, THEN
                     PROCESSING WOULD CONTINUE AS IN EXTRACTING A SECOND
                     FIELD. 
           ROC   10/01/83    DCRPT
  
 DC2A052   PROBLEM  - RELATIONAL REPORT INCLUDES ALL ALIASES AT HIGHER
                     LEVEL. 
          SOLUTION - THE REPORT EXTRACT MODULE, DCSEL, INITIALLY PERFORMS 
                     SPECIAL PROCESSING FOR DIRECT REFERENCES WITH ALIAS
                     LINE NUMBER.  HOWEVER, ONCE THE FIRST MATCHING REFERENCE 
                     IS FOUND, THE STANDARD REFERENCE TRACING AND EXTRACT 
                     PROCESSING IS PERFORMED FOR BOTH DIRECT AND INDIRECT 
                     RELATIONSHIPS.  PROGRAM LOGIC WILL BE MODIFIED TO
                     ALWAYS PERFORM THE SPECIAL PROCESSING FOR DIRECT 
                     REFERENCES THAT CAN HAVE ALIAS LINE NUMBERS. 
           ROC   10/01/83    DCRPT
  
 DC2A054   PROBLEM  - HAVING CLAUSES IN QUERY ARE NOT WORKING PROPERLY. 
          SOLUTION - DOCUMENTATION DOES NOT SPECIFY DATE FORMAT EXPECTED
                     ON INPUT (MMDDYY).  DOCUMENT REVISION COMPLETED. 
                     BEYOND THAT THERE WAS A MISS-MATCH ON THE FORMAT OF
                     DATES STORED AND COMPARED.  THERE WERE SEVERAL PROBLEMS
                     WITH THE TIMES CLAUSES.  FIRST AN X(6) FIELD WAS 
                     COMPARED TO AN X(5) FIELD, SO THAT "000001" DID NOT
                     EQUAL "00001".  SECOND, PROCESSING FOR THE CLAUSE -
                     NOCHANGE FROM N1 TO N2 TIMES WAS IMPROPERLY CODED. 
                     ONLY ENTRIES CHANGED LESS THAN OR EQUAL TO N1 WERE 
                     QUALIFYING.  CODE WAS ADDED TO ALLOW BOTH ENTRIES HAVING 
                     CHANGED LESS THAN N1 OR GREATER THAN N2 TIMES.  THIRD, 
                     THE SIMPLE CHANGE AND NOCHANGE CLAUSES WERE ONLY CHECKING
                     FOR REVISIONS ON DIFFERENT DATES.  LOGIC CHANGED TO
                     CHECK ON THE NUMBER OF TIMES CHANGED RATHER THAN DATES.
           ROC   10/01/83    QRYWITH,DCRETR,DCQRY 
  
 DC2A055  PROBLEM  -  DUPLICATE OUTPUT TRANSACTIONS ARE CREATED 
                      IF ENTRY APPEARS MORE THAN ONCE.
          SOLUTION -  THE DUPLICATE OUTPUT TRANSACTIONS ARE CREATED 
                      BECAUSE THERE IS NO CHECK MADE TO DETERMINE IF IT HAS 
                      ALREADY BEEN GENERATED.  A TEMPORARY WORK FILE CONTAINING 
                      CATALOGUE NAMES OF OUTPUT TRANSACTIONS GENERATED HAS
                      BEEN ADDED TO THE CODE.  A CHECK IS MADE AGAINST THIS 
                      WORK FILE BEFORE EACH ENTRY IS PROCESSED TO DETERMINE 
                      IF AN OUTPUT TRANSACTION HAS BEEN GENERATED.
  
                      ****************************************************
                      *              C  A  U  T  I  O  N                 *
                      ****************************************************
  
                       THIS PSR CAN ONLY BE INSTALLED ON NOS. 
                       IT REQUIRES THE FOLLOWING INSTALLATION DECK CHANGE:  
                       INSERT A LDSET(LIB=SRVLIB) BEFORE LOADING DCUTL. 
  
          ROC    10/01/83    DCUTL800 
          RMP    10/21/83    DCUTL800 
  
 DC2A056    PROBLEM - SOURCE FILE GENERATED BY MOVE DOES NOT CONTAIN
                     UPDATE DIRECTIVES
          SOLUTION - INCORRECT CHECK MADE FOR TRANSACTION TYPE WHEN 
                     CREATING $UPDATE OR OPTIONS STATEMENT. 
          ROC    10/01/83    DCUTL
  
 DC2A057  PROBLEM  - UTILITY ABORT WHEN COPY DIRECTIVE REFERENCES ENTRY 
                    WITH NO DETAIL LINES. 
         SOLUTION - WHEN AN ENTRY HAS NO DETAIL LINES ASSOCIATED WITH IT, 
                    HIGH-VALUES ARE PLACED IN A FIELD IN THE MAST1 RECORD 
                    FOR THAT ENTRY.  UTILITY WAS NOT CHECKING FOR HIGH- 
                    VALUES, CONSEQUENTLY IT ABORTED WHEN IT TRIED TO
                    CONTINUE READING MAST1.  UTILITY WILL BE CHANGED TO 
                    CHECK FOR HIGH-VALUES AND, IF IT EXISTS, IT WILL PRINT
                    THE FOLLOWING INFORMATIVE MESSAGE:  
                      "DCUTL-010-I * NO CATEGORIES EXIST FOR THIS ENTRY"
         ROC    10/01/83    DCUTL 
  
 DC2A059   PROBLEM  - INPUT VALUES NOT CORRECTLY GENERATED. 
          SOLUTION - THE THREE-CHARACTER VARIABLE THAT REPRESENTS THE STARTING
                   POSITION IN THE MAST1 RECORD WAS BEING MOVED TO A TWO- 
                   CHARACTER VARIABLE THAT IS USED TO DETERMINE IF A FIELD
                   EXISTS FOR OUTPUT.  THE "DEPENDING-ON" DATA IS FOUND IN
                   POSITION 111 OF MAST1 BUT UTILITY WAS PICKING UP POSITION
                   11 OF MAST1 WHICH IS THE ELEVENTH CHARACTER OF THE CATALOG 
                   NAME.  THE PICTURE CLAUSE WAS MODIFIED TO PIC 999 INSTEAD
                   OF PIC 99. 
         ROC   10/01/83    COPYWORK 
  
 DC2A060   PROBLEM  - ERROR IN DCGEN OPTIONS STATEMENT FLAGGED AFTER
                      NEXT STATEMENT. 
           SOLUTION - THE PROGRAM DCGENER PROMPTS THE USER FOR INPUT. 
                      THIS INPUT CAN INCLUDE UP TO 5 STATEMENTS WHICH 
                      MUST START WITH $GENERATE, AS MANY AS 3 OPTION
                      STATEMENTS AND THE LAST STATEMENT MUST BE A SELECT
                      STATEMENT.  THE STATEMENTS ARE READ INTO A TABLE
                      BEFORE ANY EDITING IS DONE.  AFTER THE FIVE STATEMENTS
                      ARE READ OR A SELECT STATEMENT IS READ, THE PROGRAM 
                      DCCBL010 IS CALLED.  IT IS IN THIS PROGRAM THAT THE 
                      EDITING IS DONE.  CONSEQUENTLY ERRORS DO NOT GET
                      FLAGGED UNTIL THE USER HAS COMPLETED ENTERING THE 
                      INPUT.  THIS IS NOT AN ERROR BUT RATHER THE LOGIC USED
                      IN DESIGNING THESE PROGRAMS.  THE ONLY EXCEPTION
                      TO THIS IS THE $GENERATE STATEMENT WHICH MUST BE THE
                      FIRST INPUT STATEMENT AND IS EDITED IN PROGRAM DCGENER. 
                      DCGENER WILL BE MODIFIED SO THAT AN ERROR IN THE
                      $GENERATE STATEMENT WILL BE FLAGGED PRIOR TO THE NEXT 
                      INPUT STATEMENT.
           ROC     10/14/83    DCCBL010 
  
 DC2A061  PROBLEM  - ONLY FIRST VALUE OF SEVERAL GENERATED FOR 88-LEVEL 
                     ELEMENT IN COBOL FD. 
          SOLUTION - WHEN AN "88" LEVEL ELEMENT IS LOADED INTO DC2 WITH 
                     MORE THAN ONE VALUE AND THE VALUE IS IN QUOTES 
                     (ALPHANUMERIC LITERAL) ONLY THE FIRST VALUE WILL BE
                     GENERATED IN A COBOL FD GENERATION REQUEST.  DCCBL315
                     WAS MODIFIED SO THAT MULTIPLE ALPHANUMERIC LITERALS
                     WILL BE GENERATED DURING A COBOL FD GENERATION REQUEST.
                     CONDITION NAMES ARE NOT GENERATED IF THEY CONTAIN
                     MORE THAN 30 CHARACTERS.  DC2 WILL ONLY GENERATE 
                     CONDITION NAMES WITH A MAXIMUM LENGTH OF 30 CHARACTERS.
                     THE REFERENCE MANUAL INCORRECTLY STATES THE ACCEPTED 
                     LIMIT IS 32 CHARACTERS.  THE REFERENCE MANUAL
                     DESCRIPTION FOR AN "88" LEVEL ENTRY WILL BE CORRECTED. 
          ROC     10/14/83    DCCBL315
  
 DC2A062  PROBLEM  - RECORDING MODE AND BLOCK CONTAIN CLAUSES 
                     ERRONEOUSLY GENERATED. 
          SOLUTION - THE RECORD FORMAT FIELD (SYSTEM NAME = RECFM)
                     FIELD DOES NOT RELATE TO THE COBOL "RECORDING MODE"
                     CLAUSE (IT DONOTES CYBER RECORD MANAGER RECORD 
                     TYPES) AND THEREFORE HAS BEEN TAKEN OUT OF GENERATE. 
                     THE SECOND PART OF THE PROBLEM INVOLVED MODIFYING
                     DCCBL320.  THE "BLOCK CONTAINS" CLAUSE WILL ONLY BE
                     GENERATED WHEN THE BLOCK SIZE (SYSTEM NAME = BLKSIZE)
                     IS SPECIFIED.
          ROC    10/14/83    DCCBL320 
  
 DC2A064  PROBLEM  - TWO FDS MAY BE GENERATED WHEN ONLY PREFIX GIVEN. 
          SOLUTION - THE GENERATE FUNCTION ALLOWS THE USER TO REQUEST 
                     TWO SETS OF COBOL DATA DEFINITIONS WITH THE USE OF 
                     OPTIONS PREFIX1 AND PREFIX2.  THE FIRST SET HAS THE
                     PREFIX1 VALUE AND THE SECOND SET HAS THE PREFIX2 
                     VALUE.  SINCE THE SUBPROGRAM THAT CREATES THE DATA 
                     DEFINITION LINES ONLY USE PREFIX1, THE CALLING 
                     PROGRAM FLIPS PREFIX1 AND PREFIX2 AFTER THE RETURN 
                     FROM THE SUBPROGRAM WHEN THE FIRST SET IS COMPLETED. 
                     WHEN ONLY PREFIX1 IS USED WITH MILTIPLE SELECT 
                     STATEMENTS THE FIRST SELECT IS PROCESSED CORRECTLY.
                     HOWEVER, THE CALLING PROGRAM HAS INCORRECTLY FLIPPED 
                     THE PREFIXES FOR THE SECOND SELECT AND FROM THEN ON
                     BLANKS AND THE ORIGINAL PREFIX1 VALUE ARE USED TO
                     CREATE TWO SETS OF DATA DEFINITIONS FOR EACH SELECT. 
                     THE SAME LOGIC IS USED FOR OPTIONS SUFFIX1 AND SUFFIX2.
                     THESE OPTIONS ALSO WILL BE TESTED AND CORRECTED. 
           ROC   10/14/83    DCCBL010 
 DC2A065  PROBLEM  - IF "FILLER" IS INCLUDED IN TOTAL RECORD,INCORRECT
                     DBDL IS GENERATED. 
          SOLUTION - CODE WAS MODIFIED TO CONSISTANTLY EXCLUDE "FILLER" 
                     FROM DBDL AND TO PRODUCE ERROR MESSAGES IN EACH CASE.
          ROC    10/14/83    DCTOT315 
  
 DC2A066  PROBLEM  - ATTEMPTS TO GENERAL DBDL FOR ENTRY WITH BLANK
                     UNDEFINED CATNAME ABORT. 
          SOLUTION - THE TOTAL GENERATE SUBPROGRAM DID NOT CHECK FOR
                     BLANK OR UNDEFINED CATNAME ON A STRUCTURE LINE PRIOR 
                     TO USING THE CATNAME FIELD AS THE KEY ON A READ. 
                     THEREFORE, THE INVALID KEY CLAUSE OF THE READ WAS
                     EXECUTED, WHICH THEN BRANCHED TO AN ABORT PARAGRAPH. 
          ROC    10/14/83    BALDEF2,DCTOT315 
  
 DC2A067  PROBLEM  - THE TOTAL "OPTIONS" STATEMENT CREATED BY GENERATE
                     IS INCORRECT.
          SOLUTION - THE TOTAL OPTIONS STATEMENT GENERATED IS NOT 
                     ORIENTED TO CDC TOTAL.  THE OPTION STATEMENT CONTAINS
                     RUN TIME PARAMETERS FOR TOTAL.  THE GENERATE FUNCTION
                     OPTION DIRECTIVE CAN BE EXPANDED TO ALLOW THE
                     SPECIFICATION OF THE TOTAL OPTIONS PARAMETERS.  THESE
                     WOULD BE USED TO CREATE THE TOTAL OPTION STATEMENT 
                     IN THE PROLOGUE SECTION. 
          ROC    10/14/83    BALDEF2,DCCBL010,DCTOT315
  
 DC2A068  PROBLEM  - DCGEN DEFAULTS TOTAL ELEMENT LENGTH TO GROUP LENGTH
                     EVEN IF NOT GIVEN. 
          SOLUTION - PART I - DC2 CODE ASSUMES THAT THE GROUP LENGTH
                     OVERRIDES ITS COMPONENT ELEMENTS' LENGTHS.  THE CODE 
                     WILL BE MODIFIED TO USE THE SPECIFIED ELEMENTS'
                     LENGTHS INSTEAD. 
                     PART II - DC2 ASSUMES THE GROUP LENGTH IS SPECIFIED
                     WHEN GENERATING THE DATA BASE DEFINITION.  CODE WILL 
                     BE ADDED TO CALCULATE THE GROUP LENGTH FROM ITS
                     COMPONENTS' LENGTHS IF THE GROUP LENGTH IS NOT 
                     SPECIFIED. 
          ROC    10/14/83    BALSUB2,BALDEF2,DCTOT315 
  
 DC2A069  PROBLEM  - GENERATE OF ENTRY WITH DELETED STRUCTURE LINE CAUSES 
                     MAST1 READ ERROR.
          SOLUTION - A MAST1 READ ERROR OCCURS WHEN A STRUCTURE LINE
                     CONTAINS A BLANK CATNAME FIELD.  A BLANK CATNAME FIELD 
                     OCCURS IF THE STRUCTURE LINE IS INITIALLY ENTERED
                     WITH FIELDS OTHER THAN CATNAME OR IF THE CATNAME IS
                     SUBSEQUENTLY DELETED, AND OTHER FIELDS REMAIN ON THAT
                     LINE NUMBER.  IF A STRUCTURE LINE IS DELETED THE UPDATE
                     PROGRAM REWRITES THE ENTRY SO THAT THE LINE NUMBER NO
                     LONGER APPEARS IN MAST1. 
                     THE NUMBER IS THE SAME AS DC2A066.  EXCEPT THAT FOR
                     TOTAL GENERATE NO DIAGNOSTIC WAS PRINTED WHILE FOR 
                     COBOL GENERATE THE ERROR MESSAGE WAS PRINTED.  THE 
                     COBOL GENERATE SUBPROGRAMS WILL BE MODIFIED TO PRINT 
                     THE SAME INFORMATIVE MESSAGE TO BE USED IN THE TOTAL 
                     GENERATE:  700-I BLANK CATNAME IN STRUCTURE LINE.
                     NORMAL PROCESSING WILL THEN CONTINUE.
          ROC    10/14/83    CBLDEF,DCCBL315,DCCBL320 
  
 DC2A070  PROBLEM  - GENERATE OF TOTAL DBDL RESULTS IN UNDOCUMENTED 
                     DIAGNOSTIC "DCGEN-605-F".
          SOLTUION - THE IOAREA CAN ALSO BE DEFINED IN THE NAMES CATEGORY 
                     OF THE DATASET.  THE REFERENCE MANUAL WILL BE
                     CORRECTED TO REFLECT THIS FIELD.  IN ADDITION THERE
                     ARE VARIOUS GENERATE ERROR MESSAGES,(INCLUDING THE 
                     DCGEN-605-F) UNIQUE TO THE $GENERATE TOTAL FUNCTION, 
                     WHICH ARE NOT INCLUDED IN APPENDIX B - ERROR PROCESSING
                     AND DIAGNOSTICS.  THOSE MESSAGES WILL BE PUT IN THE
                     REFERENCE MANUAL.
          ROC    10/14/83    BALDEF2,DCTOT315 
  
 DC2A072  PROBLEM  - IF CONVERTING 2 FILES OF SAME NAME, DC PUTS ATT
                     OF 2ND FILE IN STR.
          SOLUTION - THE PROBLEM CAUSES THE ATTRIBUTE INFORMATION FROM THE
                     SECOND FILE TO BE PLACED IN THE STRUCTURE CATEGORY.
                     IN THE PROGRAM WHICH CREATES THE UPDATE DIRECTIVES THE 
                     STATEMENT TO DETERMINE WHETHER OR NOT THE INFORMATION
                     ON THE INPUT RECORD BELONGS IN THE STRUCTURE CATEGORY
                     IS ERRONEOUS.  TO FIX THE PROBLEM A CHECK WILL BE
                     INSERTED TO DETERMINE IF THE INFORMATION ON THE INPUT
                     RECORD IS STRUCTURE INFORMATION AND PROCESS
                     ACCORDINGLY. 
          ROC    10/14/83    DCCVTGEN 
  
 DC2A074   PROBLEM  - SELECT ENTRY OTHER THAN TOTAL FOR TOTAL DBDL
                     GENERATION PRODUCES NO DIAG
          SOLUTION - TRANSACTION EDITING SUBPROGRAM DOES NOT VERIFY THAT
                     THE APPROPIRATE ENTITY TYPE IS USED DURING TOTAL 
                     GENERATION.  CODE WILL BE ADDED TO PERFORM THIS
                     VERIFICATION AND TO PRINT THE EXISTING GENERATE
                     MODULE ERROR MESSAGE NUMBER - 485. 
          ROC    10/14/83    DCCBL010 
  
 DC2A076  PROBLEM  - A MISLEADING ERROR MESSAGE IS PRINTED WHEN THE 
                     CHG OR ADD TRANSACTION HAS A CATALOGUE NAME WITH 
                     A HYPHEN SURROUNDED BY SPACES. 
          SOLUTION - SOURCE CODE CHANGED TO PRINT MEANINGFUL ERROR
                     MESSAGE.  ADD ERROR MESSAGE -435- TO REFERENCE 
                     MANUAL AND UPDATE PROGRAMS.
          ROC     11/03/83    DCUPDATE
  
  
 F2742     *****    DATA CATALOGUE 2 VERSION 2.0      ***** 
           THIS IDENTIFIER ADDS THE DMS-170 DATA DEFINITION 
           CAPABILITIES TO DATA CATALOGUE. EXISTING CATEGORIES
           AND FIELDS WITHIN THE CATEGORIES ARE EXPANDED TO 
           ACCOMMODATE DDL DATA DEFINITIONS PLUS NEW ENTITIES,
           CATEGORIES AND FIELDS ARE ADDED TO SUPPORT DMS-170 
           DATABASES. IN ADDITION, THE OCCURS CLAUSE HAS BEEN 
           EXPANDED TO ALLOW THE USER THE SPECIFICATION OF
           THE COMPLETE COBOL SYNTAX. 
  
           THE NEW ENTITIES AND CATEGORIES ADDED ARE: 
  
           ENTITIES:   DBPROC, AREA, SCHEMA AND SUBSCHEMA.
  
           CATEGORIES: PROCESS, MDINFO, AREAKEYS, ACCESS, 
                       SSREL, BOND, JOBCONTROL AND JOINS. 
  
           A MIGRATION SEGMENT IS ADDED TO THE UTILITY SYSTEM 
           TO ALLOW THE USER TO TRANSFER THE V1.0 INFORMATION 
           TO VERSION 2.0.
  
           THE ONLY EXTERNAL SPECIFICATION CHANGED NOT ASSOCIATED 
           WITH DMS-170 IS THE ADDITION OF THE SHOW FIELDS CAPABILITY 
           TO THE QUERY SYSTEM. 
  
           MLB,MP,RMP,EMV    84/01/01      DCUPD,DCUTL,DCRET,DCSEL, 
                                           DCIDX,DCRPT,DCCONGN, 
                                           DCGEN,DCCONVT. 
  
  
 *L617*    ************************************************ 
 DCLA001   PROBLEM  - THE COUNT OF TOTAL TRANSACTION IMAGES READ
                      IN THE UPDATE AUDIT REPORT IS WRONG WHEN
                      CONTINUATION LINES ARE USED.
  
           SOLUTION - THE DCUPDATE PROGRAM WAS ONLY COUNTING
                      CONTINUATION LINES IF THEY WERE IN ERROR. 
                      THE CODE WAS MODIFIED TO ALWAYS COUNT CON-
                      TINUATION LINES.
  
           PJR    01/20/84    DCUPDATE
  
DCLA002   PROBLEM -  A COMPLETE TOTAL DBDL CANNOT BE
          GENERATED BECAUSE OF THE INABILILITY TO STORE THE 
          ELEMENT OR GROUP ENTRY ASSOCIATED WITH A LINKPATH 
          FOR VARIABLE DATASETS.  IF THE ALIAS NAME IS TO 
          BE USED FOR AN ELEMENT, THE ALIAS LINE NUMBER MUST
          BE STORED.  FURTHERMORE, THE LINKPATH LINE MUST 
          BE INDEPENDENT OF THE STANDARD STRUCTURE LINE IN
          ORDER TO ALLOW USER CONTROL OF WHERE THE LINKPATH 
          STATEMENT IS GENERATED IN THE DBDL. 
  
          SOLUTION - DEFINITIONS ARE ESTABLISHED FOR COMPONENTS 
          AND ALIASES FOR BOTH RECORD AND GROUP STORAGE.  CODE
          WAS ADDED TO RECOGNIZE THESE COMPONENTS AND TO
          PROCESS THEM IN ALL PORTIONS OF DATA CATALOGUE 2, 
          VERSION 2.0, EXCEPT THE CONVERT FACILITY. 
  
          NOTE  -   THIS CODE WAS GENERATED IN ROCKVILLE AND
          WAS ADAPTED FOR INSERTION IN DATA CATALOGUE VERSION 2.0 
          BY SUNNYVALE. 
  
          THE CODE IS NOT FOR USE BY VERSION 1.0 OF DATA CATALOGUE. 
  
          MLB,RMP      84/01/23    DCUTL100,DCUTL800,DCRPT213 
                                   DCQRY213,RPTRT13,RPTDEF13
                                   DCDWA13,DCUPD13,GEN15DAT 
                                   DCRPT120,DCRPT130,DCRPT140 
                                   DCTOT315 
  
 *L628*    ************************************************ 
 *L642*    ************************************************ 
 *L650*    ************************************************ 
DCLA003    PROBLEM - CORRECTION IN COBOL COMPILER CAUSES
                     COMPILATION ERRORS.
  
           SOLUTION - ADD PERIODS TO DATA NAME DECLARATIONS.
  
           MLB     05/02/85    ISFILFD (COMMON) USED IN 
                               CONSCH,CONSUB,CONMDS,CONFIL
  
 *L670*    ************************************************ 
 *L688*    ************************************************ 
 *L716*    ************************************************ 
 *L739*    ************************************************ 
 *L780*    ************************************************ 
 *L797*    ************************************************ 
 *L803*    ************************************************ 
 *L826*    ************************************************ 
 *L840*    ************************************************ 
 *L847*    ************************************************ 
 *L851*    ************************************************ 
 *L859*    ************************************************ 
 *L871*    ************************************************ 
 PSRLEVEL CHANGE RELEASE LEVEL NUMBER 
          BAO    92/10/02    LEVEL
  
  
  
  
  
  
