'------------------------------------------------------------
'
'脚本功能:
' PowerDesigner中逆向工程完成后, 批量将数据库中
' Comment脚本赋值到PDM的Name
'执行方法:
' Open PDM--Tools--Execute Commands--Run Script
'
'------------------------------------------------------------
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
'------------------------------------------------------------
'This routine copy name into code for each table, each
'column and each view of the current folde
'------------------------------------------------------------
Private sub ProcessFolder(folder)
Dim Tab 'running table
for each Tab in folder.tables
if not tab.isShortcut then
if len(tab.comment) <> 0 then
tab.name = tab.comment
end if
Dim col 'running column
for each col in tab.columns
if len(col.comment) <>0 then
col.name = col.comment
end if
On Error Resume Next
next
end if
next
Dim view 'running view
for each view in folder.Views
if not view.isShortcut then
if len(view.name) <>0 then
view.comment = view.name
end if
On Error Resume Next
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
'---------------------------END------------------------------
'
'脚本功能:
' PowerDesigner中逆向工程完成后, 批量将数据库中
' Comment脚本赋值到PDM的Name
'执行方法:
' Open PDM--Tools--Execute Commands--Run Script
'
'------------------------------------------------------------
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
'------------------------------------------------------------
'This routine copy name into code for each table, each
'column and each view of the current folde
'------------------------------------------------------------
Private sub ProcessFolder(folder)
Dim Tab 'running table
for each Tab in folder.tables
if not tab.isShortcut then
if len(tab.comment) <> 0 then
tab.name = tab.comment
end if
Dim col 'running column
for each col in tab.columns
if len(col.comment) <>0 then
col.name = col.comment
end if
On Error Resume Next
next
end if
next
Dim view 'running view
for each view in folder.Views
if not view.isShortcut then
if len(view.name) <>0 then
view.comment = view.name
end if
On Error Resume Next
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
'---------------------------END------------------------------