Windchill常用开发大全
- 格式:ppt
- 大小:4.22 MB
- 文档页数:12
windchill开发流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!1. 需求分析。
与业务部门沟通,了解他们的需求和期望。
确定系统的功能和特性。
Windchill 常用命令和客制化windchill wt.load.util.CSV2XML -input -output -root d:\moduleswindchill markets.CSV2XML -input -output -rootwindchill wt.load.util.CSV2XML -root e:\windchill wt.load.LoadFromFile -u[user name] -p[password] -d d:\modules\users.xml -CONT_PATH /Container=Software/wt.pdmlink.PDMLinkProduct= windchill wt.load.LoadFromFile -u[user name] -p[password] -d d:\modules\users.xml -CONT_PATH /Container=Software/wt.inf.library.WTLibrary=windchill wt.load.LoadFromFile -u wcadmin -p wcadmin -d e:\LoadDoc.xml -CONT_PATH /Container=ptc/wt.pdmlink.PDMLinkProduct=路由器_P1windchill wt.load.LoadFromFile -u wcadmin -p wcadmin -d E:\WMDocumentReview.xml -CONT_PATH /Container=ptcwindchill com.ptc.windchill.partslink.AdminApp -reloadenumCustomizeant -f MakeJar.xmlResourceBuild wt.project.RoleRB trueenumVerify <fully_qualified_EnumClassname>[<language>][<country>][<variant>]例如:enumVerify wt.lifecycle.State fr CAjava wt.util.resource.ResourceBundleUtil wt.part.partModelRBxconfmanager -p用命令导入ldif:windchill engine.util.LDAPImport -dir E:\PTC\Windchill_8.0 -ldiffileE:\PTC\IE_JDBCAdapter\jdbc.ldif将Windchill的核心class文件打包为jar文件命令:makejar.bat 或者 Windchill wt.tools.boot.MakeJar jar=wt.jarconfig=wt.jar.config 或者 Windchill wt.tools.boot.MakeJar jar=wt.jar处理多字节:在wt.properties最后添加wt.db.maxBytesPerChar=3wt.db.encoding=UTF8或者<Property name="wt.db.maxBytesPerChar" overridable="true"targetFile="codebase/wt.properties" value="3"/>JavaGen.sh registry false false true false falseJavaGen registry false false true false false产生CAD代理工作服务: i486_nt\obj\WorkDaemon.exe -InstallD:\Eclipse\eclipse.exe -vm D:\j2sdk1.4.2_06\jre\bin\javaw -vmargs -Xms256M -Xmx512M Attribute Type Logical ID Belong To Catalog------------------------------------------------------------------------------------------------------Extended Type String RootLocalID String persistInfo.objectIdentifier RoothelperName String SearchableNumber String number PartOracle 命令导出命令(全量导出):exp system/system@wind file=f:\wind.dmp full=y statistics=noneexp system/system@wind file=f:\wind.dmp owner=(PDM1,PDM2) statistics=none exp pdm8/pdm8@wind tables=(table1,table2)(增量导出):exp system/system@wind file=f:\wind.dmp inctype=incremental导入命令:imp system/system@wind file=f:\wind.dmp full=y ignore=yimp system/system@wind file=f:\wind(PDMLink).dmp fromuser=PDMLinktouser=PDMLink ignore=yimp system/system@wind file=f:\wind(PDMLink).dmp fromuser=PDM1 touser=PDM2 rows=y indexes=y显示当前连接用户:show user查看数据库的表空间:select * from dba_tablespaces;显示常用的系统文件的视图:v$database,v$datafile,v$logfile,v$controlfile,v$parameter快速清空一个大表:truncate table table_name;查询数据库实例:select * from v$instance;将查询的结果导入到文本文件中:SQL>spool c:\abcd.txt;SQL>select * from table;SQL>spool off;修改字段大小:alter table table_name modify (field_name varchar2(100));修改表名:alter table old_table_name rename to new_table_name;找数据库表的主键字段的名称:select * from user_constraints where constraint_type='P' and table_name='TABLE_NAME';如果导出时出现942的错误,那是进行升级后没有执行:SQL>conn / as sysdba;SQL>%Oracle_home%\rdbms\admin\catexp.sql;删除用户下的所有对象:set linesize 50set pagesize 500spool drop_object.sqlselect 'drop '||object_type||' '||object_name||';' from user_objects;spool off@drop_object.sql;Oracle监听器启动:lsnrctl startOracle监听器停止:lsnrctl stopOracle实例启动:使用sysdba身份登录,输入:startupOracle实例停止:使用sysdba身份登录,输入:shutdown创建远程连接:create database link pdmlink_wind connect to pdm_migration identified by migchangeme using 'fan-10'(pdmlink_wind连接名称、pdm_migration用户名、migchangeme密码、fan-10连接字符串)使用链接:select * from wtpart@pdmlink_windselect a.CLASSNAMEA2A2,a.IDA2A2,b.CLASSNAMEA2A2,b.IDA2A2 where wtpart a,pdmlink_wind.wtpart b where a.IDA2A2=b.IDA2A2;改变使用者口令:alter user pdm identified by pdm;停止OEM:oemctl stop oms sysman/passwd比较表结构:SELECT COUNT(*) FROM(SELECT CNAME||COLTYPE||WIDTH FROM COL@PDJ WHERE TNAME='WTPART'MINUSSELECT CNAME||COLTYPE||WIDTH FROM COL WHERE TNAME='WTPART');我们在建立一个基于原来某个表的结构的时候,就用这个:CREATE TABLE T_NAME AS SELECT * FROM V_TABLE WHERE 1=2执行Oracle数据库碎片整理工具:在生产环境、测试环境中,请定期执行下面的sql,将其中的“pdm7”替换成为实际的数据库用户名,注意在执行该语句的时候一定要将Windchill先停止:execute dbms_stats.gather_schema_stats(ownname => 'pdm7', cascade=>true);该sql的用途是用来整理数据库的碎片程序,从而可以显著提高数据库的存取性能,在各个环境中建议每隔1-2个月执行一次,该语句可以在我们的WCPerfTuningGuide.pdf文档中找到修改游标的最大打开数:在两个文件中可以修改游标的打开数:"SPfile+例程名.ora" 和 "Init+例程名.ora";其中"SPfile+例程名.ora"的优先于"Init+例程名.ora"。
常用业务对象、目录结构、类、包介绍文档控制更改记录目录文档控制 (ii)更改记录 (ii)1. Windchill对象介绍 (i)1.1 Windchill目录结构 (i)1.2 Windchill常用业务对象、类 (i)1.3 Windchill常用包 (iii)1.4 如何在Windchlil系统中查找对象对应的类 (iv)1.Windchill对象介绍(会持续更新此文档)1.1Windchill目录结构●wtCustom放入修改系统的rblnfo文件●wtSateArea下的siteMod文件中放入修改后的系统文件,比如.jspf文件、html, xml;ptcCurrent文件放系统当前版本的文件;ptcOrig放系统最原始的文件ant-f bin/swmaint.xml installSiteChanges●bin:windchill工具目录,如windchill shell●src目录放客制化的源文件,放国际化.rblnfo文件。
●codebase是运行时目录,放编译后的.class文件、放WEB相关文件、放模板文件(.html)●netmarkets:JSP文件●tasks目录放系统服务文件.xml文件, Info*Engine配置文件●valuts:文件仓目录●loadFiles目录,放置需要导入到系统的工作流、生命周期等●Logs:日志目录●loadXMLFiles目录,放置配置系统的信息的.xml文件8,DB目录,放置建立模型后生成的SQL语句●db:数据库映射文件及模型SQL脚本1.2Windchill常用业务对象、类业务对象常用类名描述部件wt.part.WTPart 零部件对象部件wt.part.WTPartMaster 部件master对象部件wt.part.WTPartReferenceLink 部件参考关系部件wt.part.WTPartDescribeLink 部件描述关系部件wt.part.WTPartUsageLink 部件使用关系部件wt.part.WTPartAlternateLink 实现wt.fc.ObjectToObjectLink,全局可替换部件wt.part.WTPartSubstituteLink 实现wt.fc.ObjectToObjectLink,特定可替换部件wt.part.LineNumber 行号部件wt.part.Quantity 数量1.3Windchill常用包1.4如何在Windchlil系统中查找对象对应的类方法一:导航到站点-->"类型和属性管理器",选择部件,这个部件就对应了系统中OOTB对象,wt.part是包名,WTPart是类名称方法二:对象的详细页面,浏览器地址中key(OID)的值包含类名+ida2a2,例如:oid=OR%3Awt.part.WTPart%3A222040.。
常用业务对象、目录结构、类、包介绍文档控制更改记录目录文档控制 (ii)更改记录 (ii)1. Windchill对象介绍 (i)1.1 Windchill目录结构 (i)1.2 Windchill常用业务对象、类 (i)1.3 Windchill常用包 (iii)1.4 如何在Windchlil系统中查找对象对应的类 (iv)1.Windchill对象介绍(会持续更新此文档)1.1Windchill目录结构●wtCustom放入修改系统的rblnfo文件●wtSateArea下的siteMod文件中放入修改后的系统文件,比如.jspf文件、html, xml;ptcCurrent文件放系统当前版本的文件;ptcOrig放系统最原始的文件ant-f bin/swmaint.xml installSiteChanges●bin:windchill工具目录,如windchill shell●src目录放客制化的源文件,放国际化.rblnfo文件。
●codebase是运行时目录,放编译后的.class文件、放WEB相关文件、放模板文件(.html)●netmarkets:JSP文件●tasks目录放系统服务文件.xml文件, Info*Engine配置文件●valuts:文件仓目录●loadFiles目录,放置需要导入到系统的工作流、生命周期等●Logs:日志目录●loadXMLFiles目录,放置配置系统的信息的.xml文件8,DB目录,放置建立模型后生成的SQL语句●db:数据库映射文件及模型SQL脚本1.2Windchill常用业务对象、类业务对象常用类名描述部件wt.part.WTPart 零部件对象部件wt.part.WTPartMaster 部件master对象部件wt.part.WTPartReferenceLink 部件参考关系部件wt.part.WTPartDescribeLink 部件描述关系部件wt.part.WTPartUsageLink 部件使用关系部件wt.part.WTPartAlternateLink 实现wt.fc.ObjectToObjectLink,全局可替换部件wt.part.WTPartSubstituteLink 实现wt.fc.ObjectToObjectLink,特定可替换部件wt.part.LineNumber 行号部件wt.part.Quantity 数量1.3Windchill常用包1.4如何在Windchlil系统中查找对象对应的类方法一:导航到站点-->"类型和属性管理器",选择部件,这个部件就对应了系统中OOTB对象,wt.part是包名,WTPart是类名称方法二:对象的详细页面,浏览器地址中key(OID)的值包含类名+ida2a2,例如:oid=OR%3Awt.part.WTPart%3A222040.。
W i n d c h i l l二次开发常用A P I1.1.根据零件名称/编码得到该零件2.wt.clients.prodmgmt.WTPartHelper.findPartByName(name) ;3.wt.clients.prodmgmt.WTPartHelper.findPartByNumber(number);4.2.根据WTpart得到WTparMaster5.WtPart wtpart;6.WTPartMaster wtmaster=(WTPartMster)part.getMaster();7.3.获取codebase下配置文件wt.properties属性信息8.WTProperties wtproperties = WTProperties.getLocalProperties();9.String wthome = wtproperties.getProperty("wt.home", "");//codebase的文件夹路径10.4.获取part被借用的所有父部件11.QueryResult qr=wt.part.WTPartHelper.service.getUsedByWTParts(WTPartMsterwtMaster);12.注:此方法得到的结果为该part被使用情况的全部父部件,包括了Design视图及Manufacturing视图更包括了父部件使用part的所有修订版本,打印出来可以看到会有相同的部件编号,不同的修订版本.13.5.根据OID 获取Wtpart14.wt.fc.WTReference partRef = newwt.fc.ReferenceFactory().getReference( oid );15.WTPart wtpart=(WTPart)partRef;16.6.得到零件最新版本17.WTPart wtpart= (WTPart)VersionControlHelper.getLatestIteration(part);18.7.通过过滤得到零件最新版本19.QuerySpec querysearch = new QuerySpec(WTPartMaster.class);20.//查询所有的WTPartMaster21.QueryResult queryresult =PersistenceHelper.manager.find(querysearch);testConfigSpec latestconfigspec = newLatestConfigSpec();23.//根据WTPartMaster查询所有最新版本的零部件24.QueryResult allWTPart =ConfigHelper.service.filteredIterationsOf(queryresult,latestc onfigspec)25.8.查询某用户某段时间范围内创建的零件26.QuerySpec qs = new QuerySpec(WTPart.class);27.qs.appendSearchCondition(newSearchCondition(WTPart.class,WTPart.CREATE_TIMESTAMP, true,new AttributeRange(begintime, endtime)));//删选条件时间范围内28.qs.appendAnd();//一定要加上不然下一个条件不能删选29.qs.appendSearchCondition(new SearchCondition(WTPart.class,30."iterationInfo.creator.key",SearchCondition.EQUAL,PersistenceHelper.getObjectIdentifier(n ame)));//删选条件用户31.QueryResult qr = PersistenceHelper.manager.find(qs);32.//今后持续更新if (enumUser.hasMoreElements())user = (WTUser) enumUser.nextElement();}if (user == null) {throw new WTException("系统中不存在用户名为'" + name + "'的用户!");}return user;}}10.windchill 中查询,高级查询,基本查询QuerySpec qs = new QuerySpec();//构造Int index = qs.appendClassList(WTPart.class,true);//添加查询类型,获取类型索引,第2个参数表示“要查询的类型、表”WhereExpression where = new SearchCondition(WTPart.class, WTPart.xx, “=”, xx);//泛型在WC API中的使用//获取查询条件数目If(qs.getConditionCount()>0 && qs.getWhere().endsWith(“")){qs.appendAnd();}//添加查询条件qs.appendWhere(where, new int[]{index});//** 以下是联合查询的API范例。
电子化文档的管理:Windchill文档管理工具能让用户建立和管理复杂的产品信息,这些出版物可能由多个文件组成、有多种修订版本、并且有不同的格式。
如UG、Pro/E、AutoCAD、MSOffice等应用工具生成的图纸或模型文件,各种测试数据和报告,任务书或规格说明书,工艺文件、使用或维护手册、零件明细等。
而且,它们还可以包括某些外来文件,并通过URL地址连接并从外部进行管理。
文档管理提供了许多随时可用的文档和出版物类型,若需要的话,还可以方便地把它们扩展成代表企业业务信息的模型。
为了方便用户的操作,系统能够自动地将产品数据和应用程序进行关联。
用户可以直接在Windchill中激活应用程序,并对数据进行操作。
1.文档的分类与存储:对文档的存储管理可以按照一定的分类规则来完成。
在Windchill环境中,文档的分类可以有不同的分类规则。
可以以产品对象为参考来完成文档的分类的管理,如:产品型号或系列为标准;可以按照文件的类型进行分类,如电子档案或结构部件;按照文档的功能进行分类,如技术文档、设计文档、工艺文档;当然,还可以按照项目、部门、产品、功能的组合进行分类。
在Windchill系统中,文件通常存储在逻辑的档案柜、文件目录中,以保持对用户的透明性。
在实施时,应该根据实际需求,同时采用多种分类方法相结合的方法。
文档的存储管理需要完成的工作如下:确定分类规则,定义新的、扩展的文档类。
文档的分类存放策略确定,划分文档存储地点。
结合文档评审、发布,实现文档信息的合理流动。
制定文档归档策略,实现文档的归档管理。
下图为Windchill中的文档管理界面2、文档的版本追踪:文档随着产品设计的进行,而需要不断的变化和修改。
数据管理系统要求能够及时纪录文档的变更历史,进行版本的追踪。
同时,还必须提供文件的共享机制,以实现并行工程的需求。
在Windchill系统中,通过以下几个方面来实现相关的需求。
一个数据仓库,它能通过控制权限,来保护信息不会被未授权用户修改检入和检出功能,用于把文档提交给数据仓库以及从数据仓库中提取文档版本控制和历史记录功能,用来跟踪数据更改、记录根据已有文档建立的新文档的来源,并能浏览历史数据3、文档的快速检索:文档的快速检索和利用,将有利于减少辅助工作时间,提高用户的工作效率。
package com.ptc;import java.util.ArrayList;import java.util.List;import java.util.Locale;import java.util.Vector;import wt.part.WTPart;import wt.util.WTException;import ponents.descriptor.DescriptorConstants.ColumnIdentifiers;import com.ptc.core.htmlcomp.createtableview.Attribute.TextAttribute;import com.ptc.core.htmlcomp.tableview.AbstractConfigurableTable;import com.ptc.core.htmlcomp.tableview.TableColumnDefinition;import com.ptc.core.htmlcomp.tableview.TableViewDescriptor;public class ConfigTable extends AbstractConfigurableTable {public List getSpecialTableColumnsAttrDefinition(Locale locale) {List result = new ArrayList();result.add(new TextAttribute(/* id */"myView",/* label */"MyView",locale));result.add(new TextAttribute(/* id */"testView",/* label */"TestView",locale));return result;}public List getOOTBTableViews(String tableId, Locale locale)throws WTException {List result = new ArrayList();Vector columns = new Vector();columns.add(TableColumnDefinition.newTableColumnDefinition(/* name */,/* lockable */false));//columns.add(TableColumnDefinition.newTableColumnDefinition(/*name*/ColumnIdentifiers.NU MBER,/*lockable*/false));//columns.add(TableColumnDefinition.newTableColumnDefinition(/*name*/ColumnIdentifiers.CRE ATED,/*lockable*/false));//columns.add(TableColumnDefinition.newTableColumnDefinition(/*name*/ColumnIdentifiers.VER SION,/*lockable*/false));TableViewDescriptor tvd = TableViewDescriptor.newTableViewDescriptor(/* name */"Sapmple View", tableId,/* system */true,/* global */true, columns, /* constraints */null,/* match */true,/* descriptption */"Sample View");result.add(tvd);return result;}public String getOOTBActiveViewName() {return null;}public String getLabel(Locale locael) {return "Custmom config table ";}public Class[] getClassTypes() {return new Class[] { WTPart.class };}public String getDefaultSortColumn() {return ;}}。
package com.ptc;import java.util.ArrayList;import java.util.List;import java.util.Locale;import java.util.Vector;import wt.part.WTPart;import wt.util.WTException;import ponents.descriptor.DescriptorConstants.ColumnIdentifiers;import com.ptc.core.htmlcomp.createtableview.Attribute.TextAttribute;import com.ptc.core.htmlcomp.tableview.AbstractConfigurableTable;import com.ptc.core.htmlcomp.tableview.TableColumnDefinition;import com.ptc.core.htmlcomp.tableview.TableViewDescriptor;public class ConfigTable extends AbstractConfigurableTable {public List getSpecialTableColumnsAttrDefinition(Locale locale) {List result = new ArrayList();result.add(new TextAttribute(/* id */"myView",/* label */"MyView",locale));result.add(new TextAttribute(/* id */"testView",/* label */"TestView",locale));return result;}public List getOOTBTableViews(String tableId, Locale locale)throws WTException {List result = new ArrayList();Vector columns = new Vector();columns.add(TableColumnDefinition.newTableColumnDefinition(/* name */,/* lockable */false));//columns.add(TableColumnDefinition.newTableColumnDefinition(/*name*/ColumnIdentifiers.NU MBER,/*lockable*/false));//columns.add(TableColumnDefinition.newTableColumnDefinition(/*name*/ColumnIdentifiers.CRE ATED,/*lockable*/false));//columns.add(TableColumnDefinition.newTableColumnDefinition(/*name*/ColumnIdentifiers.VER SION,/*lockable*/false));TableViewDescriptor tvd = TableViewDescriptor.newTableViewDescriptor(/* name */"Sapmple View", tableId,/* system */true,/* global */true, columns, /* constraints */null,/* match */true,/* descriptption */"Sample View");result.add(tvd);return result;}public String getOOTBActiveViewName() {return null;}public String getLabel(Locale locael) {return "Custmom config table ";}public Class[] getClassTypes() {return new Class[] { WTPart.class };}public String getDefaultSortColumn() {return ;}}。
Windchill 二次开发中常用的API方法# 1.根据零件名称/编码得到该零件# wt.clients.prodmgmt.WTPartHelper.findPartByName(name) ;# wt.clients.prodmgmt.WTPartHelper.findPartByNumber(number);# 2.根据WTpart得到WTparMaster# WtPart wtpart;# WTPartMaster wtmaster=(WTPartMster)part.getMaster();# 3.获取codebase下配置文件wt.properties属性信息# WTProperties wtproperties = WTProperties.getLocalProperties();# String wthome = wtproperties.getProperty("wt.home", ""); //codebase的文件夹路径# 4.获取part被借用的所有父部件# QueryResult qr= wt.part.WTPartHelper.service.getUsedByWTParts(WTPartMster wtMaster);# 注:此方法得到的结果为该part被使用情况的全部父部件,包括了Design视图及Manufacturing视图更包括# 了父部件使用part的所有修订版本,打印出来可以看到会有相同的部件编号,不同的修订版本.# 5. 根据OID 获取Wtpart# wt.fc.WTReference partRef = new wt.fc.ReferenceFactory().getReference( oid );# WTPart wtpart=(WTPart)partRef;# 6.得到零件最新版本# WTPart wtpart= (WTPart) VersionControlHelper.getLatestIteration(part);# 7.通过过滤得到零件最新版本# QuerySpec querysearch = new QuerySpec(WTPartMaster.class);# //查询所有的WTPartMaster# QueryResult queryresult = PersistenceHelper.manager.find(querysearch);# LatestConfigSpec latestconfigspec = new LatestConfigSpec();# //根据WTPartMaster查询所有最新版本的零部件# QueryResult allWTPart = ConfigHelper.service.filteredIterationsOf(queryresult,latestconfigspec)# 8.查询某用户某段时间范围内创建的零件# QuerySpec qs = new QuerySpec(WTPart.class);# qs.appendSearchCondition(new SearchCondition(WTPart.class,WTPart.CREATE_TIMESTAMP, true,# new AttributeRange(begintime, endtime)));//删选条件时间范围内# qs.appendAnd();//一定要加上不然下一个条件不能删选# qs.appendSearchCondition(new SearchCondition(WTPart.class,# "iterationInfo.creator.key", SearchCondition.EQUAL,PersistenceHelper.getObjectIdentifier# (name)));//删选条件用户# QueryResult qr = PersistenceHelper.manager.find(qs);# //今后持续更新public static WTUser getUserFromName(String name) throws WTException {Enumeration enumUser = OrganizationServicesHelper.manager.findUser(, name);WTUser user = null;if (enumUser.hasMoreElements())user = (WTUser) enumUser.nextElement();if (user == null) {enumUser = OrganizationServicesHelper.manager.findUser(WTUser.FULL_NAME, name);if (enumUser.hasMoreElements())user = (WTUser) enumUser.nextElement();}if (user == null) {throw new WTException("系统中不存在用户名为'" + name + "'的用户!");}return user;}}10.windchill 中查询,高级查询,基本查询QuerySpec qs = new QuerySpec();//构造Int index = qs.appendClassList(WTPart.class,true);//添加查询类型,获取类型索引,第2个参数表示“要查询的类型、表”WhereExpression where = new SearchCondition(WTPart.class, WTPart.xx, “=”, xx);//泛型在WC API中的使用//获取查询条件数目If(qs.getConditionCount()>0 && qs.getW here().endsWith(“")){qs.appendAnd();}//添加查询条件qs.appendWhere(where, new int[]{index});//** 以下是联合查询的API范例。
附录A: Windchill快速启动解决方案功能介绍Windchill®快速启动解决方案Windchill快速启动解决方案是“交钥匙工程”,它使用预先包装好的软件和服务来完成特定的业务过程,以快速获取投资回报。
该套解决方案提供了一个建立在公共Windchill体系架构和平台上的创建-协作-控制组合功能。
综合了为数百家客户部署Windchill积累的经验,Windchill快速启动解决方案具有最佳的用户界面、预装的标准工作流和可配置的过程,所以易于使用。
这些解决方案提供了许多实用功能,其中包括CAD集成、丰富的可视化、以及分布式信息共享功能。
每个解决方案都提供了支持特殊业务过程所必需的功能,这些解决方案可以被完美组合,以满足多个产品生命周期阶段的需求。
为了进一步加快投资回报,Windchill快速启动解决方案的价格固定,并包括资深顾问提供的确定范围内的技术服务和培训。
这些实施工作可以在很短的几周内完成,而不象其它企业系统要用几个月或者几年。
Windchill快速启动解决方案包括:Windchill PDMLinkWindchill PDMLink汇集、控制和利用整个产品生命周期中的数字化产品信息,通过一个基于Web的信息源使参与产品开发过程的每个人都能够轻而易举地访问到各种形式的最新准确信息。
随处可用的基于浏览器的强大可视化功能,确保工程师和非工程师无论身在何处,无需启动原始的应用程序都可以在自己的桌面上浏览和圈阅复杂的2D和3D产品信息。
主要功能:●一个主产品知识库把数字化产品表示(其中包括物料清单、文档、组件属性、二维工作图和模型、原理图、软件模块、技术规格、数据资料和修订记录)编制在一个基于Web的虚拟库中;它支持强大的搜索功能和相关信息的超链接导航。
●强大的产品结构管理功能,可以在建立和处理产品时支持产品配置管理-其中包括自动从CAD模型获得的配置。
●过程和信息的阶段-关口管理有助于管理产品开发过程。
打开Windchill Homepage:start D:\ptc\Windchill_9.0\Windchill\bin\HomePage.html1、查看Windchill版本:windchill version2、Windchill的客制化pdf(参考文档)在这个目录下D:\ptc\Windchill_9.0\Windchill\codebase\wt\clients\library;其中IEUsersGuide.pdf中包含了一些常用操作,有关QueryTree的用法在WCAdapterGuide.pdf中3、Windchill中用到的类(Class文件)都在D:\ptc\Windchill_9.0\Windchill\codebase目录下;Class的使用方法和作用多在D:\ptc\Windchill_9.0\Windchill\codebase\wt\clients\library\api目录下;例如:4、直接查看tasks目录下的xml文件执行结果,例如D:\ptc\Windchill_9.0\Windchill\tasks\com\business\test-efficientrate.xml;在地址栏输入:http:\\<machine>/\Windchill\servlet\IE\tasks\com\business\test-efficientrate.xml10、CTRL+C(关闭Tomcat、method server)20、windchill stop&&windchill start(重启Windchill)30、修改了action.properties文件后,需重启Method Server和Tomcat以重新加载40、ant-f%WT_HOME%/bin/tools.xml bundle_custom-Dbundle.input=registry(可用于编译3种resource bundles文件,当然对于枚举类型文件,可以用执行enumCumstmoize来代替,例如:StateRB.rbInfo)ant-f%WT_HOME%/codebase/MakeJar.xml(修改后重建Jar文件,例如为StateRB.rbInfo增加了Finished属性,要先执行ant-f bin/tools.xml bundle-custom-Dbundle.input=registry,再执行这条命令)50、infoReport[-x]<class-name>(前提条件:类文件同时有*.class和*.ClassInfo.ser根据类名{在WT_HOME\temp下}生成*.xml文件/*.out文件,以便查看类的内容;默认生成*.out、[-x]生成*.xml)class-name是将WT_HOME\codebase后面的目录改为.号连接;如WT_HOME\codebase\wt\part(BOMUtil.class)-->wt.part.BOMUtil例:要查看WT_HOME\codebase\wt\part目录下的BOMUtil.class文件,执行infoReport wt.part.BOMUtil(会报错***d:\ptc\Windchill_9.0\Windchill\codebase\wt\part\ProductProductInstance does not meet criteria for having an info object),原因是这个类的类型不符;如果使用WT_HOME\codebase\wt\part目录下的ProductProductInstance.class文件,执行infoReport wt.part.ProductProductInstance;成功了(在WT_HOME\temp下生成了*.out文件)60、windchill markets.util.misc.NmActionServiceHelper(用于重载*_actionModel.xml;相当于重启Tomcat和method server)====javamarkets.util.misc.NmActionServiceHelper70、ResourceBuild*(*是*.rbInfo文件名;即取src后面的去掉后缀的文件名;例如ext.business.client.*)<用于编译*.rbInfo文件>80、xconfManager-i path/name-p(用于根据*.properties文件第一次生成*.properties.xconf) xconfManager-p(用于更新对已有*.properties文件所做的修改)xconfManager-h查看xconfManager命令windchill-h查看Windchill帮助命令90、查看action report:http://<machine>/Windchill/netmarkets/jsp/carambola/tools/actionReport/action.jsp查看property Report:http://<machine>/Windchill/netmarkets/jsp/property/propertyReport.jsp查看service Report:http://<machine>/Windchill/netmarkets/jsp/carambola/svc/report.jsp100、在action.properties、action_en_US.properties、action_en_GB.properties、action_zh_CN.properties、action_zh_TW.properties更新属性后,必须在任意Internet页面的选项卡“工具-Internet选项-语言”中选择对应的语言,改变结果才能正常显示出来,例如:当语言选中了,英语(美国)[en-us]时,只能显示action_en_US.properties中的属性110、Jsp常用标签、导入:<%@include file="/netmarkets/jsp/util/begin.jspf"%><%@include file="/netmarkets/jsp/util/end.jspf"%><%@taglib uri="/infoengine/taglib/core"prefix="ie"%><%@taglib uri="/windchill/taglib/components"prefix="wca"%> <%@taglib uri="/windchill/taglib/carambola"prefix="cmb"%>120、编译Class文件到指定目录;例如要将D:\ptc\Windchill_9.0\Windchill\src\com\business\CustomWCAHelper.java编译生成Class文件到D:\ptc\Windchill_9.0\Windchill\codebase\com\business目录下:(命令如下)javacD:\ptc\Windchill_9.0\Windchill\src\com\business\CustomWCAHelper.java-d D:\ptc\Windchill_9.0\Windchill\codebase130、常用命令:windchill(codebase)目录下类名。
windchill系统学习之--开发流程An Overview of the Windchill Development ProcessVerify The Development Environment:Verify the following environment variables: path ,sqlpathVerify the contents of the following property files: wt.properties ,db.propertiesStart the Windchill servers. Open a new console window.Establish your Rose model directory.Model the Object in Rose:Start Rational Rose and check the virtual path map.WT_WORK = ..\windchill\srcWT_EXTENSIONS = ..\windchill\RoseAddInWT_STD_PACKAGES = $WT_EXTENSIONS\Standard PackagesEstablish the initial Rose model by performing the following steps:a. From the File menu, select Open, browse to ..\windchill\src\wt, andload the model WTDesigner.mdl.b. When asked whether to load subunits, press the Yes button.c. Save the model as ..\windchill\src\helloWorld\HelloWorld.mdl.d. When asked whether to save subunits, press the No button.Model the person class by performing the following steps:a. In the Logical View/Main class diagram, drop in a Package icon and labelit helloWorld.b. Use the dependency tool to draw dependencies from helloWorld to the wtand java packages.c. Go to the Main diagram of the helloWorld package.d. Drop on a class icon and give the class the name Item (the parent forPerson). Attributes and operations for Item automatically appear. Changethe diagram to suppress attributes and operations of Item. Ensure that theShow Visibility option is on for Item (so you can see in the diagram that itcomes from the fc package).e. Drop on another class icon and give it the name Person.f. Make Person a subclass of Item. (Use the generalization icon/tool to drawa line from Person to Item.)g. Insert the attributes name, age, title, and id. Name, title, and id should bestrings (String) and age should be an integer (int). Use lowercase or a mixof upper- and lowercase letters for these attributes; do not use alluppercase letters.2 Right click to start the specification dialog. Make allthe attributes public and change the Windchill property of each toconstrain=false. Click the Apply button for each change and, when youare done, click the OK button.h. Select the menu option Browse > Units. Select the HelloWorld packageand press the Control button. Save the unit to c:\ptc\windchill\src\helloWorld\helloWorld.cat. With the helloWorld package selected, pressthe Save button.i. Save the Rose model file. When asked whether to save subunits, click theNo button.Generate Java Classes From Rose:Go to the parent package of the Person class (by selecting the LogicalView/Main diagram from the class browser, then selecting the helloWorld package).From the Tools menu, select Windchill > System Generation.From the popup window, select Java Source Code, WT Introspector Support, and Database Support, then click the OK button.Create Database Tables:Initialize the Object:Design the GUI Layout:Code the GUI:Run the Applet in Mozilla or Internet Explorer:。