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
    
    
    
     
  • 相关阅读:
    apache多端口映射
    mark
    一些注册表值
    jsp URL中文处理的几种方式
    【引用】雨林木风Ghost XP SP3系统
    CentOS常用命令
    查看ie8临时文件夹
    卡塔兰数
    大数问题
    不会做的题目
  • 原文地址:https://www.cnblogs.com/cphmvp/p/3437258.html
Copyright © 2011-2022 走看看