<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:r_ansi;
        panose-1:2 11 6 9 2 2 2 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page Section1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.Section1
        {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=EN-CA link=blue vlink=purple>
<div class=Section1>
<p class=MsoNormal><span style='color:#1F497D'>With HELP <b>THANKS ALL </b>. (
Peter B especially)<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>I was able to convert PDL to an
excel spreadsheet. The spreadsheet lists the column name, data type and the
description. <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Input Sample<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Usage
BCENTS
NUMERIC Size 12
& <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'> Input Scale
2
& <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'> Significance
1
& <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'> Leading Sign
"-"
& <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'> Picture "
^,^^^,^^^,^^^.^^"
& <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'> Default Item Datatype
INTEGER SIGNED SIZE
8
& <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'> Description
"BCENTS: BIG CENTS. Use for money values to be
stored " & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"with integer accuracy up to 10 billion
dollars.
" & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"And to be stored in the database with NO decimal portion,
" & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"but stored as integer cents.
" & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"Conversion to dollars to be done at PowerHouse
level " & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"using input and output scale, and let = * 100 or /
100. " & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"Input scale defaults to
2.
" & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"Default output scale is 1, because it matches the default
" & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"picture, ie displaying the
cents.
" & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"Output scale defaults to 2 to allow putting in
values " & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"without a decimal point and having the cents automatically "
& <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"added.
" & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"This should suit most applications, but if need to
input " & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"cents all the time, can override the input scale at screen "
& <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"level, and if need to display dollars only, override
the " & <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
"output scale at screen level.
" <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Output Sample<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>BCENTS
|NUMERIC Size
12 |
BCENTS: BIG CENTS. Use for money values to be stored with integer
accuracy up to 10 billion dollars. And to be stored in the database with NO
decimal portion, but stored as integer cents. Conversion to dollars to be done
at PowerHouse level using input and output scale, and let = * 100 or / 100.
Input scale defaults to 2. Default output scale is 1, because it matches the
default picture, ie displaying the cents. Output scale defaults to 2 to allow
putting in values without a decimal point and having the cents automatically
added. This should suit most applications, but if need to input cents all the
time, can override the input scale at screen level, and if need to display
dollars only, override the output scale at screen
level.
<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Here are the steps:<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>1) create an rms table called
PDL with an item PDL_LINE as follows:<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'> <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
Record:
PDL<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'> of
File: PDL<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
Organization: SEQUENTIAL<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
Type:
RMS<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
Open:
PDL<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'> Record
Format: Fixed<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
Supersede: No<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'> Record
Size: 80 Bytes<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>-- Record Contents --<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
Item
Type
Size Occ Offset<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
PDL_LINE
CHARACTER 80
0<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>2) create the fdl<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>$anal/RMS/FDL <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>3) Generate the PDL<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>$qshow<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>> set lang pdl<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>> gen element ALL <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Default device is disc file
QSHOGEN.PDL.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>The file XXX:QSHOGEN.PDL;
already exists. Cre<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>ate new version?y<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>> Exit<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>4) Convert it<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>$convert/fdl=pdl.fdl qshogen.pdl
pdl.dat/pad=" "<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>5) Run this QTP program<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>$qtp<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>request element_desc input noli
process noli<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Access PDL<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>select if PDL_LINE[1:6]
<> " Help" and &<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
(PDL_LINE[1:5] =
"Usage"
or &<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
PDL_LINE[1:7] =
"Element"
or &<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
PDL_LINE[1:13] = "
Description"
or &<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
PDL_LINE[1:15] =
'
"' or &<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
PDL_LINE[1:20] =
"
") <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Temp REC_COUNT<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Item REC_COUNT = 1
IF PDL_LINE[1:7] = "Element"
or
&<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
PDL_LINE[1:5] =
"Usage"
&<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
else 2 IF PDL_LINE[76:1] =
'"'
&<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
else 3 IF PDL_LINE[1:20] =
"
"<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>TEMP CSV varchar size 2047<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>define d_CRVAL int*2 = 13<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>define d_LFVAL int*2 = 10<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>define d_CRLF char*2
= char(d_CRVAL)[1:1] + char(d_LFVAL)[1:1]<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Item CSV = PDL_LINE[9:33]
+ '|' + PDL_LINE[42:30] +
'|'
&<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
IF 1 =
REC_COUNT
&<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
else TRUNCATE (CSV ) + ' '+
PDL_LINE[16:60]
&<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>
IF 2 = REC_COUNT <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Subfile META keep portable if 3
= REC_COUNT inc CSV, D_CRLF<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>go<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>6) Copy the META.PS to the
desktop<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>7) Open the META.PS from excel noting
it is delimited by a “|”<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<div>
<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'>
<p class=MsoNormal><b><span lang=EN-US style='font-size:10.0pt;font-family:
"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;
font-family:"Tahoma","sans-serif"'> Hodson, Paul EDUC:EX <br>
<b>Sent:</b> March-02-09 9:10 AM<br>
<b>To:</b> 'powerh-l@lists.sowder.com'<br>
<b>Subject:</b> PDL to CSV<o:p></o:p></span></p>
</div>
</div>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Hello,<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>We about 6000 elements in a OpenVMS powerhouse dictionary
and would like to list the element with description in an excel spreadsheet. <o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Does anyone have a utility to take PDL( specifically
elements) and produce a CSV format? <o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>So for example <o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Input <o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;
font-family:r_ansi'>Element
ACCPAC_SIN_FIRST3
CHARACTER Size 5
&<o:p></o:p></span></p>
<p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;
font-family:r_ansi'> Default Item Datatype CHARACTER SIZE
5
&<o:p></o:p></span></p>
<p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;
font-family:r_ansi'> Description "First 3 digits of the Social
Insurance Number from the " &<o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:10.0pt;font-family:r_ansi'>
"Accounts Receivable. Separately contained in the
AR. " &</span><o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Output like...<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0 width=1325
style='width:994.0pt;margin-left:-.75pt;border-collapse:collapse'>
<tr style='height:15.0pt'>
<td width=159 nowrap valign=bottom style='width:119.0pt;padding:0cm 5.4pt 0cm 5.4pt;
height:15.0pt'>
<p class=MsoNormal><span style='font-size:10.0pt;font-family:r_ansi;
color:black'>ACCPAC_SIN_FIRST3
<o:p></o:p></span></p>
</td>
<td width=168 nowrap valign=bottom style='width:126.0pt;padding:0cm 5.4pt 0cm 5.4pt;
height:15.0pt'>
<p class=MsoNormal><span style='font-size:10.0pt;font-family:r_ansi;
color:black'>CHARACTER Size
5
<o:p></o:p></span></p>
</td>
<td width=999 nowrap valign=bottom style='width:749.0pt;padding:0cm 5.4pt 0cm 5.4pt;
height:15.0pt'>
<p class=MsoNormal><span style='font-size:10.0pt;font-family:r_ansi;
color:black'>First 3 digits of the Social Insurance Number from the Accounts
Receivable. Separately contained in the
AR. <o:p></o:p></span></p>
</td>
</tr>
</table>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Alternative may be access to the metadata structures but I
am not sure if that access is available. <o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Thanks in advanced.<o:p></o:p></p>
<p class=MsoNormal>Paul<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
</div>
</body>
</html>