PowerDesigner中name和comment互換

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

执行方法: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 NothingThen           
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                                            

 

2 PowerDesigner中逆向工程将数据库中comment脚本赋值到PDM的name

执行方法: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 NothingThen                              
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                                                                                                                     
if len(tab.comment) <> 0 then                                                                                                           
tab.name 
= tab.comment                                                                                               
end if                                                                                                                              
On Error Resume Next                                                                                                                
Dim col 'running column                                                                                                   
for each col in tab.columns                                                                                              
if len(col.comment) <>0 then                                                                                                  
col.name 
=col.comment                                                                                                       
end if                                                                                                        
On Error Resume Next                                                                           
next                                                                                                                   
end if                                                          
next                     
end sub 


眼镜蛇

posted on 2009-01-10 10:17 眼镜蛇 阅读(1621) 评论(1)  编辑  收藏 所属分类: PowerDesigner

评论

# re: PowerDesigner中name和comment互換 2013-03-11 15:24 alex.yao

very good  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
 
<2024年5月>
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678

导航

统计

常用链接

留言簿(6)

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜