VAX COBOL GENERATOR Version 1.4 Release Notes Operating system and Version: VMS Version 5.0 or higher Future maintenance releases may require higher versions. Software Version: 1.4 NOTICE Touch Technologies, Inc. (TTI) has prepared this publication for use by TTI personnel, licenses, and customers. This information is protected by copyright. No part of this document may be photocopied, reproduced, or translated to another language without prior written consent of Touch Technologies Incorporated. TTI believes the information described in this publication is accurate and reliable; much care has been taken in its preparation. However, no responsibility, financial or otherwise, is accepted for any consequences arising out of the use of this material. The information contained herein is subject to change without notice and should not be construed as a commitment by Touch Technologies, Inc. Copyright c 1992 Touch Technologies, Inc., Digital Equipment Corporation 1 Introduction These are the release notes for VAX COBOL Generator Version 1.4. This document describes changes made since the release of VAX COBOL Generator Version 1.3. 2 Problems Fixed This section describes bugs fixed in V1.4. This is a significant maintenance release. All reported priority level one and priority level two bugs have been fixed. The reliability of VAX COBOL Generator has been greatly enhanced by this release. 2.1 Invalid Window Identifier ABORT Problem Corrected Under some circumstances when clicking on the "up arrow" at the top of the buffer after clicking on a partly visible data movement node name, the following errors would be result: %GEN-E-INVWINIDE, Invalid window identifier %NONAME-F-ABORT, abort ----------------------------------------------------------------- 2.2 Forms Editor Abort with Invalid Scrolling Region Corrected Under some circumstances, the forms editor would abort when the value of the screen size of the scrolling region would be larger than 24. The forms editor depends on the size of the scroll display being less than 24. This problem has been corrected by ensuring that the first line of the scrolling region is never less than zero. ----------------------------------------------------------------- 2.3 Forms Editor Abort When Help Text Too Long Created Help text could be added that would be too long to fit on the form causing the following errors: %GEN-E-LINTOOLON, Line too long %NONAME-F-ABORT, abort A check has been added to ensure that the help text will fit on the form. ----------------------------------------------------------------- 2.4 Duplicate Record ID Abort from RENAME/LOCAL Problem Corrected A duplicate record identification error was being erroneously returned by RENAME/LOCAL in some cases. This error has been eliminated. ----------------------------------------------------------------- 2.5 Rdb First Clause not Recognized in SET FLOW Problem Corrected When typing a first clause for the RSE in the SET FLOW to/from an RDB database node, the first clause could be emitted in the wrong place. An internal check was added for a first clause at the beginning of the SET FLOW information so that when the flow starts with 'FIRST', RSE will assume it is a first clause and emit the "first cv" just after the 'using' in the DECLARE_STREAM statement. At the end, the remaining with clause will be emitted in the same place as it is now. ----------------------------------------------------------------- 2.6 New Database Corruption with Bad Value Corrected When the forms editor is used to examine reports using EDIT/CONTENTS, it will ignore scrolling regions, rather than abort with an error 999. ----------------------------------------------------------------- 2.7 CLASS Clause Now Generates Correct Syntax The code generated for the CLASS clause (added to VAX COBOL V4.0) will now come after the SYMBOLIC CHARACTERS clause as required by the COBOL language. ----------------------------------------------------------------- 2.8 VERIFY Creating Orphan Group Node Problem Corrected Before, VERIFY was checking each node's parent pointer to ensure that it pointed to a valid group node. If not, it would create a node by that name in the top-level group. Now, VERIFY first checks each group node's children to ensure that the parent pointers are valid. If one of the children has an invalid parent pointer, it is corrected by filing it in with the name of the parent group node. Later, if a node is found which has a nonexistent parent, the orphaned node is placed in the top-level group. ----------------------------------------------------------------- 2.9 Order of Connection Creation no Longer Affects Generated RSE Code Under some conditions, the code for an RSE would not appear in the generated code. This was resolved by scanning all nodes and connections in order to build a list of streams. After the scanning is done, the DECLARE STREAM statements are output for all the steams on the list. This ensures that if a SET FLOW is specified for a stream on any connection, the code for the RSE will be output with the DECLARE STREAM statement. ----------------------------------------------------------------- 2.10 Header or Footer no Longer Required to be in First Control Break A control clause was not generated unless the first entry on the queue had a header and/or footer. All entries in the queue are now scanned, and a control clause is started if a header or footer is encountered. ----------------------------------------------------------------- 2.11 User-defined Node Subtype Correctly Shown in Generated Documentation If a procedure node is created and then edited without the subtype characteristics being defined, the node subtype defaults to user-defined. The generated documentation now correctly lists the node's subtype as user-defined. ----------------------------------------------------------------- 2.12 Comments for Local Storage Nodes now Appear in Generated Documentation Comments created with the COMMENT command for a local storage node now appear in the generated documentation. This was the only node whose comments failed to appear in the generated documentation. ----------------------------------------------------------------- 2.13 GEN-FORM-FEED Added to Symbolic Characters Generated Automatically GEN-FORM-FEED has been added to the symbolic characters generated automatically. This reduces the headache when using the report writer with different printers that have different length paper. ----------------------------------------------------------------- 2.14 NEXT PAGE BEFORE no Longer Ignored on Detail Line in Report The NEXT PAGE BEFORE command on a detail line in a report is now correctly handled. The code to handle NEXT PAGE BEFORE was never executed because of a programming bug. ----------------------------------------------------------------- 2.15 Data Movement Editor BAD_BLOCK_SIZE Errors Corrected The Data Movement Editor would sometimes fail with a BAD_BLOCK_SIZE error when editing adjacent fields in a small report. This problem has been corrected. ----------------------------------------------------------------- 2.16 Error Produced when Invalid Scale Format Specified The COBOL Generator does not support the trailing "P" clause in SCALE values, like 9999PP. Instead of aborting, an error message will be displayed. ----------------------------------------------------------------- 2.17 Invalid Object Identification Errors Corrected Spurious invalid object identification (GEN-E_INVOBJIDE) errors from the data movement editor were corrected. ----------------------------------------------------------------- 2.18 DEFINE SUM now Produces Valid Code DEFINE SUM would sometimes produce invalid code containing multiple "upon" clauses. This was corrected so that only one "upon" clause is written in the correct format, with only one "upon" keyword and qualifiers after the field names. ----------------------------------------------------------------- 2.19 Error Produced when No control Clauses Specified in Summary Report Corrected A check has been added to produce an error if no control clauses are specified in a summary report. ----------------------------------------------------------------- 2.20 NEXT PAGE Line-Num Verified for Control Heading When an END LINE and NEXT PAGE are specified for a Control Heading, the end line is now verified so that the line-num cannot be less than the first-detail-line-num. ----------------------------------------------------------------- 2.21 Multiple Relations Problems Corrected When more than one relation is used in a program, and a report was being generated for each relation, it appeared that every report section tried to use the first relation in alphabetical sequence, instead of using each of the separate relations. The problem has been corrected so that each report section uses the correct relation. ----------------------------------------------------------------- 2.22 WRITE ALlowed for SEQUENTIAL Files in I-O Mode Corrected When a SEQUENTIAL file was opened with a mode of I-O, the date connection WRITE was erroneously allowed. This has been corrected so that WRITE is not allowed to SEQUENTIAL files opened with mode of I-O. ----------------------------------------------------------------- 2.23 REPORTS Now Remember Data Dictionary Definitions A problem where REPORT fields read from the data dictionary would not get modified when the dictionary field was modified has been corrected. ----------------------------------------------------------------- 2.24 BLANK WHEN ZERO Field Correctly Displayed when Value is Zero The numeric data item with the option 'blank when zero' will now correctly display blank when the value of the field is zero. ----------------------------------------------------------------- 2.25 Error Messages Generated for Bad STREAM and CONTEXT Variables Corrected When spaces were entered in the CONTEXT VARIABLE or STREAM NAME fields of a connection to an Rdb file node, an invalid error message was produced: A node name must be a valid COBOL user-defined word of 10 characters or less. This was not the correct error for the STREAM and CONTEXT fields. The new error message correctly identifies STREAM NAME or CONTEXT VARIABLE rather than NODE name, and the correct character count of 31 for STREAM NAME and 29 for CONTEXT VARIABLE is shown. ----------------------------------------------------------------- 2.26 Redundant Verify Cycles Eliminated for Invalid Directory Entries When a procedure node with an invalid directory entry and an invalid subtype in the procedure characteristics had comment records, VERIFY thought that there were contents to delete, logged that the contents had been deleted, and set the status to "fixed". Thi resulted in redundant verify cycles. The problem was corrected by correctly trackig whether any contents were deleted. ----------------------------------------------------------------- 2.27 Recovery Problems Corrected The following problems related to editor session recovery were corrected: - Under some circumstances the journaling buffer was not being flushed at the end of an edit session. A change was made to ensure that the journal file will be flushed prior to being closed. - When doing a journal recovery, the recovery will no longer fail upon encountering a UDP that had been edited.