Windchill API 培训PPT课件

合集下载

Windchill二次开发常用API说课讲解

Windchill二次开发常用API说课讲解

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系统管理员培训课件

Windchill系统管理员培训课件
Windchill系统管理员的职责和任务包括:系统安装配置、用户和权限管理、数据备份和恢复、调试和性 能监控、问题解决和更新升级等。
Windchill系统的数据备份和恢复
1
数据备份的重要性
数据备份是保证数据完整性和安全性的重要手段。
2
数据备份和恢复的方法
数据备份和恢复的方法主要有:全量备份、增量备份、数据恢复。
什么是Windchill系统?
Windchill是一款快速、可靠的产品生命周期管理软件,旨在提高生产率和产品质量。
Windchill的特点
通过集成各种软件和系统,Windchill实现了协同工作、版本控制、工程更改、BOM管理、工 程图形管理、文档管理、报告管理等功能,集成了Creo、SolidWorks、AutoCAD、Eclipse等软 件。
3
数据备份和恢复的常见问题
常见问题包括备份失败、备份不完整、恢复失败等。
Windchill系统的安全性和保密性
Windchill系统的安全性
Windchill系统的保密性
Windchill系统的防火墙 保护
Windchill系统采用多重安全策 略,包括用户认证、权限控制、 数据加密、审计跟踪等。
Windchill系统能够帮助企业保 护机密信息的安全性和保密性。
Windchill系统的安装步骤
下载安装包、解压安装包、运行安装程序、 配置参数、启动服务。
Windchill系统的配置常见问题
常见问题包括端口冲突、Java版本不匹配、 数据库不兼容等。
Windchill系统的基本配置
基本配置包括用户管理、组织架构、权限管 理等。
Windchill系统管理员的职责和任务
Windchill的应用领域

Windchill-系统管理培训教材

Windchill-系统管理培训教材
15
管理系统服务
▪ 将Apache注册为Windows服务 ➢ 注册 Windchill shell下执行: ant –f config.xml installService –DserviceName=<ServiceName> httpd –k install –n <ServiceName> ➢ 卸载 Windchill shell下执行: ant –f config.xml uninstallService –DserviceName=<ServiceName> httpd –k uninstall –n <ServiceName>
22
管理电子仓库
▪ 电子仓库 ➢ 多电子仓库配置 ✓ 创建多电子仓库 ✓ 创建仓库规则 ➢ 单电子仓库配置 ✓ 强制转换成单电子仓库 wt.fv.forceContentToVault=true ✓ 单电子仓库不需要配置规则
23
管理电子仓库
▪ 副本站点 异地协同 定时同步
24
Windchill服务调优
16
管理系统服务
▪ 将Windchill DS注册为Windows服务 ➢ 注册 执行 <Windchill>\WindchillDS\server\bat\windows-service.bat ➢ 卸载 执行<Windchillntrol-panel.bat Runtime OptionsWindows ServerDisable
2
系统管理员职责
3
系统管理员职责
维护系统组件
Apache Tomcat Windchill DS Method Server
管理系统性能
服务器状态 数据库状态 磁盘管理 网络状况

Windchill常用开发大全.ppt

Windchill常用开发大全.ppt

Rose模型介绍
打开Rose模型,点击FileOpen
选择src\wt\WTdesigner.mdl
Rose模型使用
点击【是】,系统会加载
其中Logical View是系统核心 逻辑显示,其中3rd是Windchilll 中使用了哪些Java技术模块、ext 是系统客制化扩展模型目录、wnc是Windchill核心业务逻辑组成
– 不预留属性
对象建模,不预留属性。对于已有对象的预留属性,因属性名称业务 含义,也不允许使用。历史模型已预留的属性不做要求。 例如:不再使用以前建模留下的reserv1、reserv2等预留属性
设计规范
– 关联关系
两个对象关联时,需要使用模型的关联关系。尽量不要采用建模为两 个独立对象,在一个对象的属性中记录另一个对象的某个标志属性的 方式。 例如: 错误的建模方法:CBBCounter类有一个属性cbbNumber,记录CBB 的编码。 正确的建模方法:引入一个Link对象,记录CBBCounter类和 WTPartMaster类的关系。
设计规范
– 字段扩展
对于对象的属性,一般情况下采用默认长度。建模时要求考虑属性长 度是否符合要求,如果需要加大长度,在模型中设置相应的值即可。
– 选择父类
对于建模,尽量继承底层的Windchill类,例如:Managed\Item等,继 承上层的具有实际业务含义的Windchill类(例如:WTPart、 WTDocument)时,在业务上符合“是一个(As -is)”的含义,例如: EleadPart是一个WTPart
安装完成之后,load注册文件 rational_perm.dat.txt
进入到{WT_HOME}\roseAddIn,将 VirtualPathMap.AddIn.reg和Windchill.AddIn.reg文件中 的路径修订为个人本机环境的路径并注册

PTCWindchill培训

PTCWindchill培训
– Pro/E:CAD设计工具,用于设计、修改CAD图档。
– 个人机上的工作区:本地临时存储与PLM进行交换的文件夹。
– 服务器上的工作区:PLM存储个人文件的区域,在Pro/E中显示为 一个文件夹。一个用户可以拥有多个工作区,但每次在Pro/E只能 激活一个工作区。
– Windchill服务器:最终归档、共享CAD成果的区域,即您所拥有 权限访问的 PLM环境
• 变更设计需要修订图档版本
– 选择需要修订的图档,点击图标 – 查看新修订版本,点击“确定”
• 将公用区图档添加至工作区 – 在图档的详细信息页面,选择“操作”>“添加至”>“添加至工作区” – 选择需要添加到的工作区
• 将图档从工作区添加至另一个工作区 – 在图档的详细信息页面,选择将对象添加至工作区图标 – 选择需要添加到的工作区
PTCWindchill培训
数据管理对象
更改管理对象
存储位置
小版本控制和版本修订
进程控制
访问控制
登录系统
为了有效地进行权限 管控,用户首次登陆 需要修改管理员设置 的初始密码:
系统提示:已成功更新密码,下次登录系统用户必须使用新的密码进行登录。
访问帮助
简单搜索
• 保存并上载图档
– 将设计好的图档保存 并上载到服务器段工 作区,选择“文件 ”>“保存并上载”
– 验证图档是否上载到工 作区,选择“文件夹浏 览器”>“工作区”
检出方式一 从Creo端操作,选择需要检出的图档,点击检出图标
检出方式二
服务器端操作,在图档的详细页面,选 择“操作”>“检出” 选择图档检出的工作区
在详细信息 或者文件操作下右键选择另存为
对于CAD与部件有另存为这个 选项,相当于重新建立一个类 似的对象

整套的windchill官方培训教材!只得学习!

整套的windchill官方培训教材!只得学习!

整套的windchill官方培训教材!只得学习!Windchill PDMLink10.0的数据和上下文管理概述课程代码WBT-3086课程时长3小时在本课程中,您将学会如何执行基本的Windchill PDMLink管理任务。

您将了解各种Windchill存储容器,例如站点上下文、存储库上下文以及产品上下文。

您将创建这些上下文并在其中存储对象。

您将学习如何在这些上下文中创建新的对象类型以及修改现有类型的功能,从而使它们具有额外的属性或在对象初始化时自动设置属性。

在每个模块的课程结束前,您将完成技能评估。

这些问题有助于强化您对模块主题的理解,并为任何主题的复习奠定基础(如果必要)。

课程目标确定上下文及其关系分配上下文创建者创建和管理文档确定Windchill对象名称及其对应的对象类型类名称创建全局属性添加属性至Windchill类型创建Windchill类型确定和设置对象初始化规则实施自定义版本排序在产品、存储库和组织上下文中创建和管理文档模板确定创建CAD文档模板的方法创建产品和存储库上下文模板在检入期间使用ModelCHECK验证管理管理员保存的搜索管理用户配置文件管理Windchill视图管理日历功能管理组织首选项确定报告管理器功能确定可视化发布控制确定清除管理器功能审计系统事件先决条件WBT-3084Windchill PDMLink10.0的业务管理概述授课对象本课程的培训对象是业务管理员、系统管理员以及项目团队领导者。

实施团队成员(包括用户采纳团队成员)以及具有常规Windchill PDMLink管理职责的人员参加此培训,也会受益匪浅。

目录模块1管理上下文模块2管理对象、对象类型和对象属性模块3管理对象类型行为模块4管理组织模板模块5管理支持工具。

Windchill二次开发常用API说课讲解

Windchill二次开发常用API说课讲解

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 权限介绍 PPT

Windchill 权限介绍 PPT

访问控制策略
通常根据授权对象类型及授权方式的不同,通过将权限归纳为静态权限和动态 权限二大类:
静态权限——在系统的策略管理器对域进行授权 ,可以按类型进行批量的权 限授予。在创建容器(或文件夹)时选择已定义权限的域,承担者在容器内 就能够继承预先所定义的权限规则;
动态权限——通过对生命周期(或工作流)进行授权,当生命周期状态到达 预定阶段时权限被自动授予给承担者,当生命周期状态状态发生变更后权限 被自动中止;
站点
/(Root)
System
Default
Private
组织
Demo
华为
PDM
Project
PDM
Project
产品/存储库
Default Folder
核心网产品线 Folder
通过我们建议在组织层或容器层进行域策略的控制
静态权限控制_组
对组授权: 预先在策略管理器中对组织层(对组)进行权限的定制和分配+在组织按组对成员 进行划分,创建容器时选择继承组织域并在容器团队中维护成员(不需对应到具体 的角色或组,只需添加为成员即可),成员即可拥有预选所定义的权限规则;
访问控制策略
Windchill系统提供了非常精细的权限操作功能,能够对各类型的对象进行灵 活、便捷的权限控制
➢ C_创建 ➢ R_读取 ➢ M_修改 ➢ D_删除 ➢ L_下载 ➢ X_修订 ➢ P_升级 ➢ S_设置状态
➢ OC_修改内容 ➢ CD_变更域 ➢ CB_通过移动创建 ➢ CC_变更上下文 ➢ OI_修改标识 ➢ A_管理 ➢ NV_新建视图版本 ➢ CE_变更权限
权限
研发活动多以项目的形成展开,而项目的特征是具有一定的时间性,各成员 是阶段性的参与项目(灵活的进行访问策略的授予和收回)

第1章:API编程、Windows程序基本结构PPT教学课件

第1章:API编程、Windows程序基本结构PPT教学课件

MFC:微软基础类库。依据面向对象编程思想将API函数封装在几百个C++ 类中,使程序员可以利用面向对象的方法开发程序。
C++语言标准:C++语言是一种通用的计算机编程语言,国际标准化组 织已经对其语法和基本类库进行了标准化,很多公司依据C++语言标 准推出了自己的C++开发工具,Visual C++只是其中一种。
Windows API 函数 Windows操作系统
4
2020/12/10
1.1 基本概念
Visual C++:微软公司出品的C++语言开发工具,允许程序员使用C+ +语言以可视化的编程方式快速开发基于Windows平台的系统软件及应 用软件。
Windows API:Windows操作系统的应用编程接口,它是操作系统的一部 分,由数千个函数组成,程序员可以在自己的程序里调用API函数以利 用操作系统内置的一些功能。
2
2020/12/10
1.1 基本概念
Visual Basic Delphi
Powerbuilder C++Builder Visual C++
Visual studio .NET
Ellipse
编程工具 编译器 连接器 操作系统
编程语言 源程序 目标程序
Basic语言
Pascal语言
C++语言
C#.NET C++.NET
int nWidth,
// window width
int nHeight,
// window height
HWND hWndParent, // handle to parent or owner window
HMENU hMenu,
// handle to menu or child-window identifier

Windchill常用开发大全ppt课件

Windchill常用开发大全ppt课件
3
设计规范
字段扩展
对于对象的属性,一般情况下采用默认长度。建模时 要求考虑属性长度是否符合要求,如果需要加大长度, 在模型中设置相应的值即可。
选择父类
对于建模,尽量继承底层的Windchill类,例如: Managed\Item等,继承上层的具有实际业务含义的 Windchill类(例如:WTPart、WTDocument)时,在业 务上符合“是一个(As -is)”的含义,例如:EleadPart 是一个WTPart
仅对持久化对象建模
只有数据需要保存到数据库中的持久化业务对象才允 许进行建模。其余的操作类(例如:Processor、 Delegate、Helper类等) 不被允许进行建模。
模型命名规则
对象的名称、属性名称、方法名称应该满足命名规则, 同Java编码规范的类命名、变量命名和方法命名。 例如: 类名 TRApplyDoc
逻辑组成
点击Save AS,重新命名为HelloWorld.mdl 9
扩展模型
10
模型扩展(续)
针对上面的图示,自定义个模型EleadDocs, 继承WTDocument,该模型自定义方法 getEleadDocName()和属性eleadDocType, 且将其属性设置constrain=false,点击保存 (遇到提示,点击No) 选择菜单Units.Control docs,保存为 docs.cat
系统运行的错误信息,要显示在UI界面上,以便用户和系统管理员了解, 同时需要在系统log中记录。
Debug语句要有开关控制,避免直接使用System.out.println()打印,导致 将来的生产环境产生大量日志。
每个客制点之间,设定一个Debug开关,方便自身模块的调试。Debug的 开关,缺省值设置为false。客制点之间的输入和输出部分,需要输出 Debug信息,方便客制点之间的调试。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7
习题1
• 1、查询部件 输入:部件编码 输出:各小版本对象的集合
• 2、接上题,添加条件:只得到最新小版本 • 3、查询部件的参考文档
输入:部件对象 输出:此部件的所有参考文档
8
2、基本查询
• 建立数据库连接 • 准备SQL语句 • 执行查询 • 遍历查询结果 • 关闭数据库连接
9
//建立数据库连接 PDSIfc pds =
13
• 承担者的类型结构 WTPrincipal
WTGroup WTOrgnazition
WTUser
14
• 查用户
OrganizationServicesHelper.manager.getAuthenti catedUser(String);
• 其它常用的方法。在 OrganizationServicesHelper的设计中,提供 了许多有关用户、群组、团队的“服务”。
16
习题3
• 1、查找用户
输入:表示名称的字符串 输出:用户对象。若无此用户则返回null。
• 2、验证用户是否属于组
输入:表示用户的字符串,表示组的字符串 输出:若属于则返回true其它返回false
• 3、验证用户是否属于某角色
输入:表示用户的字符串,表示角色的字符串 输出:若属于则返回true其它返回false
(WfAssignedActivity) workItem.getSource().getObject(); //获取进程 WfProcess process = activity.getParentProcess(); //获取进程上下文 ProcessData pPdata = wfProcess.getContext();
Windchill中大量使用“Helper-服务模式” 。
有关“Windchill的3大模式”,请详见
《Windchill 客制化手册》倒数第2章,本文
略。
15
• 其它常用方法: getGroup(); getOrganization(); isMember(); members(); rename(); …
Windchill API 培训
张玉
1
概述
• 只有掌握Windchill API,才能实施好方案. • 本文介绍方案实施中最常使用的API • WC API有框架,学习本文的基础,其它可举一
反三. • 养成“验证、总结”的好习惯
2
目录
1. 高级查询 2. 基本查询 3. 用户、组、角色的查与改 4. 流程参数 5. IBA操作 6. 设置生命周期状态 7. 设置动态权限 8. 部件与文档之间 9. 持续化操作 10. Windchill设计模式
3
1、高级查询
• 添加查询类型 • 添加查询条件 • 联合查询 • 添加生命周期条件 • 执行查询 • 过滤出最新小版本
4
QuerySpec qs = new QuerySpec();//构造 Int index =
qs.appendClassList(WTPart.class,true);//添加 查询类型,获取类型索引,第2个参数表示 “要查询的类型、表” WhereExpression where = new SearchCondition(WTPart.class, WTPart.xx, “=”, xx);//泛型在WC API中的使用
prepareStatement(SQL); //执行查询 ResultSet rs = query.executeQuery(); //关闭数据库连接。 conn.close();
11
习题2
• 1、查询部件的最新小版本
输入:部件编码 输出:部件的最新小版本
12
3、用户、组、角色的查与改
• WC中承担者的类型结构 • 核心API:OrganizationServicesHelper
• 4、将用户添加到组和角色 输入:表示用户、组、角色的字符串 输出:若发生异常则抛出异常
17
Hale Waihona Puke 4、流程参数• 进程类型:WfProcess • 活动类型:WfAssignedActivity • 进程上下文:ProcessData • 进程变量:WfVariable
18
//获取活动 WfAssignedActivity activity =
5
//获取查询条件数目 If(qs.getConditionCount()>0 &&
qs.getWhere().endsWith(“)”)){ qs.appendAnd(); } //添加查询条件 qs.appendWhere(where, new int[]{index}); //** 以下是联合查询的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);
DataServicesRegistry.getDefault().getPdsFor(“ Default”); Connection conn = null; if(pds!=null){ conn = pds.getDataSource().getConnection(); }
10
//准备SQL语句 PreparedStatement query = conn.
6
//添加“生命周期”查询条件 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);
相关文档
最新文档