zoukankan      html  css  js  c++  java
  • 【原创】PowerDesigner Name/Code自动调整 的正确版本。

    网上关于PD里面Code/Name自动调整的文章中转载的最多是一篇《PowerDesigner Name/Code自动调整》,可文章里面的脚本是有问题的,很多人应该都试过,无法使用。此文章转载的很多,百度直接搜索完整的文章标题有21,200条记录!不知道为啥没人指出其问题,让这个并不是正确的代码在网上流行这么多年。

    原文如下:

    PowerDesigner Name/Code自动调整
    大家都清楚在用PowerDesigner的时候,当你输入Name的时候Code是会自动帮你按照Name的内容填上的.
    这个功能虽然好用,但是我需要在Name这一项加上一个中文的注释,这个时候怎么办呢?
    下面两个例子,相信对你相当有用.
    Examples

    · Script 
    1
    .set_value(_First, 
    truenew
    .foreach_part(%Name%, 
    "'#'"
    .if (%_First%) 
    .delete(%CurrentPart%) 
    .set_value(_First, 
    false, update) 
    .else 
    %CurrentPart% 
    .endif 
    .next
    这个例子是把Name内容的#号后边的内容当作Code.
    如:在Name列输入    用户名#user_name  则在Code列自动会变成   user_name

    · Script 
    2
    .set_value(_First, 
    truenew
    .foreach_part(%Name%, 
    "'#'"
    .if (%_First%) 
    %CurrentPart% 
    .set_value(_First, 
    false, update) 
    .endif 
    .next
    这个例子是把Name内容的#号前边的内容当作Code.
    如:在Name列输入    user_name#用户名  则在Code列自动会变成   user_name

    具体操作方法是:
    1、打开powerDesigner菜单的Tools->Model Options....->Naming Convention
    2、选中Name,并勾选Enable name/code conversions.
    3、选择Name To Code,把上面任意一个例子的代码(红色部分)贴到conversion script内容框中即可。

    注:用这个script的时候,必须先设置,才会转换的。
    如果你已经设计好了,再设置是不会对之前的东西改变的。

    这个文章里面的第二段式正确的,第一段语法有问题。
    .delete(%CurrentPart%)这句语法不对。少了结束语法。修改成下面的代码就可以了。
    .delete(%CurrentPart%)
    .enddelete
    其实我上面的语法也不是很标准。再严谨一点是:
    .delete(%CurrentPart%)
    %CurrentPart%
    .enddelete

    最后整理一下正确的是:

    脚本1:

    .set_value(_First, true, new)
    .foreach_part(%Name%, "'#'")
    .if (%_First%)
    .delete(%CurrentPart%)

    .enddelete
    .set_value(_First, false, update)
    .else
    %CurrentPart%
    .endif
    .next

    这个例子是把Name内容的#号后边的内容当作Code.

     

    脚本2:

    .set_value(_First, true, new)
    .foreach_part(%Name%, "'#'")
    .if (%_First%)
    %CurrentPart%
    .set_value(_First, false, update)
    .endif
    .next

     这个例子是把Name内容的#号前边的内容当作Code.

     另外在使用这个功能时候最好把name/code自动复制功能打开。Tool——Genneral——Options Dialog——Name to Code mirroring.默认就是打开的。

  • 相关阅读:
    容器(四)实现容器的底层技术【25】
    容器(四)限制容器的 Block IO【24】
    容器(四)限制容器对CPU的使用【23】
    容器(四)限制容器对内存的使用【22】
    容器(四)一张图搞懂容器所有操作【21】
    容器(四)容器常用操作【20】
    容器(四)运行容器的最佳实践【19】
    容器(四)进入容器的方法【18】
    容器(四) 运行容器方法【17】
    51单片机学习笔记
  • 原文地址:https://www.cnblogs.com/edzjx/p/1831914.html
Copyright © 2011-2022 走看看