power desinger 学习笔记<八>把Comment复制到name中和把name复制到Comment

power desinger 学习笔记<八>把Comment复制到name中和把name复制到Comment

 

在使用PowerDesigner对数据库进行概念模型和物理模型设计时,一般在NAME或Comment中写中文,在Code中写英文。Name用来显 示,Code在代码中使用,但Comment中的文字会保存到数据库Table或Column的Comment中,当Name已经存在的时候,再写一次 Comment很麻烦,可以使用以下代码来解决这个问题

在PowerDesigner中使用方法为:

   PowerDesigner->Tools->Execute Commands->Edit/Run Scripts

将代码Copy进去执行就可以了,是对整个CDM或PDM进行操作

 

[vb] view plaincopyprint?

'代码一:将Name中的字符COPY至Comment中  

  

1 Option   Explicit   

2 ValidationMode   =   True   

3 InteractiveMode   =   im_Batch  

4 Dim   mdl   '   the   current   model  

5 '   get   the   current   active   model   

6 Set   mdl   =   ActiveModel   

7 If   (mdl   Is   Nothing)   Then   

8       MsgBox   "There   is   no   current   Model "   

9 ElseIf   Not   mdl.IsKindOf(PdPDM.cls_Model)   Then   

10       MsgBox   "The   current   model   is   not   an   Physical   Data   model. "   

11 Else   

12       ProcessFolder   mdl   

13 End   If  

14 '   This   routine   copy   name   into   comment   for   each   table,   each   column   and   each   view   

15 '   of   the   current   folder   

16 Private   sub   ProcessFolder(folder)   

17 Dim   Tab   'running     table   

18       for   each   Tab   in   folder.tables   

19             if   not   tab.isShortcut   then   

20                   tab.comment   =   tab.name   

21 Dim   col   '   running   column   

22                   for   each   col   in   tab.columns   

23                         col.comment=   col.name   

24                   next   

25             end   if   

26       next  

27 Dim   view   'running   view   

28       for   each   view   in   folder.Views   

29             if   not   view.isShortcut   then   

30                   view.comment   =   view.name   

31             end   if   

32       next  

33 '   go   into   the   sub-packages   

34 Dim   f   '   running   folder   

35 For   Each   f   In   folder.Packages   

36             if   not   f.IsShortcut   then   

37                   ProcessFolder   f   

38             end   if   

39 Next   

40 end   sub  

另外在使用REVERSE ENGINEER从数据库反向生成PDM的时候,PDM中的表的NAME和CODE事实上都是CODE,为了把NAME替换为数据库中Table或Column的中文Comment,可以使用以下脚本:

[vb] view plaincopyprint?

 

1 '代码二:将Comment中的字符COPY至Name中   

2   

3 Option   Explicit   

4 ValidationMode   =   True   

5 InteractiveMode   =   im_Batch  

6   

7 Dim   mdl   '   the   current   model  

8   

9 '   get   the   current   active   model   

10 Set   mdl   =   ActiveModel   

11 If   (mdl   Is   Nothing)   Then   

12       MsgBox   "There   is   no   current   Model "   

13 ElseIf   Not   mdl.IsKindOf(PdPDM.cls_Model)   Then   

14       MsgBox   "The   current   model   is   not   an   Physical   Data   model. "   

15 Else   

16       ProcessFolder   mdl   

17 End   If  

18   

19 Private   sub   ProcessFolder(folder)   

20 On Error Resume Next  

21       Dim   Tab   'running     table   

22       for   each   Tab   in   folder.tables   

23             if   not   tab.isShortcut   then   

24                   tab.name   =   tab.comment  

25                   Dim   col   '   running   column   

26                   for   each   col   in   tab.columns   

27                   if col.comment="" then  

28                   else  

29                         col.name=   col.comment   

30                   end if  

31                   next   

32             end   if   

33       next  

34   

35       Dim   view   'running   view   

36       for   each   view   in   folder.Views   

37             if   not   view.isShortcut   then   

38                   view.name   =   view.comment   

39             end   if   

40       next  

41   

42       '   go   into   the   sub-packages   

43       Dim   f   '   running   folder   

44       For   Each   f   In   folder.Packages   

45             if   not   f.IsShortcut   then   

46                   ProcessFolder   f   

47             end   if   

48       Next   

49 end   sub  

50     原帖地址:http://blog.csdn.net/smartsmile2012/article/details/7922863

创建时间:2021-12-22 16:08
浏览量:0