Teamcenter二次开发培训
TEAMCENTER二次开发课程大纲
第一天课程安排:
第一课:Teamcenter数据模型及其相关概念:
第一课目标:帮助学员了解Teamcenter数据模型,掌握数据模型相关概念,并能根据业务需要创建相关数据模型。
- Teamcenter数据模型
- Teamcenter 类Class
- Teamcenter类层次结构
- Teamcenter核心类
- Teamcenter类型/业务对象Type/Business Object
- Teamcenter类型层次结构
- Teamcenter类型与类的区别
- Teamcenter 主类型与子类型Primary Type&Sub-Type
- Teamcenter属性Attribute/Property
- Teamcenter 属性Attribute
- Teamcenter属性Property
- Teamcenter 属性Attribute与Property的区别
- Teamcenter方法Method
- Teamcenter类型方法Type behavior(eg, save,delete,create,etc)
- Teamcenter属性方法Property method(eg, ask, set, and initialize,etc)
- Teamcenter 消息Message
- Teamcenter方法扩展添加节点,
-
- Pre-condition
- Pre-action
- Base action
- Post-action
-
- Teamcenter 类Class
- 演示与练习
- 在BMIDE中演示创建类,类型(主类型与子类型),属性和方法。
第二课:Teamcenter服务器端开发ITK (一) :
第二课目标:帮助学员学员了解ITK开发分类,每一种类型分别满足哪些业务需求;掌握ITK开发的环境配置和开发流程,并能使用IDE工具调试Debug程序。
-
- External ITK:可单独执行的执行文件,即batch program
- Internal ITK:必须经由Rich Client 或Thin Client 接口予系统内使用
- User Exits标准产品功能的一个功能扩充点
-
- Existing Required Callbacks,如“Assign”
- CR & EPM Handlers,Action handler和Rule handler
- Methods( Business Modeler Extensions,BMF)
-
- User Services(Server Exits)(必须搭配Rich Client programming)
- Custom Exits(在%TC_ROOT%\sample 目录内,函数名称以USER_或USERSERVICE_开头的,均可以采用Custom Exits 方式改写)
- ITK开发调试编译执行环境配置
- 开发调试环境配置
- External ITK批处理文件编译链接行
- Internal ITK(user exits,server exits或custom exits)编译链接执行
- 演示与练习
- 以External ITK批处理文件为例,演示ITK开发的环境配置和开发流程,并调试debug源代码。
第三课:Teamcenter服务器端开发ITK (三) :
第三课目标:帮助学员了解ITK编程规范,掌握ITK编程的基本知识;熟悉常用ITK函数和模块,掌握查找ITK 函数技能。
- ITK编程规范Programming Conventions
- ITK 函数格式
- ITK头文件
- ITK实例文件
- ITK 帮助文件
- ITK tag_t数据类型data type
- 内存管理memory management
- 错误消息处理Error Message Handler (EMH)
- 常用ITK函数Common ITK functions
第二天课程安排:
第四课:Teamcenter服务器端开发ITK (四) :
第四课目标:以企业真实案例为例,讲解User Exits用户客户化功能扩展-修改默认行为,帮助学员掌握UserExits用户客户化功能扩展开发方法。
- 客户化功能扩展点,修改默认行为User Exits Existing Required Callbacks
- 示例:修改自动产生Find Number 的规则,,由10, 20, 30...变成001, 002, 003
- 需要修改的内建函数为USER_ask_for_new_sequence_no() 与USER_ask_new_seq_no()
- 先在 site-name_register_callbacks() 函式内定义
- 编写新的函数CUST_ask_for_new_find_no() 与CUST_ask_new_findno()
- 编译,链接,测试
- 演示与练习
- 演示修改自动产生Find Number 的规则,,由10, 20, 30...变成001, 002, 003。
第五课:Teamcenter服务器端开发ITK (五) :
第五课目标:以企业真实案例为例,讲解User Exits用户客户化功能扩展-工作流程handler,帮助学员掌握工作流程handler开发方法.
- 客户化功能扩展点,实现工作流程Handlers User Exits Workflow Handlers
- Handler是使用于流程中,分为rule handler 与action handler
- Actions Handler 必须指定于task 的action 中执行
- 定义 Handler 的步骤
- 需要修改的基本函数为 USER_gs_shell_init_module()
- 先在 site-name_register_callbacks() 函式内定义
- 在cust_init.c 文件中,编写新的函数 CUST_init_module(),注册handlers
- 编写action handler/rule handler 要执行的函数
- 编译,链接,测试
- 演示与练习
- 演示rule handler与action handler的开发。
第六课:Teamcenter服务器端开发ITK (六) :
第六课目标:以企业真实案例为例,讲解User Exits客户化功能扩展点,业务模型框架方法扩展机制User Exits Business Modeler Framework (BMF),帮助学员掌握工作流程BMF开发方法.
-
- 客户化功能扩展点,业务模型框架方法扩展机制User Exits Business Modeler Framework (BMF)
- 在BMIDE中定义Library
- 添加扩展extension
-
- Name为程序中函数的名称
- Language选择ANSI_C,(或CPlusPlus,使用BMIDE自动生成代码)
- Library填入dll 的文件名称(通过浏览按钮选择之前上一步新建的库名)
- 指定为Type 或Property
- 选择Operation Name
- 依据选择的Business Object有不同的operation 列表
- 选择Extension Point
- 选择PostAction、PreAction 或PreCondition
- 选择 Business Object 后,按右键开启Extension Rules 面板
- 选择Operations 或Properties 中的message
- 选择Extension Point 为PostAction、PreAction 或PreCondition
- 按Add,指定extension 到该extension point
- 编译,链接和测试
-
- 演示与练习
- 演示业务模型框架方法扩展机制User Exits Business Modeler Framework (BMF)的开发。
第三天课程安排
第七课:Teamcenter服务器端开发ITK (七) :
第七课目标:以企业真实案例为例,讲解用户服务扩展Server Exits User Services,帮助学员掌握用户服务扩展开发方法.
-
- 客户化功能扩展点,用户服务扩展Server Exits User Services
- User Services 无法单独被执行,必须由Rich Client 呼叫
- 定义User Services 的步骤
- 需要修改的基本函数为 USERSERVICE_register_methods()
- 先在 site-name_register_callbacks() 函式内定义
- 在文件cust_server_exits.c 编写新的函数CUST_register_methods(),注册user services
- 编译,链接和测试
- 客户化功能扩展点,用户服务扩展Server Exits User Services
- 演示与练习
- 演示用户服务扩展的开发。
第八课:Teamcenter富客户端开发Rich Client Programming (一) :
第八课目标:帮助学员了解富客户端开发的分类,每一种类型分别满足哪些业务需求;掌握富客户端开发的环境配置和开发流程,并能使用IDE工具调试Debug程序。
- Teamcenter富客户端开发Rich Client Programming(一)
- 富客户端Rich Client开发环境Eclipse设置
- 富客户端Rich Client开发步骤
- 客户化快捷菜单Customize Shortcut Menus
- 客户化快捷菜单Customize Shortcut Menus
- 客户化工具栏Customize the Toolbar
- 客户化菜单栏Customize the Menu Bar
- 富客户端错误处理Error Control
- 客户化表单和属性显示Customize Form and Properties Display
- 演示与练习
- 演示客户化快捷菜单的开发流程。
第九课:Teamcenter富客户端开发Rich Client Programming (二) :
第九课目标:帮助学员了解客户化表单和属性显示,重点掌握Abstract rendering和XML style sheet。
- Teamcenter富客户端开发Rich Client Programming(二)
- 客户化表单和属性显示Customize Form and Properties Display
- 使用Abstract rendering
- 使用JavaBean
- 使用XML style sheet
- 使用Automatic forms
- 客户化表单和属性显示Customize Form and Properties Display
- 演示与练习
- 演示使用Abstract rendering客户化表单的开发流程
第四天课程
第十课:Teamcenter富客户端开发Rich Client Programming (三) :
第十课目标:帮助学员了解常用富客户端开发的API函数,常用包,从而掌握怎样查找富客户端开发的API函数。
- Teamcenter富客户端开发Rich Client Programming(三)
- 常用富客户端开发API
- 常用富客户端开发包
- 演示与练习
- 演示使用怎样查找富客户端开发API.
第十一课:Teamcenter富客户端开发Rich Client Programming (四) :
第十一课目标:通过讲解企业真实开发案例,帮助学员掌握最常用的几种富客户端开发的开发方法和技巧。
- Teamcenter富客户端开发Rich Client Programming(四)
- 客户化New Item, New Dataset, New Form, Revise, SaveAs等操作
- 客户化流程启动对话框New Process Dialog
- 客户化BOM Structure操作,如根据业务需求,重构或生成新BOM Structure
- 演示与练习
- 演示以上富客户端开发实例.
第十二课:Teamcenter富客户端开发Rich Client Programming (五) :
第十二课目标:通过讲解企业真实开发案例,帮助学员掌握User Services的富客户端程序开发,从而掌握用户服务客户化的开发流程。
- Teamcenter富客户端开发Rich Client Programming(五)
- User Services的富客户端
- User Services的富客户端对服务器端的调用
- 演示与练习
- 演示用户服务富客户端开发实例.
第五天课程
第十三课:Teamcenter瘦客户端开发Thin Client Programming:
第十三课目标:帮助学员了解瘦客户端基本目录结构,部署方法, 实现原理和脚本结构,能掌握基本的瘦客户端开发知识。
- Teamcenter瘦客户端开发Thin Client Programming
- Thin Client基本目录结构
- Thin Client部署方法
- Thin Client实现原理
- TCScript结构
- 演示与练习
- 演示瘦客户端开发实例.
第十四课:Teamcenter SOA开发:
第十四课目标:帮助学员了解Teamcenter SOA的架构,常用SOA Service,开发步骤,从而掌握Teamcenter SOA开发基础知识。
- Teamcenter SOA开发
- Teamcenter SOA 架构
- 常用SOA Service
- 开发SOA服务的步骤
- 演示与练习
- 演示Rich Client端调用自定义SOA服务.
第十五课:Teamcenter开发培训回顾,总结与答疑:
第十五课目标:帮助学员回顾几天培训课程,复习相关知识,帮助学员解答疑难问题,并提出建设性意见。