Windchill API 培训

上传人:少*** 文档编号:242971647 上传时间:2024-09-13 格式:PPT 页数:34 大小:148.50KB
返回 下载 相关 举报
Windchill API 培训_第1页
第1页 / 共34页
Windchill API 培训_第2页
第2页 / 共34页
Windchill API 培训_第3页
第3页 / 共34页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,Windchill,API,培训,张玉,概述,只有掌握,Windchill,API,才能实施好方案,.,本文介绍方案实施中最常使用的,API,WC API,有框架,学习本文的基础,其它可举一反三,.,养成,“,验证、总结”的好习惯,目录,高级查询,基本查询,用户、组、角色的查与改,流程参数,IBA,操作,设置生命周期状态,设置动态权限,部件与文档之间,持续化操作,Windchill,设计模式,1,、高级查询,添加查询类型,添加查询条件,联合查询,添加生命周期条件,执行查询,过滤出最新小版本,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,intindex,);,/*,以下是联合查询的,API,范例。,LINK,关系,/ROLEA,、,ROLEB,的,INDEX,被使用到。,int,linkIndex,=,qs.appendClassList(XXLink.class, false);,qs.appendJoin(linkIndex,xxLink.RoleA,index_A,);,qs.appendJoin(linkIndex,xxLink.RoleB,index_B,);,/,添加“生命周期”查询条件,LifeCycleConfigSpec,lcsp,= new,LifeCycleConfigSpec,();,lcsp.setLifeCycleState(State.toState(state,);,qs,=,lcsp.appendSearchCriteria(qs,);,/,执行查询,QueryResult,qr,=,PersistenceHelper.manager.find(qs,);,/,过滤出最新小版本,LatestConfigSpec,lcs,= new,LatestConfigSpec,();,qr,=,lcs.process(qr,);,习题,1,1,、查询部件,输入:部件编码,输出:各小版本对象的集合,2,、接上题,添加条件:只得到最新小版本,3,、查询部件的参考文档,输入:部件对象,输出:此部件的所有参考文档,2,、基本查询,建立数据库连接,准备,SQL,语句,执行查询,遍历查询结果,关闭数据库连接,/,建立数据库连接,PDSIfc,pds,=,DataServicesRegistry.getDefault().getPdsFor(“Default,”);,Connection,conn,= null;,if(pds,!=null),conn,=,pds.getDataSource().getConnection,();,/,准备,SQL,语句,PreparedStatement,query =,conn,.,prepareStatement(SQL,);,/,执行查询,ResultSet,rs,=,query.executeQuery,();,/,关闭数据库连接。,conn.close,();,习题,2,1,、查询部件的最新小版本,输入:部件编码,输出:部件的最新小版本,3,、用户、组、角色的查与改,WC,中承担者的类型结构,核心,API,:,OrganizationServicesHelper,承担者的类型结构,WTPrincipal,WTGroup,WTOrgnazition,WTUser,查用户,OrganizationServicesHelper.manager.getAuthenticatedUser(String,);,其它常用的方法。在,OrganizationServicesHelper,的设计中,提供了许多有关用户、群组、团队的“服务”。,Windchill,中大量使用“,Helper-,服务模式,” 。有关“,Windchill,的,3,大模式”,请详见,Windchill,客制化手册,倒数第,2,章,本文略。,其它常用方法:,getGroup,();,getOrganization,();,isMember,();,members();,rename();,习题,3,1,、查找用户,输入:表示名称的字符串,输出:用户对象。若无此用户则返回,null,。,2,、验证用户是否属于组,输入:表示用户的字符串,表示组的字符串,输出:若属于则返回,true,其它返回,false,3,、验证用户是否属于某角色,输入:表示用户的字符串,表示角色的字符串,输出:若属于则返回,true,其它返回,false,4,、将用户添加到组和角色,输入:表示用户、组、角色的字符串,输出:若发生异常则抛出异常,4,、流程参数,进程类型:,WfProcess,活动类型:,WfAssignedActivity,进程上下文:,ProcessData,进程变量:,WfVariable,/,获取活动,WfAssignedActivity,activity = (,WfAssignedActivity,),workItem.getSource().getObject,();,/,获取进程,WfProcess,process =,activity.getParentProcess,();,/,获取进程上下文,ProcessData,pPdata,=,wfProcess.getContext,();,/,获取变量,WfVariable,xx =,pData.getVariable(“xx,”);,习题,4,1,、创建一个问题报告,找到它的进程,输入:问题报告的编码,输出:相关进程对象,2,、接上题,查询当前活动节点,输入:进程对象,输出:进程目前所在活动节点的名称,3,、接上题,查询进程上下文,输入:进程对象,输出:进程上下文,5,、,IBA,操作,IBA=Instance Based Attribute,有现成的,IBAUtility,供使用,注意两点:,1,)为每个对象构造它自己的,IBAUtility,对象,2,),set,更新属性后,需要,updateAttributeContainer,();,IBA,名称定义在,:,StringDefinition,表中。,习题,5,1,、使用现有的,IBAUILITY,,查询部件的,IBA,属性,输入:部件对象,指定,IBA,属性的名称,输出:,IBA,属性值,2,、接上题,设置此,IBA,属性为新值,输入:部件对象,指定,IBA,属性的名称,新,IBA,属性值,输出:若发生异常则返回异常,6,、设置生命周期状态,Helper-,服务模式,核心,API,:,LifeCycleHelper,/,设置生命周期状态,LifeCycleHelper.service.setLifeCycleState,();,习题,6,1,、查询部件的生命周期模板,输入:部件对象,输出:生命周期模板对象,2,、重新设置部件的生命周期状态,输入:部件对象,输出:若发生异常则抛出异常,7,、设置动态权限,Helper-,服务模式,核心,API,:,AccessHelper,习题,7,1,、判断某用户是否能修改某对象,输入:用户对象,部件对象,输出:能则返回,true,其它返回,false,。,2,、为用户添加修改权限,输入:用户对象,部件对象,输出:若发生异常则抛出异常,8,、部件与文档之间,部件与文档之间的关系,,Windchill,API,是,WTPartReferenceLink,核心,API,:,StructureHelper,/,查询,StructureHelper.service.navigateReference,.,/,构造,WTPartReferenceLink.new,WTPartReferenceLink,();,习题,8,1,、查询部件的所有参考文档,输入:部件对象,输出:所有参考文档的集合,2,、查询文档参考的部件,输入:文档对象,输出:与之有参考关系的部件的集合,9,、持续化操作,核心,API,:,PersistenceHelper,没有持续化的对象不能使用此,API,。要操作不持续的对象,使用其它,WC API,。,/,删除,PersistenceHelper.manager.detele,.,/,存储,PersistenceHelper.manager.detele,.,习题,9,1,、删除部件,输入:部件对象,输出:若发生异常则抛出异常,2,、更新部件的名称,输入:部件对象,输出:若发生异常则抛出异常,10,、,Windchill,设计模式,一起学习,Windchill,客制化手册,倒数第,2,章,总结,1,、习惯一:防止空指针异常。,2,、多实践、多验证,3,、用,JAVA OOP,的思想来思考,WC API,。,4,、规范的代码是职业素养的体现。,谢谢!,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!