1. 程式人生 > >powerdesigner中獲取pdm中所有物件並修改的vbscript例子

powerdesigner中獲取pdm中所有物件並修改的vbscript例子

powerdesigner是個好東西,設計工作中經常有些工作需要批量執行修改,採用其自帶的指令碼語言是個不錯的選則,下面這段指令碼把pdm中所有物件並修改,其中包含對多層package中物件的呼叫,很方便


Option Explicit
ValidationMode = True
InteractiveMode = im_Batch

'ceaate by runnerrunning

' get the current active model
Dim mdl ' the current model
Set mdl = ActiveModel
If (mdl Is Nothing) Then
   MsgBox "There is no Active Model"
Else
   ListObjects(mdl)
End If


'-----------------------------------------------------------------------------
Private Sub ListObjects(fldr) '列出所有的物件
   output "Scanning " & fldr.code
   Dim obj ' running object
   For Each obj In fldr.children
      ' Calling sub procedure to print out information on the object
      DescribeObject obj
      TableSetComment obj
   Next

   ' go into the sub-packages
   Dim f ' running folder
   For Each f In fldr.Packages '遞迴呼叫列出所有的物件
      'calling sub procedure to scan children package
      ListObjects f
   Next
End Sub

'-----------------------------------------------------------------------------
' Sub procedure to print information on current object in output
'-----------------------------------------------------------------------------
Private Sub DescribeObject(CurrentObject)
   if not CurrentObject.Iskindof(cls_NamedObject) then exit sub
   output "Found "+CurrentObject.ClassName+" """+CurrentObject.Name+""", Created by "+CurrentObject.Creator+" On "+Cstr(CurrentObject.CreationDate)  
End Sub

'ceaate by runnerrunning

Private Sub TableSetComment(CurrentObject)
   if not CurrentObject.Iskindof(cls_Table) then exit sub
   'output "Found "+CurrentObject.ClassName+" """+CurrentObject.Name+""", Created by "+CurrentObject.Creator+" On "+Cstr(CurrentObject.CreationDate)  
      if not CurrentObject.isShortcut then
         CurrentObject.Comment = CurrentObject.name &vbCrLf& CurrentObject.Comment
         Dim col ' running column
         for each col in CurrentObject.columns
            col.Comment = col.name &vbCrLf& col.Comment
         next
      end if  
  
End Sub

//本人原創[email protected]轉載請保留本資訊
//http://blog.csdn.net/runnerrunning
//大家看了別忘了點右邊的廣告阿支援一下[email protected]

相關推薦

powerdesigner獲取pdm所有物件修改vbscript例子

powerdesigner是個好東西,設計工作中經常有些工作需要批量執行修改,採用其自帶的指令碼語言是個不錯的選則,下面這段指令碼把pdm中所有物件並修改,其中包含對多層package中物件的呼叫,很方便 Option ExplicitValidationMode = Tr

在彈框獲取foreach遍歷的id值,傳遞給地址欄(方法2)

ges 應該 我們 png 地址欄 each 獲取 賦值 有時 1.php有時候我們需要再彈框中獲取foreach中遍歷的數據(例如id),在彈框中點擊按鈕並傳遞給地址欄跳轉。那麽應該怎麽做呢。第二種方法。 2. 可以在彈框中給出一個input hidden 點擊按鈕彈窗時

request獲取post的json物件資料content-type=“text/plain”

/** *獲取 request 中用POST方式"Content-type"是 * "text/plain"傳送的 json資料 * @author: Simon * @date: 2017年8月6日 下午7:44:09 * @param request * @r

(轉)Oracle刪除使用者下所有物件的多種方法

方法1: drop user XXXX cascade; drop tablespace XXXX INCLUDING CONTENTS; 最省心的方法是級聯刪除 drop user XXXX cascade; 最後這個級聯特別有用(刪除使用者以及所有關聯的資料

ansys獲取變形後所有結點座標

ALLSEL                             !選擇所有 *CFOPEN,'R_OUT','TXT',             !定義輸出檔名 *GET,MINNUM,NODE,0,NUM,MIN         !取最小節點編號 *GET,ENUM,

java獲取當前系統時間,日期格式化輸出

 一. 獲取當前系統時間和日期並格式化輸出: import java.util.Date; import java.text.SimpleDateFormat; public class NowString {    public static void main(String[] args) {     

Oracle刪除使用者下所有物件的多種方法

Oracle刪除使用者下所有物件的方法未必人人都會,下面就為您介紹兩種常用的Oracle刪除使用者下所有物件的方法,希望對您學習Oracle刪除使用者方面能有所幫助。 方法1: drop user XXXX cascade; drop tablespace XXXX INCLUDING CONT

SpringMvc4獲取request、response物件的方法

springMVC4中獲取request和response物件有以下兩種簡單易用的方法: 1、在control層獲取 在control層中獲取HttpServletRequest和HttpServle

struts之Action獲取request、response物件的方法

1、訪問或新增request/session/application屬性 public String scope() throws Exception{     ActionContext ctx = ActionContext.getContext();    

Webservice獲取Servlet的相關物件

package net.spring.webservice2; import javax.annotation.Resource; import javax.jws.WebService; impo

Struts2獲取request,session,application物件

在傳統的Web開發中,經常會用到Servlet API中的HttpServletRequest、HttpSession和ServletContext。Struts 2框架讓我們可以直接訪問和設定action及模型物件的資料,這降低了對HttpServletRequest物件的

JS獲取session傳過來的值物件

對於把某一物件置於session範圍內,並在JSP頁面中提取session中放進去的物件的過程我想做J2EE開發的程式設計師應該都熟悉,很簡單就比如: Servlet程式碼: List<String> list=new ArrayList<String>(); list.add("

一般處理 程序獲取Session的值?

session對象 一般處理程序如果沒有引入using System.Web.SessionState;空間和IRequiresSessionState(或者IReadOnlySessionState)接口,那麽會出現session對象未將實例化的錯誤。一般處理 程序中獲取Session中的值?

Unity獲取Animator動畫片段的時長

sta bre 分享圖片 個數 watermark str size .get 開發 開發環境:Unity5.6.2 private Animator animator; public void GetLengthByName(string name) { floa

js獲取input所輸入的值

-c scrip tle utf-8 element 輸入 pla ont button <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>

graphql 在sub query 子查詢獲取header的token

以下內容基於graphql-yoga,它是基於apollo graphql server,並整合了 graphql-subscriptions/subscriptions-transport-ws: GraphQL subscriptions server graphql.js/gr

Java獲取資料庫的資料,獲取下拉列表的資料, 獲取省、市、區的資料,根據上一層去控制下一層

$(function() { //validateRule(); getDept(); $("select[name='deptNamee']").change(function() { var deptCode = $("select[name='deptN

如何在JSP獲取html多個複選框的內容

html中複選框的程式碼 愛好: 看書 <input type="checkbox" name="userHobby" id="checkbox" value="Read"/> <label for="checkbox"></label> 打球

js獲取url引數的方法

JS中獲取url中引數的方法(帶中文的也可以): function getQueryString(name) { var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i'); var r =

javascript獲取url的引數

function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search