培训内容:在没有系统的数据库设计的时候,如何从环境中获取。
目标:导出环境中的表结构、并生成chm文档。
准备条件:
- 数据库(我使用的是G6TB全新安装库,可以保证最新)
- 工具:PDM、PDMToCHM.exe、htmlhelp.zip(等会附在文件中)
操作流程:
- 新建PDM文件,按照模块命名。
- 通过PDM软件连接数据库。
测试一下:
- 从数据库中导出表结构。
数据库所有内容都在这里了。都可以导出,分析系统的话,只需要导出表结构即可。
- 替换comment->name
此时发现导出的表name和code一致,不方便看,期望是和comment一致。
Option Explicit
ValidationMode = True
InteractiveMode = im_Batch
Dim mdl ' the current model
' get the current active model
Set mdl = ActiveModel
If (mdl Is Nothing) Then
MsgBox "There is no current Model "
ElseIf Not mdl.IsKindOf(PdPDM.cls_Model) Then
MsgBox "The current model is not an Physical Data model. "
Else
ProcessFolder mdl
End If
Private sub ProcessFolder(folder)
On Error Resume Next
Dim Tab 'running table
for each Tab in folder.tables
if not tab.isShortcut then
Dim col ' running column
for each col in tab.columns
if col.comment="" then
else
col.name= col.comment
end if
next
end if
next
Dim view 'running view
for each view in folder.Views
if not view.isShortcut then
view.name = view.comment
end if
next
' go into the sub-packages
Dim f ' running folder
For Each f In folder.Packages
if not f.IsShortcut then
ProcessFolder f
end if
Next
end sub
该代码是从网上爬的,需要注意的是里面一般都有把表的name也替换为了comment。但是G6中的很多表的comment写的很奇怪。有特殊符号,比如\/,’等。因为工具在导出的时候是生成了html文件,而文件名中不能有这些,所有在这里我把这句给去掉了。现在可以直接用。完美解决。
- 利用PDMToCHM.exe生成chm。
检查下内容,很完美:
试试下面这个
也可以用其他工具导出HTML,然后利用easyHTML合成chm
其他小点知识:如何将CHM反向生成HTML:
在DOS窗口下输入代码:
d:(跳转到CHM所在的工作磁盘;如果你的CHM文件在系统盘的话,此步骤可省略)
cd CHM文档的路径名(跳转到CHM所在的目录,即工作目录)
hh -decompile 转换后HTML的保存路径 CHM文件的名称(调用微软系统自带的工具,执行反编译命令)
做这个的目标是为了一个模块一个模块导出,G6很多模块,如果一起导出,会很慢。这样的话可以把每一个模块的html整合一下,在生成一个总的CHM。
Ok。