PowerDesigner技巧集1

2024-06-06 11:18
文章标签 技巧 powerdesigner

本文主要是介绍PowerDesigner技巧集1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

http://blog.csdn.net/huang_xw/article/details/5722981#

 

 

  1. NameCode同步的问题

    PowerDesigner中,修改了某个字段的name,其code也跟着修改,这个问题很讨厌,因为一般来说,name是中文的,code是字段名。

    解决方法如下:

    1、选择Tools->GeneralOptions...菜单,出现General Options对话框。

    2、从Category中选择Dialog项。

    3、取消右边"Name to Code mirroring"复选框。如下图:

     

  2. 批量根据对象的name生成comment的脚本

    执行方法:PD12 à Open PDM à Tools à Execute Commands à Run Script

    这是网络上下载的脚本

       

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  tab.comment = tab.name  Dim col ' running column  for each col in tab.columns  col.comment= col.name  next  end if  next  Dim view 'running view  for each view in folder.Views  if not view.isShortcut then  view.comment = view.name  end if  next  ' go into the sub-packages  Dim f ' running folder  For Each f In folder.Packages  if not f.IsShortcut then  ProcessFolder f  end if  Next  
end sub  

 

 

但是这个脚本有点不足之处:就是将name的内容完全覆盖在comments上。有一些我写好的comments会被覆盖了,这样很不爽。因此,在原脚本的基础上,我判断comments的长度大于name,不覆盖。这样自己写的comments就会保留下来。脚本。在表、视图的基础了,增加用户、表空间、序列等数据库对象的注释。

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 not Len(tab.comment) > Len(tab.name) then  tab.comment = tab.name  end if  Dim col ' running column  for each col in tab.columns  if not Len(col.comment) > Len(col.name) then  col.comment= col.name  end if  next  end if  next  Dim view 'running view  for each view in folder.Views  if not view.isShortcut then  if not Len(view.comment) > Len(view.name) then  view.comment = view.name  end if  end if  next  Dim sequence 'running sequence  for each sequence in folder.Sequences  if not sequence.isShortcut then  if not Len(sequence.comment) > Len(sequence.name) then  sequence.comment = sequence.name  end if  end if  next  Dim myuser 'running user  for each myuser in folder.Users  if not myuser.isShortcut then  if not Len(myuser.comment) > Len(myuser.name) then  myuser.comment = myuser.name  end if  end if  next     Dim tablespace 'running tablespace  for each tablespace in folder.Tablespaces  if not tablespace.isShortcut then  if not Len(tablespace.comment) > Len(tablespace.name) then  tablespace.comment = tablespace.name  end if  end if  next     ' go into the sub-packages  Dim f ' running folder  For Each f In folder.Packages  if not f.IsShortcut then  ProcessFolder f  end if  Next  
end sub  

 

 

这篇关于PowerDesigner技巧集1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1035951

相关文章

怎么关闭Ubuntu无人值守升级? Ubuntu禁止自动更新的技巧

《怎么关闭Ubuntu无人值守升级?Ubuntu禁止自动更新的技巧》UbuntuLinux系统禁止自动更新的时候,提示“无人值守升级在关机期间,请不要关闭计算机进程”,该怎么解决这个问题?详细请看... 本教程教你如何处理无人值守的升级,即 Ubuntu linux 的自动系统更新。来源:https://

将Python应用部署到生产环境的小技巧分享

《将Python应用部署到生产环境的小技巧分享》文章主要讲述了在将Python应用程序部署到生产环境之前,需要进行的准备工作和最佳实践,包括心态调整、代码审查、测试覆盖率提升、配置文件优化、日志记录完... 目录部署前夜:从开发到生产的心理准备与检查清单环境搭建:打造稳固的应用运行平台自动化流水线:让部署像

Java 枚举的常用技巧汇总

《Java枚举的常用技巧汇总》在Java中,枚举类型是一种特殊的数据类型,允许定义一组固定的常量,默认情况下,toString方法返回枚举常量的名称,本文提供了一个完整的代码示例,展示了如何在Jav... 目录一、枚举的基本概念1. 什么是枚举?2. 基本枚举示例3. 枚举的优势二、枚举的高级用法1. 枚举

不删数据还能合并磁盘? 让电脑C盘D盘合并并保留数据的技巧

《不删数据还能合并磁盘?让电脑C盘D盘合并并保留数据的技巧》在Windows操作系统中,合并C盘和D盘是一个相对复杂的任务,尤其是当你不希望删除其中的数据时,幸运的是,有几种方法可以实现这一目标且在... 在电脑生产时,制造商常为C盘分配较小的磁盘空间,以确保软件在运行过程中不会出现磁盘空间不足的问题。但在

Python中列表的高级索引技巧分享

《Python中列表的高级索引技巧分享》列表是Python中最常用的数据结构之一,它允许你存储多个元素,并且可以通过索引来访问这些元素,本文将带你深入了解Python列表的高级索引技巧,希望对... 目录1.基本索引2.切片3.负数索引切片4.步长5.多维列表6.列表解析7.切片赋值8.删除元素9.反转列表

Python中处理NaN值的技巧分享

《Python中处理NaN值的技巧分享》在数据科学和数据分析领域,NaN(NotaNumber)是一个常见的概念,它表示一个缺失或未定义的数值,在Python中,尤其是在使用pandas库处理数据时,... 目录NaN 值的来源和影响使用 pandas 的 isna()和 isnull()函数直接比较 Na

Oracle数据库执行计划的查看与分析技巧

《Oracle数据库执行计划的查看与分析技巧》在Oracle数据库中,执行计划能够帮助我们深入了解SQL语句在数据库内部的执行细节,进而优化查询性能、提升系统效率,执行计划是Oracle数据库优化器为... 目录一、什么是执行计划二、查看执行计划的方法(一)使用 EXPLAIN PLAN 命令(二)通过 S

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

购买磨轮平衡机时应该注意什么问题和技巧

在购买磨轮平衡机时,您应该注意以下几个关键点: 平衡精度 平衡精度是衡量平衡机性能的核心指标,直接影响到不平衡量的检测与校准的准确性,从而决定磨轮的振动和噪声水平。高精度的平衡机能显著减少振动和噪声,提高磨削加工的精度。 转速范围 宽广的转速范围意味着平衡机能够处理更多种类的磨轮,适应不同的工作条件和规格要求。 振动监测能力 振动监测能力是评估平衡机性能的重要因素。通过传感器实时监

滚雪球学Java(87):Java事务处理:JDBC的ACID属性与实战技巧!真有两下子!

咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java SE啦,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好习惯,别被干货淹没了哦~ 🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!! 环境说明:Windows 10