zoukankan      html  css  js  c++  java
  • oracle_powerdesinger逆向工程 , PDM 文件 注释到name的完美解决方案 comment2name

    1、 从oracle 到 PDM文件  逆向工程中 ,需要注意 去掉“” ,这个百度下很多帖子,用于去掉引号 

    2、 从注释copy到name运行脚本会有个问题就是 ,有些注释太长,不美观 

    解决方案, vb脚本判断注释中是否含有 空格,如果含有去 以空格 spilt后的数组的第一个 为 name,  要求 写注释时 描述性文字 在字段名字后 要以空格 分开 例如

    code : flag 。库中 comment: 标志位 :1、有效】 【0 、无效】 默认【1】

    这样逆向工程出来的效果 

    3 运行脚本 如下 [运行方法 ,选中pdm文件中的表 ctrl+shift+X ,粘贴 复制 run ]

    commet2namePerfect.vbs

     
    '******************************************************************************
    '* File:     commet2namePerfect.vbs
    '* Title:    commet to Name Conversion
    '* Purpose:  To 
    '
    '* Model:    Physical Data Model for  Reverse Enginner
    '* Category: Naming Standards
    '* Author:   cphmvp
    '* Created:  Nov 22, 2013
    '* Mod By:   
    '* Modified: 
    '* Version:  1.0
    '* Comment:  
    '*  v1.0 - Must have Conversion Tables assigned as a model option
    '******************************************************************************
    
    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
    if len(tab.comment) <> 0 then
    tab.name = tab.comment
    end if
    if instr(tab.comment," ")>0 then 
    tab.name =split(tab.comment," ")(0) 
    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
    if instr(col.comment," ")>0 then 
    col.name =split(col.comment," ")(0) 
    end if
    On Error Resume Next
    next
    end if
    next
    end sub
    
    
    
     
  • 相关阅读:
    luogu1060开心的金明
    luogu1048采药
    uva1025城市里的间谍
    scoi刷题记录(2019/04/07)
    差分及树上差分的正确食用姿势(2019/2/21学习笔记)
    图论技巧(2019/1/28之一)
    考试反思(2019/1/26学习笔记)
    考试反思(2019/1/22)
    「一本通 5.2 例 5」皇宫看守
    「一本通 5.2 例 3」数字转换
  • 原文地址:https://www.cnblogs.com/cphmvp/p/3437258.html
Copyright © 2011-2022 走看看