查看: 10993|回复: 28
收起左侧

如何用Vitesse调用tools_data_management_attributes()功能项

[复制链接]
发表于 2007-10-17 22:02 | 显示全部楼层 |阅读模式 来自: 中国广东佛山
如何用Vitesse调用tools_data_management_attributes()功能项?

问题:

   为用户开发一个参数化建模程序,用户要求将structrue参数写入模型中,研究一下structrue模型,发现有两个属性(struct_assembly, set_standard_desc), struct_assembly已存放了装配计划, 只好用set_standard_desc, 但是TRIBON公司太小气, 只40个字符宽度,不够用,中文经常被截断,考虑到使用用户自定义属性(User-defined attributes),因为每条船要做初始化,用户嫌麻烦,不同意.(在程序开发时,数据原来是存放在外部的数据库的),由于模型与数据难以保持同步,故用户要求改正,双保险,数据写到外部数据库的时,也要将数据写入模型,万一外部数据丢失,可以直接从模型抽取数据。为了满足用户的要求,现在只好在TRIBON中找其他属性,(Miscellaneous TDM 的Description属性),该属性不错,有2000个字符宽度,存放参数绰绰有余,立即将程序修改,将参数存入该属性中,运行成功,打开tools_data_management_attributes,看到所存入参数,也可以将之提取,很开心。关闭系统,再启动系统,调入该模型,再看此属性,为空值,惊讶万分,百思不得其解,看TRIBON帮助文档,才况然大悟,原来structrue与其TDM属性是分离的, structrue存盘,并没有将TDM属性存盘, TDM属性值只是存放在内存中,关闭系统,数据即丢失,仔细再看TRIBON关于TDM描述的资料,资料描述如下:

2.11 Vitesse and Data Extraction
The TDM attributes can be accessed from Vitesse by using Data Extraction. The Data Extraction keywords for the TDM attributes are documented in Tribon Developer's Toolkit - Data Extraction.
Vitesse functions to update the TDM attributes will be available in the next Tribon release.

资料上说: 利用Vitesse程序更新TDM属性,要等到TRIBON的下一个版本,是M4吗?
看来是遥遥无期了。

我把此情况向用户反映,用户表示,不用Vitesse程序更新TDM属性也行,人工更新也行,但是要求系统在自动创建完Structure后,要自动打开Miscellaneous TDM属性操作界面图(4),用户按“确定”按钮即可,只好再去研究研究了,找到tools_data_management_attributes()的ID号: 33982, 这个也是TRIBON的内部功能号,摸索了一个下午,都不知怎么调用它,TRIBON好象没有提供这方面的功能,比如CALL,EXEC等内部命令调用功能,做到此步有点骑虎难下了,搞二次开发开发有很多无奈,技术掌握在别人手中,如有哪位大侠知道,请多多指教!

[ 本帖最后由 SkyLineGuest 于 2007-10-17 22:12 编辑 ]
回复

使用道具 举报

龙船学院
 楼主| 发表于 2007-10-17 22:08 | 显示全部楼层 来自: 中国广东佛山

附图

附图1、2、3、4
图1.JPG
图2.JPG
图3.JPG
图4.JPG
回复 支持 反对

使用道具 举报

发表于 2007-10-18 18:45 | 显示全部楼层 来自: 中国辽宁大连
我建议还是使用User-defined attributes。因为可以存取,所以在模型建立后可以将信息显示出来,如果用户更改信息,可以保存回属性中。
User-defined attributes生成的模板可以导入到新工程中,初始化设置也不麻烦。

[ 本帖最后由 yang827 于 2007-10-18 18:47 编辑 ]
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-19 22:14 | 显示全部楼层 来自: 中国广东佛山

如何导入User-defined attributes模板

如何导入User-defined attributes模板

可以考虑使用用户自定义属性(User-defined attributes),用户又提出如下问题:

自定义属性模板最好用Vitesse程序创建,挂在菜单上,如果不能用Vitesse程序创建,必须找到一种快捷方法:将现在船的模板导入到在造的船舶工程中,因为已经有10几条船在设计之中,不可能每条船都要人工去建立模板,添加字段。

所以现在请教楼上的大侠如下问题:

创建User-defined attribute模板除了利用TRIBON系统提供tool performance kit program 工具来创建之外,可否利用Vitesse程序创建或者是用宏文件来创建。

如果均没有上述方法,可否从其他已建模板的工程中拷贝某个文件到需要建立模板的工程中,如果是新建工程,拷贝其他工程的数据库,那当然是可以的。

今天试用一下User-defined attribute的功能,发现User-defined attribute存在如下两个问题:

1.如果某个User-defined attribute模板没有创建,Vitesse程序在运行时,将此属性绑定给模型或给模型属性赋值,程序就会出错。

2.在将属性绑定给模型后,由于某种原因或是保存User-defined attribute属性不成功,则此模型将被锁住,这对用户来说不是一件好事,要去数据库解锁,好在这种情况不会经常发生。

请问楼上的仁兄,你是怎么将User-defined attributes生成的模板可以导入到其他工程中,和进行初始化设置的?
回复 支持 反对

使用道具 举报

发表于 2007-10-20 08:27 | 显示全部楼层 来自: 中国辽宁大连
模板使用Toolkit Preferences手工建立就可以了,用Vitesse也可以建立,看用户手册3.3.4 Attribute Functions部分。设置好的模板保存在SB_SETTINGS_DB库中,注意下面文字的红色部分。

Recreate template database
This function must be used when attribute template objects have been copied from another project.
To copy all attribute templates from one project into another use a Tribon Database Utility and copy all objects named TEMPLATE-nnnnn from the settings database in the other project into the SB_SETTINGS_DB database. After the copy, recreate the template database using this function.


回复 支持 反对

使用道具 举报

发表于 2007-10-20 08:34 | 显示全部楼层 来自: 中国辽宁大连
附件是我写的存取Attribute的类,用Python的字典传入、输出数据,这样做不必关心属性的数据类型,是比较Pythonic的做法。你可以参考一下。
自省部分可以看到类的使用方法。

SodrAttribute.rar (673 Bytes, 下载次数: 159)

[ 本帖最后由 yang827 于 2007-10-20 08:35 编辑 ]
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-20 15:34 | 显示全部楼层 来自: 中国广东广州

感谢

今天加班用User-defined attribute的功能给建模程序编制了另外一个版本, 发现只要将User-defined attribute模板创建好之后, 模型的绑定及属性存取操作自如,用的很爽的。不像使用tools_data_management_attributes属性一样,要用户事后处理,降低了系统的可靠性,这是做系统软件开发的大忌。在没有用User-defined attribute功能开发该程序时,由于没有内部调用指令,我是这样给用户处理的:
1. 将部分数据存入set_standard_desc属性,如果用户忘记将Miscellaneous TDM属性存盘,则系统将取自该属性数据。

2. 成功创建模型后,将tools_data_management_attributes()功能项设为快捷键F5,并提示用户按F5击活该功能,选取模型,按<按确定>按钮存盘

我始终觉得上述使用方法给用户带来不便,系统的灵活性和可靠性降低,为了追求系统的完美性,所以在你的帮助了,我特地用User-defined attribute功能重新写了一个新版程序,并且试用效果很好,数据存取自如,不用用户干预费心,非常感谢你的帮助,下星期一,我会将把新版程序发给用户试用,究竟选用哪个版本由来用户定夺,毕竟用户是上帝。

我在使用Toolkit Preferences手工建立模板时,经过我观察发现如下三个文件有变化:

在\db目录下面:
settings.dat
settings.eob
settings.idx
经研究确定你所说的数据库SB_SETTINGS_DB就是对应此三个文件

再次感谢!有机会多多交流
回复 支持 反对

使用道具 举报

发表于 2008-7-19 23:45 | 显示全部楼层 来自: 中国江苏扬州
真是高人呀多多学学
回复 支持 反对

使用道具 举报

发表于 2008-7-19 23:46 | 显示全部楼层 来自: 中国江苏扬州
真是高人呀多多学学
回复 支持 反对

使用道具 举报

发表于 2008-7-27 15:19 | 显示全部楼层 来自: 中国江苏南通
学习一下
回复 支持 反对

使用道具 举报

发表于 2008-11-28 22:03 | 显示全部楼层 来自: 中国江苏南通
顶楼主
回复 支持 反对

使用道具 举报

发表于 2008-11-29 00:10 | 显示全部楼层 来自: 中国福建厦门
真是高人呀多多学学
回复 支持 反对

使用道具 举报

发表于 2008-11-29 18:10 | 显示全部楼层 来自: 中国江苏扬州
好东东呀
回复 支持 反对

使用道具 举报

发表于 2008-11-29 18:11 | 显示全部楼层 来自: 中国江苏扬州
再顶一下
回复 支持 反对

使用道具 举报

发表于 2009-4-4 20:21 | 显示全部楼层 来自: 中国上海
aaaaaaaaaaaaaaaaaaaaaaa
回复 支持 反对

使用道具 举报

发表于 2009-4-4 20:22 | 显示全部楼层 来自: 中国上海
aaaaaaaaaaaaaaaaaaaa
回复 支持 反对

使用道具 举报

发表于 2009-7-8 13:08 | 显示全部楼层 来自: 亚太地区
TRIBON M3支持用VITESSE写入TDM信息啊,建议还是写在Alias,description和remark中。不必写在User-defined attributes中,用User-defined attributes毕竟比较麻烦,多了一个建模板的步骤,而且写起来也比较麻烦一些,数据看起来也不方便。
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2009-7-8 20:02 | 显示全部楼层 来自: 中国上海
挣点钱下载下来学习
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2009-7-8 20:04 | 显示全部楼层 来自: 中国上海
好东西,值得下载
回复 支持 反对

使用道具 举报

发表于 2009-7-8 22:07 | 显示全部楼层 来自: 中国江苏南通
楼主绝对牛人啊
多多学学
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|标签|免责声明|龙船社区

GMT+8, 2024-11-14 15:38

Powered by Imarine

Copyright © 2006, 龙船社区

快速回复 返回顶部 返回列表