| >Customer config: VAX VMS V5.5 VAX Cobol V4.4
> VAX Alpha V6.2 DEC Cobol V2.4
>1)In the manual 'Migrating an Application from Open VMS to Open Vms Alpha'
> the following statement is made:
> -In addition, note that DEC COBOL includes the following:
> -Support for file status values that are compatible with
> -VAX COBOL Version 5.1, which differ from those of VAX COBOL
> -Version 5.0 and previous features?
> Is this so?
Here are the details on changes related to FILE STATUS from the VAX
COBOL release notes:
******************************
CLT::CLT$LIBRARY:[C79NET.V54.SSB]VAX_COBOL_RN_V54.TXT;1
V5.4-51 A run-time problem with the following symptom
has been corrected. For programs compiled with
/STANDARD=V3, an OPEN of an indexed file was at-
tempted where the keys declared in the program did
not match the keys declared in the file. The OPEN
failed but the file status was erroneously reported
as 00. The COBOL file status is now set to 94.
V5.2-35 A restriction disallowing a data item referenced in
a FILE STATUS clause that does not have the EXTERNAL
attribute from being referenced in FD with the EX-
TERNAL attribute has been removed. An informational
diagnostic is issued in this situation.
V5.1-10 File status 49 (incompatible open mode) is now cor-
rectly returned when a DELETE or REWRITE operation
is attempted on a file where a READ operation has
not occurred and the file is not opened in I-O mode.
Previously, the compiler would set the file status to
43 (no previous READ) in this situation.
V5.1-10 File status value 21 (sequence error) is now cor-
rectly returned and the invalid key condition exists
if the program attempts to change the primary key
of a record in a sequentially accessed indexed file.
Previous versions of VAX COBOL returned 30 (permanent
error) under some conditions.
V5.1-10 File status value 23 (record not found) is now cor-
rectly returned and the invalid key condition exists
when no records satisfy the condition in the KEY
clause of a START statement on a RELATIVE file if
the value of the key is zero. Previous versions of
VAX COBOL returned file status value 30 (permanent
error).
V5.1-10 File status value 43 (no current record) is now cor-
rectly returned on attempts to rewrite or delete the
current record, when no current record has been es-
tablished. Previous versions of VAX COBOL returned 30
(permanent error) under some conditions.
V5.1-10 File status value 46 (or 16 if /STANDARD = V3) is now
correctly returned when a FORMAT 1 READ is attempted
and the no next valid record (NNVR) condition exists.
V5.1-10 Correct file status values are now returned during
the execution of CLOSE statements that reference
optional files that are not present.
>2) The following is a pretty open-ended general type question. We are at the
> beginning of the migration. Any suggestions in resloving (common) data and
> file allignment problems that will arise. Customer's VAX Cobol 4.4 was
> upgraded to reflect Standard85. Any qualifiers that need to be set etc.
VAX COBOL V5.4 and DEC COBOL V2.4 support OpenVMS versions 6.1, 6.2,
7.0. Since the customer is already running OpenVMS Alpha V6.2, I would
suggest the following upgrade path
Upgrade to OpenVMS VAX V6.2
Upgrade to VAX COBOL V5.4
For this phase of the migration, the VAX COBOL V5.4 release notes are a
comprehensive summary covering VAX COBOL V5.x. Also, make sure to get
a copy of the new VAX COBOL User Manual and Reference Manual which have
been updated for V5.4.
Since you are already building the applications with /STANDARD=85, one
other thing to try is to build the applications with
/WARNINGS=ALL/CHECK=ALL
to help identify potential problem spots in the migration.
After the customer applications are running successfully with VAX COBOL
V5.4 under OpenVMS VAX V6.2, then you could consider migrating the
selected applications to DEC COBOL V2.4 under OpenVMS Alpha V6.2.
For this phase of the migration, the DEC COBOL V2.4 release notes and
the DEC COBOL User Manual - Compatibility Appendix are the key
references.
The suggested qualifiers to use again are
/WARNINGS=ALL/CHECK=ALl
Note that you should build DEC COBOL applications initially /NOALIGN
(the default) for compatibility with VAX COBOL record alignment. There
is considerable flexibility with DEC COBOL's /ALIGN and alignment
directives that you can explore to enhance runtime performance after
you have the applications running correctly under DEC COBOL.
Note also that you should build DEC COBOL applications initially
/FLOAT=D (the default) for close (but not 100%) compatibility with VAX
COBOL. The implementations of D float on VAX and Alpha are not 100%
compatible. DEC COBOL supports 3 different double precision floating
point formats. Check the sources for uses of COMP-2 to see the extent
to which the customer relies on double precision floating.
Depending on whether you are using other languages such as DEC C or
database products within your applications, you may need to use the
flexibility in /ALIGN (and the alignment directives) and /FLOAT to
juggle compatibility with VAX COBOL versus compatibility with other
products.
The compatibility appendix highlights many things you may need to
examine based on input we've gotten over the last 5 years from other
specialists and customers doing migrations.
|
| Ron,
I got your VoiceMail, but your extension 178 was busy when I called
back.
You should continue to post questions in this Notes conference.
VoiceMail to any particular person who responds in this Notes
conference will usually result in a much less timely response than a
response you will get to a question posted in this conference.
To answer your question about the ramifications of not upgrading the
VAX COBOL environment first, the VAX COBOL V5.4 release notes give the
details on the changes that have been made between VAX COBOL V4.4 and
V5.4. DEC COBOL V2.4 is designed to be highly compatible with VAX
COBOL V5.4, and the compatibility appendix in the DEC COBOL User Manual
covers differences between DEC COBOL and VAX COBOL V5.4. In assessing
potentional problems you may hit, you will need to take into account
the material in the VAX COBOL V5.4 release notes in addition to the
material in the compatibility appendix if you don't first complete an
upgrade to VAX COBOL V5.4.
VAX COBOL V4.4 is no longer supported on any version of VAX/VMS or
OpenVMS VAX, so it may be more difficult for you to isolate problems
during the migration if you don't have a supported VAX COBOL
configuration against which to make comparisons. This is why I
recommended that you first upgrade the VAX COBOL environment to a
supported configuration.
|