ver. 1.1.2
Copyright (c) Martin Jindra  ICQ status
Release: 2004-10-25

This program is based on a tool originally developed by Martin Haluza (mhaluza@eqeus.com).

Version Jméno E-mail GUI Dokumentace
1.0e Martin Haluza mhaluza@eqeus.com (2002-04-04) (2002-05-09)
1.0z Martin Haluza mhaluza@eqeus.com (2002-12-20) (2002-12-20)
1.0h Martin Haluza mhaluza@eqeus.com (--) (--)
1.0h SE Martin Haluza mhaluza@eqeus.com (--) (--)
1.0h TH Martin Haluza mhaluza@eqeus.com (--) (--)
1.01 Martin Haluza mhaluza@eqeus.com (2003--) (2003--)

Obsah:

Thank you for downloading PDM.


Acknowledgments

Chtěl bych poděkovat všem, co testovali různé alfa, beta, gama, delta, epsilon verze a dali k dobru spoustu nápadů: Elmer Adkins, Martin Růžička, Milan Kosina, Nadya Nosonovsky, Pablo Rivera, Henry C. Dagher, Vlad Grynchyshyn, Václav Krs, Agnes Scheffler, Karas Zdeněk, Goldman Claude, Pavel Kouřil, Olga Vitengerová, Milan Kosina, Vašo Elias, Michal Tvrdý, Grigore Dolghin ...
Všem co provedli překlad do dalších jazyků: Martin Haluza, Jan Korecko, Lionel Sevestre, Marco Wotschadlo.

Liability

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.


Purpose of PDM

PDM serves to create a complete HTML documentation of your VFP project.
It creates a detailed description of:

Project
  • Basic properties
  • Properties executable file
  • Other properties
  • OLE public clasess
Data
  • Free tables (fields and indexes)
  • Queries (define SELECT SQL)
  • DBC containers
    • Tables (fields, indexes and table properties)
    • Views (fields, indexes,define SELECT SQL and other properties)
    • Connections
    • Stored procedures
    • Events file
VCX Libraries
  • Object hierarchy
Forms
  • Object hierarchy
  • Data Environment
Programs
  • Procedures/Functions
  • Classes
  • Object hierarchy
Reports
  • Report properties
  • Printer properties
  • Variables
  • Bands
  • Quick view
  • Detail of all object
  • Data Environment
Labels
  • Label properties
  • Printer properties
  • Variables
  • Bands
  • Quick view
  • Detail of all object
  • Data Environment
Menus
  • General Options
  • Quick View
  • Detailů všech objektů
  • Analýza vloženého zdrojového kódu stejná jako u programů
Spřátelené projekty
  • Seznam pro rychlý přechod

General features:

How to use this software?

Run PDM, enter the location of your project (locate the .PJX file), and the output directory and press the Go button. PDM creates a set of HTML pages in the output directory. The main page can be Project.htm or a different one (it depends on which part is to be generated). Other main pages are: Data.htm, Class.htm, Form.htm, Code.htm, Menus.htm, Reports.htm, Labels.htm a Other.htm.

If you come across any bug or have any questions or suggestions, please, contact us at martin.jindra@egservis.cz. If you wish to be informed about new versions of PDM, send us a message.

If you create any modifications or new versions, please, let me know.


Main Window and Dialogs

Main window
Friendly projects ( cooperative projects)
Other settings
File list to process
One or more files
Setup & Cleanup
Plug-ins
Comments
Project overview
Custom links

Running PDM

Parametrs: GUI will be run if:

Running withouth GUI

1) DO PDM WITH "myproj.pjx","c:\temp\myproj", "myproj.pdm"
In this example, the HTML generation settings will be taken from the myproj.pdm file. A myproj.pjx documentation will be generated to c:\temp\myproj directory.
2) DO PDM WITH "","", "myproj.pdm"
In this example, the HTML generation settings will be taken from the myproj.pdm file, including the source project and the output directory.
3) DO PDM WITH "myproj.pjx","c:\temp\myproj"
In this example, a documentation of myproj.pjx will be generated to c:\temp\myproj directory, with the default settings.
4) DO PDM WITH "","","x:\test\xxa000.pdm,x:\test\xxa001.pdm"
In this example, a documentation for x:\test\xxa000.pdm and x:\test\xxa001.pdm will be generated. The first and the second parameters are ignored.
5) DO PDM WITH "program1.prg,forms1.scx","c:\temp\myfiles", "myfiles.pdm"
V tomto případě se převezmou nastavení pro generování HTML dokumentace ze souboru myfiles.pdm, ale generuje se dokumentace pro soubory program1.prg,forms1.scx do adresáře c:\temp\myfiles.
6) DO PDM WITH "program1.prg,forms1.scx","c:\temp\myfiles", "myfiles.pdm", "",1
V tomto případě se převezmou nastavení pro generování HTML dokumentace ze souboru myfiles.pdm, ale generuje se dokumentace pro program1.prg,forms1.scx do adresáře c:\temp\myfiles přičemž se pro každý soubor vytváří vlastní adresář.

Running with GUI - language selection

The path is either relative to the path of the PDM.APP, or absolute.
1) Running the English GUI: DO PDM WITH "","","","lang\en"
2) Running the Czech GUI: DO PDM WITH "","","","lang\cs"
3) Running the Slovak GUI: DO PDM WITH "","","","lang\sk"
4) Running the Russian GUI: DO PDM WITH "","","","lang\ru"
5) Running the Spanish GUI: DO PDM WITH "","","","lang\es"
6) Running the French GUI: DO PDM WITH "","","","lang\fr"
7) Running the German GUI: DO PDM WITH "","","","lang\de"

Problémy

Při startu PDM se mohou objevit problémy. Hlášení jsou vždy v Anglickém jazyce.
Can't find directory of resource.
Adresář zdrojů pro generování HTML souborů neexistuje. Je to adresář RES.
Can't find FLL library %File%.
Potřebná FLL knihovna neexistuje. %File% je název FLL knihovny.
Can't find VCX library %File%.
Potřebná VCX knihovna neexistuje. %File% je název VCX knihovny.
Can't load FLL library %File%.
Nepodařilo se zavést potřebnou FLL knihovnu. %File% je název FLL knihovny. FLL knihovna může být poškozená, nebo chybějí či jsou poškozené knihovny RT MS VC++.
Can't load VCX library %File%.
Nepodařilo se zavést potřebnou VCX knihovnu. %File% je název VCX knihovny. VCX knihovna může být poškozena.
Directory %Dir% localized resource not exist.
Uvedený adresář, kde mají být umístěny lokalizované soubory neexistuje. %Dir% je název adresáře
Localized table %File% not exist.
Potřebná tabulka s lokalizovanými řetězci neexistuje. %File% je název tabulky.
Localized library %File% not exist.
Potřebná VCX knihovna s lokalizovanými formuláři neexistuje. %File% je název VCX knihovny.
Cannot open localized table %File%.
Nepodařilo se otevřít potřebnou tabulku s lokalizovanými řetězci. %File% je název tabulky.
Cannot open localized library %File%.
Nepodařilo se zavést potřebnou VCX knihovnu s lokalizovanými formuláři. %File% je název VCX knihovny.

History

PDM ver. 1.1.2

Fixed:
- After termination PDM startup from IDE, then ICO is not reset to default ICO.
- Don't test any changes.
- If in Project Overview define file as DOC etc, don't copy to repository.
- Custom Links, If file had defined protocol file:// and was set Copy to repository, then file wasn't copy to repository folder.
- After change extensions for group (Other settings, Default Extension), PDM ignore these settings.
- PDM don't create anchors for object's PEMs from VCX/SCX.
- Classtree for classes in VCX/PRG containes invalid hyperlinks if was generate all classes to one html page.
- Setting "Delete ouput folder" is ignored if output folder containes any file with attribute RO/S/H.
- Error message "Alias loPDM not found." at proccesing class cursoradapter.
- Invalid internal references to PDM object in plug-ins.
- Bad analysing source code with metadata.
- Bad xhtml in properties's table if contains property MemberClass, MemberClassLibrary, etc.

PDM ver. 1.1.1

New:
- Plug-in DIAMP-PDM can have metadata for description M/P saved in external table.
- Added plug-ins DIAMP_PDM_MD a DIAP_PDM_MD where metadata are XML document.
- Added new plug-in's group "After Create" and plug-ins for HTMLDOC and HTML Help Workshop.
- Added new plug-in EFRX for Mind's Eye Report Engine.
- Added Global classes tree and objects for all PDM project.
- Added cross hyperlinks from tables and views to classes,formes, reportes and labeles.
- Now is Index.htm as main page.
- XHTML elementes img has defined attribute alt.
- New possibility definition page margin for print html pages.
- New possibility definition if PDM will include spaces and CRLFs in output HTML.
- New dialog for PDM's global settings.
- New dialog "About".
- Changed main form.
- New possibility definition default folder for project or file list.


Fixed:
- CSS styles for plug-in DIAMP-PDM.
- Bad hyperlinks to objects in object list.
- Bad detection objects inherited from class on form.
- Bad detection H files in projects.
- Many small bugs.


PDM ver. 1.01

New:
- Přidán plug-in typu EFRX pro FRX2Any.
- Přidán plug-in typu EFRX pro eReports.
Changed:
- Odstraněn parametr SC_Type. Nyní je Syntax Coloring prováděn kombinací pomalé a rychlé metody.
- Plug-in typu EFRX pro XFRX detekuje všechny klíčová slova.
Fixed:
- Matice označena jako Hidden vlastnost.
- Chyba v metodě QuickAnalyse().
- Chyba v metodě Analyse().
- Odstraněno zpomalení při přípravě projektu v předzpracování PRG a H souborů.
- Špatná detekce státu ve vlastnostech projektu.
- Nefukční odkazy na uložené procedury ve vlastnostech tabulky.
- Detekce TXT souborů jako H soubory pokud nebyly H soubory detekovány.
- Spousta drobných chyb v GUI.

PDM ver. 1.0h TH

New:
- Přidán plug-in typu DIAP.
- Přidán plug-in typu EFRX pro XFRX.
Fixed:
- Opraveno generování seznamu položek pro pohledy.
- A spousta jiných drobných chyb.

PDM ver. 1.0h SE

New:
- Přidáno "Quick View menu".
- Přidáno "General Options Menu".
- Přidána možnost definovat Setup & Cleanup.
- DIAMP (Detail Info About Method and Procedure).
- Přidána možnost definovat plug-in pro DIAMP.
- Přidána možnost definovat vlastní komentáře použité ve zdrojovém kódu.
- Přidána detekce hlavičkových souborů a aktivní odkazy ve zdrojovém kódu.
- Přidána definice "Project Overview".
- Přidána možnost definovat "Custom Links".
- U projektu lze definovat klíč pro indetifikaci souboru komentářů.

Fixed:
- Opraveno generování stromu tříd.
- Opraveno generování Quick View reportu.
- Menší výstupní HTML kód.
- Zmatené hodnoty vlastností tříd a objektů.
- Drobné chyby při generování detailu objektů reportu a Quick View reportu.

PDM ver. 1.0h

New:
- Přibyla možnost generovat HTML dokumentaci pro jeden nebo více souborů bez nutnosti definování projektu.
- Přidáno SyntaxColoring pro indexové výrazy a klauzule FOR.
- Přidáno SyntaxColoring pro hodnoty vlastností definované jako výraz.

Fixed:
- Opraveny chyby v metodě _pdm_DBC::GenerateHTML().
- Pokud bylo spuštěno PDM z menu nebo z jiného programu, pak se objevila hláška "Can't find directory of resources".

PDM ver. 1.0z2

New:
- Added French GUI.
- Added title into element for column A,P,H,NI with text (Array,Hidden,Protected,Not Init).

Fixed:
- Opravena chyba v metodě _pdm_DBC::GenerateHTML_DBC().

PDM ver. 1.0z

New:
- V chybovém hlášení přibyla identifikace souboru, při jehož zpracování došlo k chybě.
- Obrázky uvedené v projektu se kopírují do repozitáře a generují se na ně odkazy.
- Obrázky uvedené ve vlastnostech objektů a tříd (Picture,DownPicture atd.) se kopírují do repozitáře a generují se na ně odkazy.
- Pod hlavním menu je náhled na obrázek.
- Ve vlastnostech objektu (třída cursor) se generuje odkaz na DBC konteiner nebo volnou tabulku.
- Má-li tabulka nastaveny triggery, pak se generují jejich odkazy do uložených procedur v databázi.
- Pro DBC konteiner se generuje příznak,zda jsou využívány Events (nutno rekompilovat projekt pod VFP 7.0).

Fixed:
- Neukončené tagy IMG.
- Občas se generovala hodnota atributu href tagu <a> bez uvozovek.
- Pokud neexistoval soubor uvedený v projektu, pak byla hlášena chyba v metodě _pdm::ICL_TestFile().
- Občas byla hlášena chyba "Alias not found..." v metodách _pdm::Save_ICL() a _pdm::Read_ICL() při startu PDM, načtení a uložení souboru PDM.
- Odkazy v hlavních html stránkách obsahovaly znak \ místo /.
- Pokud byly u třídy ve VCX knihovně u ikon pro toolbar a konteiner uvedena pouze cesta, pak se generovaly neplatné odkazy na ikony.
- Pokud byl poslední řádek zdrojového kódu ukončen ";", pak byla hlášena chyba "Subscript is outside defined range." v _pdm_Analysesc.Analyse().
- Byla-li v volbě menu rychlá klávesa, pak nedošlo k nahrazení znaku < entitou.
- Byl-li program prost procedur,funkcí a metod, pak se negenerovaly elementy </body > a </html >.
- Generovaly se špatné odkazy pro volné tabulky a dotazy.
- Chyba "Invalid subscript reference." při generování detailu reportu/labelu.
- Chyba "Invalid subscript reference." po přidání či odebrání spřáteleného projektu a spuštění generování HTML dokumentace.
- Chyba "Variable'_PDM_MSGNCDIR' is not found" pokud nelze vytvořit výstupní adresář.

Changed:
- Stránky se generují v !DOCTYPE xhtml.
- Všechny texty vkládané do HTML jsou vyextrahovány to tabulky HTML.dbf.

PDM ver. 1.0e

New:
- GUI a HTML Dokumentace ve Slovenštině.
- Zpracování Menu.
- Generování seznamu Spřátelených projektů.
- Sbalit/Rozbalit všechny procedury programu nebo metody třídy/objektu.
- Generování stromu tříd u VCX/PRG/MNX souborů.
- Přibyla možnost výstupní adresář pro HTML dokumentaci před generováním vyčistit.
- Pro detail reportu, labelu a menu lze definovat šířku pravé části v procentech.
- V režimu GUI je možno přerušit vytváření HTML dokumentace pomocí klávesy Escape.
- Je možno provádět inkrementální generování dokumentace na úrovni souborů (s výjimkou volných tabulek a dotazů).
- Zahrnutí detailního popisu metod/procedur ze zdrojového kódu do výsledné dokumentace.
- Řízená dokumentace.

Fixed:
- Titulek okna u hlavní stránky seznamu labelů.
- Pokud se nepodařilo otevřít Spřátelený projekt, pak došlo k sérii chyb.
- V české lokalizaci opraveny nepřeložené popisy na stránkách "Formuláře" a "Programy".
- Na stránkách "Reporty" a "Štítky" opraven popis jednoho checkboxu z "Other Bands or Objects Properties" na "Other Bands Properties or Object list"
- Ve vygenerovaných HTML souborech zmizely prázdné řádky po sbalených vlastnostech položek, bandů a seznamu objektů v bandu.
- Při ukládání se mohly špatně vygenerovat umístění Friendly projects.
- Špatně vygenerovaný odkaz na rodičovskou třídu v definici třídy v PRG souboru.
- Špatně vygenerované odkazy na rodičovskou třídu v definici třídy v VCX/PRG/MNX souboru, pokud bylo nastaveno generování tříd na jednu stránku.
- Generování názvu obrázku pro repositář, pokud se shodovaly názvy, ale lišilo se umístění.
- Procedura Trim_SC() pro oddělení komentáře od zdrojového kódu.

Změny:
- Došlo ke změně generování struktury souborů do výstupního adresáře. Každý soubor má vlastní adresář v podadresáři dle skupiny příslušnosti.
- Na výběr výstupního adresáře se používá nový dialog.

PDM ver. 1.0d (2)

Changed:
- HTML files are printed after the generation.

New:
- Slow or Fast Syntax Coloring parsing.
- English and Czech documentation in HTML.

Fixed:
- Incorrect relative file references.
- Unsorted file list in PDMprn.log.
- Incorrectly structured HTML format for conversion to PDF or other formats.
- VCX/SCX/PRG/FRX files directories were not lowercased.
- dmOrientation member had incorrect caption in DEVMODE printer properties.
- If loading of FLL library failed, an error occured.

PDM ver. 1.0d (1)

Fixed:
NOSONOV@email.msn.com (2002-03-26)
- I pressed View HTML doc and got "Not exist HTML main page." Not sure, what does it mean, and this phrase doesn't sound correct from the English grammar point of view.

- Buttons with pictures need a tooltip text, because otherwise it's not clear, what they do.

eadkins@worldnet.att.net (2002-03-29)
- Some of the Messagebox and UI elements are not in English.

eadkins@worldnet.att.net (2002-02-12)
- The View PDM LOG File and VIEW Error Log file Buttons do not seem to work. The PDM LOG file was empty, so I assume that it did not work because of this, however the error log file contained the following error, yet did not display it from the interface button. I found it in the resulting doc folder:
12 - _PDM_ANALYSESC2.REPAIROBJECTHIERARCHY - 159
Variable 'LCFILE' is not found. 8760

Note: If are write in PDM LOG file message: "Object %Obj% cannot be found in file %File%.:", then mean Error in method RepairObjectHierarchy() in class _PDM_ANALYSESC.

- If the processing was canceled, not all files opened by FCreate() were closed.
- If APP/EXE/DLL was not created and an error occured during the PJX_Page.htm generation.
- EXE file version was incorrectly generated.
- Incorrect alogorithm in RepairObjectHierarchy().
- lnOutDir parameter was not handled correctly in go.prg.
- Incorrect references to VCX library pages.