.lm 5.rm 75
.ap
.sk3.center 80;D S C O N V
.sk
This is a program to produce 1032 DMD (Data Definition) files from
1022 datasets. It optionally also dumps ASCII data record
files.
.sk
.br;AUTHOR: Coleman P.#Harrison
.br;DATE WRITTEN: June 28, 1983
.br;DATE MODIFIED: April 18, 1984
.sk3.center 80;C O P Y R I G H T
.sk;(C) 1983, 1984
.br;Copyright Software House
.sk 3.center 80;N O T I C E S
This program is in no way intended as a piece of production
software. As such, neither the author nor Software House
assumes any responsibility for its functioning. Absolutely
no support is intended or implied.
This program (in part or total) may be freely copied for any
non-profit purposes. All copies must include the above
copyright and these notices. Any reproduction (in part or
total) of this software for profit or any reproduction which
excludes the above copyright and these notices will be
considered grounds for punitive legal action.
Users are encouraged to mail their name and address to:
.sk.lm+10.lit
Coleman P. Harrison
Software House
1105 Massachusetts Avenue
Cambridge, Massachusetts 02138
.end lit.lm-10
If and when new versions are produced we will consider
notifying all users so identified. We are, of course, also
interested in hearing about any enhancement. We assume no
responsibility for supporting this program.
.sk3.center 80;D E S C R I P T I O N
The purpose of the program is to provide an automated method
to convert System 1022 datasets to System 1032. It runs
with 1022 on a DECSystem-10 or -20. It asks for a filespec,
obtains information on
the dataset(s) in it by means of calls on DBINFO,
and produces a 1032 DMD
which can be used to CREATE analogous 1032 dataset(s) on a
VAX. Optionally, it will also dump each dataset's data to a
DMI file.
Attribute names, abbreviations, key status, and ranges are
copied.
1022 single integer attributes have the default
range of -2_*_*35 to +2_*_*35-1 unless the user defined a range.
Double integers, available starting with Version 116 of 1022, can range
as high as 2_*_*71. This program translates such integers to
1032 double integers whose range is up to 2_*_*63. However, if
the 1022 data exceeds
2_*_*63, this will produce conversion errors during the
load to 1032. To retain more than 63 bits (18.9 decimal digits)
of precision, the 1032 Decimal datatype must
be used; the required syntax is noted in a comment in any
datasets in which this problem could arise so that the user could
then edit his/her DMD file.
In most cases, one can't improve on the 1032 default formats
without knowing what the data looks like; usually, the
default results will be closer to what 1022 displays than any other
choice, although the results are usually not exactly the same
as the output from 1022.
One main difference is that 1022 chooses the width of each
occurrence of each attribute according to its individual
value, but 1032 does so for the attribute itself based only
on its range and precision. The A format with no width is
available in 1032 beginning with V2.00; it is the default in
1022, and the user may want to specify it for text attributes
if the space-filling behavior is desired.
The program does assign a format for real attributes,
since in that case, while there is no single 1032 format that
replicates 1022's behavior in all cases, the E+10.4 choice
comes closer than the default. Formats are also included
in the RD's for dates; this is necessary so that the output of
1022's DUMP command will be readable by 1032.
RD__Missing items are included so that blank text attributes
will not become MISSING in 1032.
Prompts are generated by replacing underscores with spaces
and capitalizing the first letter of each word. Titles are
the same as prompts except that lines are broken where
appropriate.
Dataset and database names are truncated to 9
characters (after eliminating any underscores). This is not
strictly necessary, but it is advisable because the
user has to be more knowledgeable to handle those with
longer names. (Filenames (such as DMI, DMO, DMD, and DME)
would have to be specified each time one is needed, or else
RMS would choke on the name 1032 generates.) DMI file names
are truncated to 6 characters for compatibility with old
TOPS-10. Unique names are generated if these truncations
result in several datasets or DMI files having the same
name.
.sk3.center 80;M O D I F I C A T I O N S
.ls.le;Double length 1022 integers (available starting with
Version 116) are now supported (but see the above discussion).
.le;Single length integers whose value is greater than 2_*_*31,
i.e. which are in the double integer category for 1032,
now load correctly.
.le;Integer of identification, date of entry, and date of change
are now supported (available in 1032 starting with Version 2).
.le;Dates dumped with a length of 6 or 7 are now specified as Format 5
so that they will be read correctly by 1032.
.le;The program can now be run with Version 114 of 1022; however,
if there is more than one dataset stored in a file, Version 114 cannot
retrieve the dataset names, so the program uses DS1, DS2, etc.
.els
.sk3.center 80;I N S T A L L A T I O N
The tape was written
on our DECSystem-20 at 1600 b.p.i.
using DUMPER under TOPS-20 version 4.1. It contains two
copies of the following files:
.sk.lm+10.lit
DSCONV.REL
DSCONV.EXE
DSCONV.MEM
.end lit.lm-10
If you are using version 116A of 1022 on TOPS-20, you can
run DSCONV.EXE. Otherwise you should reload DSCONV with your
system's version of 1022 by means of:
.sk.lm+10.lit
LOAD DSCONV, SYS:HR1022/LIB
SAVE
.end lit.lm-10
If you have any questions, please call Coleman Harrison
at (617) 661-9440.