http://www.cnblogs.com/yelaiju/archive/2013/04/26/3044828.html
因爲PDM 的表中 Name 會默認=Code 因此很不方便, 因此須要將 StereoType 顯示到表的外面來html
打開[工具]->[顯示屬性](英文:Display Preferences) ->Content->Table->右邊面板Columns框中 勾選: StereoType ,這樣再在 StereoType中填入code字段相同內容就會顯示在圖形界面上了工具
使用說明: 在【Tools】-【Execute Commands】-【Edit/Run Script】 下。輸入下面你要選擇的語句便可,也能夠保存起來,以便下次使用,後綴爲.vbs。post
須要注意的問題是:運行語句時必須在Module模式下,若是是導出報表時執行會出現錯誤提示。spa
1.Name轉到Comment註釋字段。通常狀況下只填寫NAME,COMMENT能夠運行語句自動生成。code
將該語句保存爲name2comment.vbshtm
原地址的代碼有一些格式上的錯誤,現已修正。 blog
'
把pd中那麼name想自動添加到comment裏面
'
若是comment爲空,則填入name;若是不爲空,則保留不變,這樣能夠避免已有的註釋丟失.
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 comment 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
trim(tab.comment)=
""
then
'
若是有表的註釋,則不改變它.若是沒有表註釋.則把name添加到註釋裏面.
tab.comment = tab.name
end
if
Dim col
'
running column
for
each col in tab.columns
if
trim(col.comment)=
""
then
'
若是col的comment爲空,則填入name,若是已有註釋,則不添加;這樣能夠避免已有註釋丟失.
col.comment= col.name
end
if
next
end
if
next
Dim view
'
running view
for
each view in folder.Views
if
not view.isShortcut
and
trim(view.comment)=
""
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.將Comment內容保存到NAME中,comment2name.vbs 實習互換。語句爲:
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