PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

PLM之家PLMHome-国产软件践行者

teamcenter C++二次开发源码分享:创建item和item版本

[复制链接]

2015-1-21 13:16:44 4980 0

admin 发表于 2015-1-21 13:16:44 |阅读模式

admin 楼主

2015-1-21 13:16:44

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
( j0 {0 Q% C* P% ~9 j
Teamcenter C++二次开发源码分享:创建item和item版本
4 {! T! ?) D% l5 G4 V* z& f/ v2 h3 k9 Y
( @: r) _5 K4 X! `5 i) _5 h
通过创建businessobject 指定的createinput 完成对象的创建
" H  v8 }, q2 Q5 |* V- K9 d5 ^. a
& ]2 A6 m; Z- r( V# l- h7 `. A" R& c! g  F/ m8 a7 @
  1. #include <constants/constants.h>8 O) m- ^* u$ @+ x
  2. #include <TCcore/Item.hxx>
    4 N7 d$ k5 w5 x' j. z
  3. #include <metaframework/CreateInput.hxx>
    - }5 F. c* n# B! ]
  4. #include <metaframework/BusinessObjectRegistry.hxx>
    % f, f0 D( X$ U! Z1 V
  5. $ ]* V6 W, ^. d3 P2 W" {  T% Q0 }
  6. using namespace std;, u" @% F3 i, R, i' W" U

  7. ) D# z; k  ~- W% m! S
  8. static void createItemAndRevisionWithDifferentNames(void)
    0 O2 I# D  o: w& W  d( x
  9. {
    ( o3 T3 X  D) ^: f; h
  10.     int ifail = ITK_ok;: J7 P- F  j* r& u/ C" @
  11. 6 r/ T" W! z0 n  n0 Z7 J
  12.     char type_name[] = "Item";. d3 ~% |/ N* Y, J5 e5 @6 h
  13.     Teamcenter::CreateInput* itemCreateInput = static_cast<Teamcenter::CreateInput*>(Teamcenter::BusinessObjectRegistry::instance().createInputObject(type_name, OPERATIONINPUT_CREATE));1 O1 c& K3 G& w
  14. ! b8 L! p2 {2 x8 L
  15.     //Revision type name is not always <item type name>Revision
    * k0 c- ~$ G6 M5 y
  16.     char *revision_type_name = 0;. L+ A* K6 G/ O; n+ K
  17.     CONSTANTS_get_type_constant_value("ItemRevision", type_name, &revision_type_name);
    . _( d9 ]" g, {5 V# W, }. f

  18. 3 E" c# s# @  C% E: {. g
  19.     Teamcenter::CreateInput* revCreateInput = static_cast<Teamcenter::CreateInput*>(Teamcenter::BusinessObjectRegistry::instance().createInputObject(revision_type_name, OPERATIONINPUT_CREATE));6 l! i9 `1 t* H# K1 X) {' @) U( }
  20.     & ]- w& k, a. I3 I. E
  21.     MEM_free(revision_type_name);. u3 o8 W3 W) L+ P- w" {( O3 ~
  22. 2 N" \  F& D. I+ @- U6 n) d  W
  23.     // set Item properties
    ) s9 m# V, }1 ~+ c0 a
  24.     itemCreateInput->setString("item_id", "1234567", false);( |+ _. ^$ B% p9 \
  25.     itemCreateInput->setString("object_name", "My Item Name", false);
    5 C8 b3 z) q  j! c- N
  26.     itemCreateInput->setString("object_desc", "My Item Description", false);3 {7 k* ^# l) P1 N. I- c0 J
  27.     itemCreateInput->setTag("revision", revCreateInput->getTag(), false);
    & Q0 R) t/ w$ N  _

  28. 6 a1 y# g7 @3 `
  29.     // set Revision properties& g+ o$ L# A2 v' a  |8 L
  30.     revCreateInput->setString("item_revision_id", "00", false);* w. n/ q% }" [
  31.     revCreateInput->setString("object_name", "My Revision Name", false);. W, C9 [2 L* ]3 L
  32.     revCreateInput->setString("object_desc", "My Revision Description", false);/ S4 N% X7 \* C) Q2 Z8 x9 z( D" E
  33. 6 d# p  g8 n. s; }5 S
  34.     Teamcenter::Item *pItem = dynamic_cast<Teamcenter::Item *>(Teamcenter::BusinessObjectRegistry::instance().createBusinessObject(itemCreateInput));7 f. Y1 o7 o1 f, v9 A) X9 a

  35. 2 r( b! t8 M9 s( n( u
  36.     ifail = AOM_save_with_extensions(pItem->getTag());9 v8 e/ |9 M4 ~  a
  37. 1 R/ C4 A' F7 `. K0 a+ Y' z, n
  38.     // If the Revision is not saved it will inherit the Item's Name and Description.
    4 z2 ~6 q3 H1 L0 j# i% B& l" G
  39.     ifail = AOM_save_with_extensions(revCreateInput->getTag());5 {; }+ T# m+ ]& U7 k* Y& s1 C
  40. }
复制代码
- ^3 g8 Z# z  G& Q

6 S3 M% _  j) z/ i# t: Z& h
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了