PowerDesigner可以将PDM的NAME值写入数据库的PBCATCOL表中相应的几个字段,但我现在通过PD的Resever Engineer功能将数据库的表反向到PDM中,怎样才能使当时生成在表PBCATCOL中的相应NAME值同时反向到PDM的NAME(我想要是的中文)。
先谢了!
回复人:不愿放弃(byfq)2004-12-2 12:36:37
PowerDesigner数据库系统分析设计与应用 姜江著 一书中写有,有点复杂,记不清楚了,你可以找找看看
回复人:阿飞(nbnasom)2004-12-3 14:37:37
学习ING
回复人:【最后一滴水】(am2000)2004-12-4 22:33:52
Tools-PowerBuilder-Reverse Extended Attributes
回复人:【最后一滴水】(am2000)2004-12-4 23:33:48
我也碰到这个问题。
我现已通过逆向工程将数据库中的LABEL、HEADER、COMMENT逆向到PDM的Extended attributes中了。
但我不知道如何将Label赋值到NAME.
回复人:【最后一滴水】(am2000)2004-12-4 23:45:44
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 ls_NameTemp
Dim Tab 'running table
for each Tab in folder.tables
if not tab.isShortcut then
'tab.code = tab.name
if instr(Tab.name," ") > 0 then
ls_NameTemp = Mid(Tab.name,1,instr(Tab.name," ") - 1 )
else
if instr(Tab.name," ") > 0 then
ls_NameTemp = Mid(Tab.name,1,instr(Tab.name," ") - 1 )
else
ls_NameTemp = Tab.name
end if
end if
if len(ls_NameTemp) < 8 then
Tab.name = ls_NameTemp + Space( 8 - len(ls_NameTemp) ) + Tab.code
else
Tab.name = ls_NameTemp + Space( 2 ) + Tab.code
'考虑名称相同出现的异常
end if
On Error Resume Next
Dim col ' running column
for each col in tab.columns
'col.code= col.name
if instr(col.name," ") > 0 then
ls_NameTemp = Mid(col.name,1,instr(col.name," ") - 1 )
else
if instr(col.name," ") > 0 then
ls_NameTemp = Mid(col.name,1,instr(col.name," ") - 1 )
else
ls_NameTemp = col.name
end if
end if
if len(ls_NameTemp) < 6 then
'col.name = ls_NameTemp + Space( (8 - len(ls_NameTemp)) * 2 ) + col.code
col.name = ls_NameTemp + left( " ",6 - len(ls_NameTemp) ) + col.code
else
'col.name = ls_NameTemp + Space(2) + col.code
col.name = ls_NameTemp + left( " ",1) + col.code
'考虑名称相同出现的异常
end if
On Error Resume Next
next
end if
next
Dim view 'running view
for each view in folder.Views
if not view.isShortcut then
'view.code = view.name
if instr(view.name," ") > 0 then
ls_NameTemp = Mid(view.name,1,instr(view.name," ") - 1 )
else
if instr(view.name," ") > 0 then
ls_NameTemp = Mid(view.name,1,instr(view.name," ") - 1 )
else
ls_NameTemp = view.name
end if
end if
if len(ls_NameTemp) < 8 then
view.name = ls_NameTemp + Space( 8 - len(ls_NameTemp) ) + view.code
else
view.name = ls_NameTemp + Space( 2 ) + view.code
'考虑名称相同出现的异常
end if
On Error Resume Next
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
分享到:
相关推荐
PBCatCol系统表用来记录数据库表中的列信息。字段包括: - **pbt_cmnt**:表注释 - **pbc_tid**:SQL Server Object ID,用于唯一标识列所在的表 - **pbc_ownr**:列所在表的所有者 - **pbc_cnam**:列名 - **pbc_...
本文将基于"Pbc.rar_pbc_pull buffer_通信解析"的主题,深入探讨PBC(Protocol Buffer Compiler)库以及其在实现pull buffer通信解析中的应用。 PBC,全称Protocol Buffer Compiler,是由Google开发的一种序列化...
标题中的“pbc.rar_matlab PBC_pbc”暗示了这是一个使用MATLAB语言解决PBC(Periodic Boundary Conditions,周期性边界条件)问题的压缩包。PBC在各种科学计算和工程模拟中都有广泛应用,特别是在分子动力学、电磁学...
上述SQL语句是将 `input_type` 表中的每个字段信息插入到 `pbcatcol` 表中,这些信息主要用于描述字段的位置和其他属性,同样不直接影响业务逻辑。 ##### 2.2 表 `input_ware` - **表名**:“input_ware” - **...
- `pbc_field_get()` 和 `pbc_field_set()`:获取或设置protobuf消息中的字段值。 - `pbc_writer_finish()` 和 `pbc_reader_close()`:完成序列化或反序列化后,释放相关资源。 ### 示例代码 ```c #include "pbc.h...
初始化元素是指创建一个新的群元素,赋值是给已存在的元素赋予新的值,而转换则是将元素转换到另一个循环群中。元素运算涉及加法、乘法等基本代数操作。比较运算则是用于判断两个元素是否相等。 此外,PBC库还提供...
本文提出的方法通过利用系统表自动判断表与表之间的关联性,并能将多个关联表组合成一张新表,支持多字段、多条件的组合查询。 - 首先,使用`pbcatcol`表在数据窗口中显示所有用户表的表名,供用户选择。 - 用户在...
周期边界条件(PBC,Periodic Boundary Conditions)是模拟物理系统,特别是在计算机科学、物理学、化学和工程领域中的一种重要概念。它在处理无限大或近似无限大的系统时特别有用,例如晶体结构、流体动力学问题...
在计算机模拟和数值分析中,RVE(Representative Volume Element)模型是一种常用的方法,用于研究材料的宏观性能。RVE模型通常应用于多尺度力学问题,尤其是复合材料或非均匀材料的分析,它能够通过微观结构预测...
**cpp-pbc:一个协议缓冲区的C语言库** cpp-pbc是一个专为C语言设计的协议缓冲区库,它的目标是提供一种高效、轻量级的方式来处理结构化数据的序列化和反序列化。协议缓冲区(Protocol Buffers)是由Google开发的一...
在IT领域,尤其是在材料科学和工程计算中,RVE(Representative Volume Element)是一种重要的概念,它代表了材料微观结构的一个统计等效单元。RVE分析通常涉及到微尺度的数值模拟,以预测宏观材料性能。在这个场景...
这个程序是利用多点约束,给单胞施加周期性边界的。
该程序是学者编写的一个插件,直接将该插件放在临时文件中即可使用,针对简单单胞施加周期性边界。
标题中的“pbc.rar_Over_matlab PBC”暗示了这是一个使用MATLAB编程实现的位置基交叉(Position Based Crossover,PBC)算法的程序。在遗传算法(Genetic Algorithm, GA)中,位置基交叉是一种常用的操作,用于生成...
研发类员工绩效考核表(PBC)考核项
华为研发类员工绩效考核表(pbc)考核项
"sig_pbc存储"这个标题很可能指的是一个与信号处理或者密码学相关的项目,因为"sig"通常在这些领域中代表“信号”或“签名”。在这个上下文中,"pbc"可能指的是“椭圆曲线密码学”中的“Pairing-Based Cryptography...
protobuf提供了一种语言中立、平台中立的方式来定义数据结构,可以方便地在各种数据交换环境中使用,如网络通信、数据库存储等。在Windows环境下,我们常常需要将.proto文件转换为.pb文件,以便于程序处理。"云风pbc...
华为pbc绩效考核表.xls
2. 将"PbcLib"文件夹添加到项目的库目录中,这样编译器可以在链接阶段找到库文件。 3. 在项目设置中,添加Pbc库的头文件路径,以便编译器可以找到相关的头文件。 4. 链接Pbc库,确保在链接器设置中包含"Pbc.lib"或者...