Trailing-Edge - PDP-10 Archives - tops10_integ_tools_v4_10jan-86 - 70,6067/dsconv/dsconv.rno
There are 5 other files named dsconv.rno in the archive. Click here to see a list.
.lm 5.rm 75
.ap 80;D S C O N V  

This is a program to produce 1032 DMD  (Data  Definition)  files  from  
1022  datasets.   It optionally  also  dumps  ASCII data record  
.br;AUTHOR:  Coleman P.#Harrison  
.br;DATE WRITTEN:  June 28, 1983
.br;DATE MODIFIED: April 18, 1984 80;C O P Y R I G H T  
.sk;(C) 1983, 1984  
.br;Copyright Software House  

.sk 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:  
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. 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  

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  
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. 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 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:

.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:

.end lit.lm-10

If you have any questions, please call Coleman Harrison
at (617) 661-9440.