PowerDesigner 将code值赋给name列

来源:互联网 发布:linux终端退出服务器 编辑:程序博客网 时间:2024/05/23 09:45

打开powerdesigner -->  Tools --> Excute commands --> Edit/Run Script

然后运行如下代码(PowerDesigner 将code值赋给name列)
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)
    Dim Tab 'running table
    for each Tab in folder.tables
        if not tab.isShortcut then
            tab.name = tab.code
            Dim col 'running column
            for each col in tab.columns
                col.name= col.code
            next
        end if
    next
    Dim view 'running view 
        for each view in folder.Views 
            if not view.isShortcut then 
            view.name = view.code
        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

 

然后运行如下代码(PowerDesigner 将name值赋给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)
Dim Tab 'running table
for each Tab in folder.tables
if not tab.isShortcut then
tab.comment= tab.name
Dim col 'running column
for each col in tab.columns
col.comment= col.name
next
end if
next
Dim view 'running view
for each view in folder.Views
if not view.isShortcut then
view.comment= view.name
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