powerdesigner 名称注释互转

Posted wudeyun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了powerdesigner 名称注释互转相关的知识,希望对你有一定的参考价值。

依次执行 1 - 5 步,实现 注释转名称 或者名称转注释,两个转换脚本附上

 

技术图片

 

 

1. 名称转注释脚本:

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
            将表名称作为表注释
            tab.comment = tab.name
            Dim col  running column

            For Each col in tab.columns
                把列名称和comment合并为comment
                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

2. 注释转名称

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
            tab.name = tab.comment
            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

 

以上是关于powerdesigner 名称注释互转的主要内容,如果未能解决你的问题,请参考以下文章

PowerDesigner 把Comment/name 互转

vbscript PowerDesigner的名称复制到注释

powerdesigner 实体关系模型CDM与物理数据模型PDM互转

PowerDesigner从Excel导入表

PowerDesigner使用技巧

PowerDesigner使用技巧