PowerDesigner11中批量根据对象的name生成comment的脚本

PowerDesigner11中批量根据对象的name生成comment的脚本

楼主edeed(骨骨)2006-04-03 13:13:02 在 软件工程/管理 / Power Designer 提问

'******************************************************************************  
  '*   File:           name2comment.vbs  
  '*   Purpose:     Database   generation   cannot   use   object   names   anymore    
  '                         in   version   7   and   above.  
  '                         It   always   uses   the   object   codes.  
  '  
  '                         In   case   the   object   codes   are   not   aligned   with   your    
  '                         object   names   in   your   model,   this   script   will   copy    
  '                         the   object   Name   onto   the   object   comment   for    
  '                         the   Tables   and   Columns.  
  '  
  '*   Title:         把对象name拷入comment属性中  
  '*   Version:     1.0  
  '*   Author:wangnc  
  '*   执行方法:PD11   --   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   folder  
  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 问题点数:0、回复次数:4Top

1 楼jackyzjh(小猪)回复于 2006-04-28 15:51:40 得分 0

Column   (发生意外。  
    (0x80020009))  
  At   line   43,   character   13  
   
  楼主试过没有?用的是什么版本?Top

2 楼liu7537(数据库模型设计博客连载(http://blog.csdn.net/liu7537))回复于 2006-05-17 11:47:33 得分 0

本人新近在CSDN上开通了“数据库模型设计”博客,计划分120天进行数据库模型设计有关实战的连载,希望大家捧场。  
  地址是:http://blog.csdn.net/liu7537  
  做个广告,楼主和版主不会介意吧?Top

3 楼shuiniu(飞扬的梦)(我是一头只吃西红柿的水牛)回复于 2006-09-27 18:44:31 得分 0

C:\Program   Files\Sybase\PowerDesigner   Trial   11\VB   Scripts\name2code.vbsTop

4 楼EricXP(知我者谓我心忧,不知我者谓我何求)回复于 2006-10-12 23:14:11 得分 0

谢谢LZ的脚本,解决了一个让我头疼的问题   :)  
  另:楼上的朋友,你说的那个脚本是把Name转化成Code的,和LZ的脚本作用完全不同。  
  而且通常我们在设计时,Name会用中文名。Code才是数据库中的真实字段名。

Tags(标签):Pow

文章评论
 专题推荐
     栏目更新
    站点导航

    天天网摘 Copyright(版权所有) © 天天网摘 2001~2009

    本站文章来源于网络,如果有侵犯你的权宜的地方,请指出我们会即时更正。