PowerDesigner将Comment赋值到Name

需求:从数据库逆向过来的PD文档,数据库中的字段描述全部进入了Comment字段,不方便查看,因此需要将Comment赋值到Name上。

步骤:打开PD,菜单Tools->Execute Commands->Edit/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


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   =   GetName(tab.comment)
                  Dim   col   '   running   column
                  for   each   col   in   tab.columns
                  if col.comment="" then
                  else
                        col.name=   GetName(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   =   GetName(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


function GetName(comment)
   Dim pos 
   
   pos = InStr(comment,"-")
   if pos > 0 then 
      GetName=Left(comment, pos-1)
      exit function
   end if
      
   pos = InStr(comment,",")
   if pos > 0 then 
      GetName=Left(comment, pos-1)
      exit function 
   end if   
      
      
   GetName=comment
end function

说明:

原始脚本来自网上,我在原始脚本的基础上增加了Comment字段拆分功能,即:以第一个“-”,“,”为界,前面的部分赋值为Name,其他的不要,因此Comment字段的内容可以比Name更多

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值