PDREP

PDREP post-processes a report produced by PowerDesigner to reduce the noise level by removing pieces with no real information, and compacts the information about keys and index to a single list for each. You need at least version 9.5 of PowerDesigner to use PDREP.

Contents:
   Running PDREP
   Report Templates
   Report Settings
   Workaround for Filtered Indexes
   Modifications performed by PDREP

Running PDREP

 pdrep report
report Is the file name you specified to PowerDesigner when you generated the report.

When you generate a report from PowerDesigner you get a file, say MyReport.html, and a directory MyReport_files which includes a number of files called MyRe1.html, MyRepo2.html etc plus some system files for stylesheets, navigation in the menu tree etc. When you run PDREP, PDREP creates new files in this directory. Each file covers a single table or a single data type etc and is named after the object covered in the file. The only file generated by PowerDesigner that is replaced is the table of contents (TOC). The old TOC is renamed by adding .old as an extension, for instance Report_toc.html.old. If you run PDREP twice on the same report file, PDREP will detect this, and do nothing the second time.

If there is a file footer.html in the directory when you run PDREP, PDREP will add this footer to all files it generates. This can be useful for copyright notes.

When you run PDREP, it prints the name of the file it is currently producing.

If PDREP fails to parse an HTML file produced by PowerDesigner, PDREP stops. In this case, PDREP may have generated one or more files, but the original TOC is unmolested, as the TOC files are not renamed unless PDREP completes successfully.

Report Templates

To use PDREP, you must use any of the two report templates that comes with AbaPerls and which you find in the Misc directory of your AbaPerls installation:

htmlrep951.rtpUse this template with versions 9.5 to 15 of PowerDesigner.
htmlrep16.rtpThis template was created with version 16.1 of PowerDesigner, and presumably requires this version.

The two templates works largely the same, but htmlrep16.rtp has a couple of enhancements:

If you wish to extend the reports you get from the template, you are free to try. But don't be surprised, if PDREP crashes or botches the extra report items you added. And you must in no way change the order of the columns in the tables in the template. Also be careful not to change the order in some sections. For instance, PDREP assumes that the individual section for indexes are in the same order as in the Index List.

Report Settings

It is also important to have the correct settings in PowerDesigner when you generate the report. Select Report->Report properties from the menu in the report-edit window. Here is a screen short from PowerDesigner 16.1:

Report properties.

There are several changes you need to from the defaults. The most important are highlighted in the screen.shot. If you do not change these, PDREP will not work.

Here is a complete list of recommendations:

Not all these options may be available in older verisons of PowerDesigner, why you don't have to worry about them with one exception. In earlier versions of PowerDesigner, the List format settings were not exposed in the GUI, but you must set them in the registry according to this table:

HKEY_CURRENT_USER\Software\Sybase\PowerDesigner 9\General\NbRowInHtmlList 5000
HKEY_CURRENT_USER\Software\Sybase\PowerDesigner 9\General\NbSubPageInHtmlList 2000

Workaround for Filtered Indexes

While PowerDesigner 16.1 claims to support SQL 2008, it does not have support for filtered indexes. To this end, both PDREP and TBLFIX support a workaround. On the proprerty page for an index there is a tab Microsoft. If you put the index filter in the Filegroup box, as shown in the figure below, both PDREP and TBLFIX will interpret this as an index filter.

Screenshot filtered index

Note! You must include WHERE in the text, or else both tools will assume that you did indeed mean a file group.

Modifications performed by PDREP

Here follows a brief summary of the most important modifications performed by PDREP:

To see an example of the output from PDREP, see the documentation for the AbaPerls system tables. This report was generated from the files Abaperls.pdm and footer.html in the doc/database directory of your AbaPerls installation.