佳工机电网 在线工博会 我的佳工网 手机版 English
关键字  
  选择展区 >>
您的位置: 首页 > CAD/CAM/PDM/PLM展区 > PDM/PLM/CAPP展厅 > 产品库 > 技术论文 > 正文 产品库 会展 人才 帮助 | 注册 登录  
PDM/PLM/CAPP
 按行业筛选
 按产品筛选
查看本类全部文章
e展厅 产品库 最新动态 技术文章 企业目录 资料下载 视频/样本 反馈/论坛
  技术应用 | 基础知识 | 外刊文摘 | 业内专家 | 文章点评 投稿 发表科技文章 
Teamcenter中清单汇总功能的二次功能实现
作者:叶成刚 钱斌 陶杰
欢迎访问e展厅
展厅
3
PDM/PLM/CAPP展厅
图文档管理系统, CAPP...
1 前言

美国UGS公司的Teamcenter Engineering是一套成熟的商品化PDM软件系统,该系统采用了C/S结构,其客户端及服务器端均能够进行二次开发以满足用户的特殊需求。其中,客户端是用JAVA语言开发的用户界面层,同样它的二次开发也使用JAVA语言;服务器端的二次开发则要利用ITK工具包及C语言,ITK实质上就是一套经过封装的C语言程序集[1]。由于Teamcenter Engineering版本的升级可能导致所开发程序需要改写并重新编译,所以二次开发的原则是尽可能利用Teamcenter Engineering已有的功能,减少二次开发量。基于此,二次开发的重心应放在客户端,而服务器端的已有功能则应尽量利用。

我公司在实施Teamcenter Engineering之前,曾应用金蝶的K3系统管理零件编码(零件模型或图纸数据直接置于共享服务器上)。实施Teamcenter Engineering之后,发现新系统中找不到K3所具有的清单汇总功能,即对整机BOM或多个组件BOM按照零件编码进行单层或所有层的汇总显示方式。而在标准机基础上做客户化设计人员在做差异BOM校对时,对这一功能尤为倚重。另外,Teamcenter Engineering在BOM输出或打印方面,均没有非常合适的格式。

所以,尽管Teamcenter Engineering中PSE程序处理BOM方面功能非常强大,但上述特殊需求的欠缺引起了少部分设计员应用中的抵触情绪,也影响了系统推广。为此,我们力图通过客户端二次开发的方法来解决这些特定需求,本文对这些功能的开发过程进行了详细阐述。本文的开发基于我公司目前应用的Teamcenter Engineering V9.1版本,对其它版本的开发同样具有借鉴意义。

2 客户端开发环境搭建

2.1 注册程序(Registry)

Teamcenter Engineering客户端(Portal)的二次开发分为注册程序与开发程序两个阶段。对Portal开发而言,注册程序是一个至关重要的环节。所谓注册程序,就是要在Teamcenter Engineering的程序组内增添程序入口,用于启动新开发的程序。不论是二次开发,还是Portal自身的原开发,都是通过这一注册机制调用属性文件来定义应用程序的实现类(classes)、启动图标、本地化标题、搜索优先权等。

注册程序的具体实现步骤如下:

① 运行实用程序(Utilities)组内的应用程序向导(Application Wizard),然后输入应用程序名称cllctbom;

② 通过点击选择的方法确定将程序装入IMAN组,即,使客户程序的按钮加入到该组(如有需要,也可在portal_user.properties中增加新组);

③ 输入客户程序的包名“com.haitian.technology.research.yechar”,系统将在选定目录下自动建立与包名对应的子目录,并在该子目录下自动生成六个空壳源文件:cllctbom.properties、cllctbom_user.properties、cllctbomApp.java、cllctbomAppMenuBar.java、cllctbomAppPanel.java、cllctbomAppToolBar.java。这些源文件正是后续开发程序阶段的起点,其中前两个文件是程序注册文件,在这两个文件内容发生冲突情况下,cllctbom_user.properties拥有更高的优先权;后四个应用类所处的层次及调用关系如下图1所示。


图1. 二次开发程序类所处层次与调用关系示意图

④ 上述过程完毕后,系统会在portal_user.properties中自动添加新程序的名称(TITLE)、图标(ICON)、会话(SESSION)等界面信息,此时可根据需要进行人工修改,如将名称改成中文“清单汇总”等。

2.2 开发工具及环境搭建

经过注册之后的新程序只是一个框架,并不能执行任何功能。程序开发阶段就是对前述空壳源文件进行代码编写、调试、编译的过程。所需要用的工具就是Java语言的编译环境,包括JDK或Jbuilder这样的JAVA集成开发环境(IDE)等。本文直接运用JDK1.3.1进行开发。

1)环境变量设置

因为没有使用IDE工具,所以要先设置一些环境变量。如在命令行环境下运行:set JAVA_HOME=d:\jdk1.3.1_08,用以表达JDK的安装路径。同样,PORTAL_ROOT定义成Teamcenter Engineering Portal 的安装路径等等。

2)用%JAVA_HOME%\bin\javac命令编译客户程序。

3)用%JAVA_HOME%\bin\jar命令打包Java类、图标文件、属性文件等。

4)编辑portal.bat文件,将客户程序(如BomCollect.jar)包含到portal.jar之前,如下:

Set JAVA_COMMAND_LINE= %JAVA_COMMAND% %JAVA_HEAP_SIZE% -classpath "%IPR%;… %IPR%\BomCollect.jar; … %IPR%\portal.jar; … %CLASSPATH%"

运行Teamcenter Engineering Portal后,就可调用新的“请单汇总”程序。

3 清单汇总程序开发

3.1 界面设计

由于清单汇总涉及到父物料与子物料的多行并存显示,所以采用窗体分割方式加以总体处理,整个程序界面如图2所示。其主要特点如下:

① 为满足我公司的实际需要,全新设计表格模式HT_PartTableModel,用以表达零件属性;

② 用JComboBox 切换“单层汇总”和“所有层汇总”两种模式,方便地实现了单BOM的所有层汇总、多BOM的单层汇总、多BOM的所有层汇总;

③ 用JTabbedPane表达“子物料清单”和“汇总信息”两部分,其中“汇总信息”一屏用以显示差异BOM与母BOM汇总后的回收子物料(数量为负的子物料)、零子物料(数量为0的子物料)的统计信息和具体零件编码,免除了设计人员的人工校对。


图2. 清单汇总功能的程序界面及应用实例

3.2 系统流程

系统运行后的整个流程如下图3所示:其中“物料类型”一项是我公司的自定义零件属性之一,用“普通”来表达需要进出仓的实际零部件,“虚项”表达只用于指导装配的虚拟组件(无须进出仓)。所以在所有层汇总过程中,“虚项”类型的零件本身不被汇总,而它下面挂的子物料则要被搜索出来加以汇总,这一过程叠代进行,直至最底层全为“普通”类型为止。


图3. 系统流程图

3.3 辅助功能开发

在实际应用中,往往需要将BOM表输出或加以打印。然而,Teamcenter Engineering中PSE应用程序自带的HTML、文本或图形等几种输出或打印方式,效果均不理想。所以在“清单汇总”功能中,开发了拷贝BOM行(Excel格式)功能,即:点击该功能按钮后,整个BOM按照特定格式进入系列剪贴板,可以被粘贴到Excel文件或其它文本中。同时也开发了“打印BOM”功能,可以将BOM按照“所见即所得”方式打印出来。


图4. BOM输出等辅助功能的调用

另外,针对单个子物料的属性输出,还开发了“点击即拷贝”功能。也就是说,单击某一物料的“物料编码”、“物料名称”等各属性项,就可以将相应表格中的数据直接粘贴到其它文档中;单击零件的“序号” 项,可以将相应零件所有的属性项粘贴到其它文档中。上述辅助功能的开发为提高工作效率、避免文字输入出错带来了很大的便利。

4 结论

本文通过对Teamcenter Engineering V9.1系统的客户端进行二次开发,实现了清单汇总及一些辅助功能。这些功能在我公司均已得到一年多的实际应用,满足了设计人员的特殊需求,为PDM系统在公司设计部门的全面推广铺平了道路;同时也是对Teamcenter Engineering原有功能的一个有力补充。文中提供的实施思路和方法已得到实践验证,能为其它用户进行客户化开发时所借鉴。(end)
文章内容仅供参考 (投稿) (如果您是本文作者,请点击此处) (8/20/2006)
查看更多PDM/PLM/CAPP相关文章: more
·最佳PLM战略:寻求竞争差异化的最大回报 newmaker (8/22/2006)
·CAPPWorks:SolidWorks用户群解决方案 newmaker (8/22/2006)
·CAPP在多批次小批量产品生产中的作用 天津大学 高焕明 (8/21/2006)
·变革已经开始 PDM技术整合功献未来 newmaker (8/19/2006)
·基于Web的CAPP集成系统的研制 张滢 梁万勤 杨者青 (8/18/2006)
·PLM系统如何才能成功实施 newmaker (8/16/2006)
·面向CAD/CAPP集成的特征造型技术研究 蔡长韬 殷国富 胡晓兵 倪亚辉 (8/14/2006)
·面向产品的CAPP方法论及其智能化概念体系 张振明 黄乃康 桓永兴 孔宪光 (8/13/2006)
·UGS的PLM解决方案在注塑模具行业的应用 冯小平 张森 (8/13/2006)
·影响PDM项目成功的几个关注点 (8/6/2006)
查看相关文章目录:
·CAD/CAM/PDM/PLM展区 > PDM/PLM/CAPP展厅 > PDM/PLM/CAPP文章
文章点评 查看全部点评 投稿 进入贴吧


对 PDM/PLM/CAPP 有何见解?请到 PDM/PLM/CAPP论坛 畅所欲言吧!


网站简介 | 企业会员服务 | 广告服务 | 服务条款 | English | Showsbee | 会员登录  
© 1999-2024 newmaker.com. 佳工机电网·嘉工科技