zoukankan      html  css  js  c++  java
  • PowerDesigner之设置(3)——根据Name首字母生成Code

    SQL版本:2000

    PowerDesigner版本:16

    网上有不少介绍 PowerDesigner Name/Code自动调整 的文章,但基本如出一辙。

    这里,我就介绍下如何根据输入的Name根据首字母自动生成Code的方法,这也是在实际应用中最常用的。根据默认设置,Code内容与Name一致,假如输入中文Name名称,Code自动生成的也是中文的,这不是我们想要的,往往我们以中文首字母作为Code。

    下面就来介绍一下方法:

    1. 主菜单Tools->General Options->Dialog-> Name to Code mirroring,勾上(默认是勾上的)。
    2. 主菜单Tools->Model Options-> Naming Convention项(设置该项,会影响所有的子节点).勾选" Enable name/code conversions".

      然后在Name To Code标签页输入以下脚本即可.

      .vbscript(%Name%)
        ScriptResult=getpy(ScriptInputArray(0))
        function getpychar(char)
          tmp=65536+asc(char)
          if(tmp>=45217 and tmp<=45252) then
            getpychar= "A"
          elseif(tmp>=45253 and tmp<=45760) then
            getpychar= "B"
          elseif(tmp>=45761 and tmp<=46317) then
            getpychar= "C"
          elseif(tmp>=46318 and tmp<=46825) then
            getpychar= "D"
          elseif(tmp>=46826 and tmp<=47009) then
            getpychar= "E"
          elseif(tmp>=47010 and tmp<=47296) then
            getpychar= "F"
          elseif(tmp>=47297 and tmp<=47613) then
            getpychar= "G"
          elseif(tmp>=47614 and tmp<=48118) then
            getpychar= "H"
          elseif(tmp>=48119 and tmp<=49061) then
            getpychar= "J"
          elseif(tmp>=49062 and tmp<=49323) then
            getpychar= "K"
          elseif(tmp>=49324 and tmp<=49895) then
            getpychar= "L"
          elseif(tmp>=49896 and tmp<=50370) then
            getpychar= "M"
          elseif(tmp>=50371 and tmp<=50613) then
            getpychar= "N"
          elseif(tmp>=50614 and tmp<=50621) then
            getpychar= "O"
          elseif(tmp>=50622 and tmp<=50905) then
            getpychar= "P"
          elseif(tmp>=50906 and tmp<=51386) then
            getpychar= "Q"
          elseif(tmp>=51387 and tmp<=51445) then
            getpychar= "R"
          elseif(tmp>=51446 and tmp<=52217) then
            getpychar= "S"
          elseif(tmp>=52218 and tmp<=52697) then
            getpychar= "T"
          elseif(tmp>=52698 and tmp<=52979) then
            getpychar= "W"
          elseif(tmp>=52980 and tmp<=53640) then
            getpychar= "X"
          elseif(tmp>=53689 and tmp<=54480) then
            getpychar= "Y"
          elseif(tmp>=54481 and tmp<=62289) then
            getpychar= "Z"
          else '如果不是中文,则不处理
            getpychar=char 
          end if 
        end function 
      
        function getpy(str) 
          for i=1 to len(str) 
            getpy=getpy&getpychar(mid(str,i,1)) 
          next 
        end function 
      .endvbscript
      脚本

      然后点击确定,设置完成。(如果想更改原来的设置,勾上Apply Name To Code Conversion->To All Objects即可,这样就会把所有对象的Code根据Name首字母重新生成。)

    下面赶紧新建一列试试效果吧。

  • 相关阅读:
    JavaScript
    94.Binary Tree Inorder Traversal
    144.Binary Tree Preorder Traversal
    106.Construct Binary Tree from Inorder and Postorder Traversal
    105.Construct Binary Tree from Preorder and Inorder Traversal
    90.Subsets II
    78.Subsets
    83.Merge Sorted Array
    80.Remove Duplicates from Sorted Array II
    79.Word Search
  • 原文地址:https://www.cnblogs.com/liuke1987/p/3237977.html
Copyright © 2011-2022 走看看