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 4958 0

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

admin 楼主

2015-1-21 13:16:44

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

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

x
- `6 X8 K& ^! j8 Y* Q, u% H
Teamcenter C++二次开发源码分享:创建item和item版本
8 R. w; C$ |  V; J. e' _7 a# n; x/ e

5 V1 n; M  y. y" i2 G通过创建businessobject 指定的createinput 完成对象的创建3 t1 i2 w, t4 R5 m' S( E2 a7 v$ r
2 g; e# U. h  }5 y+ B3 c
+ k' a' ~- ^; f" m
  1. #include <constants/constants.h>. L; _( p9 D" }( _; g
  2. #include <TCcore/Item.hxx>
    3 A! ^0 S6 f0 O0 p+ t( x
  3. #include <metaframework/CreateInput.hxx>
    : s7 r) U* I! n
  4. #include <metaframework/BusinessObjectRegistry.hxx>/ d  y0 I8 S$ z) W
  5. 0 G# K# ~- \  `, R: `  A
  6. using namespace std;
    . `* ~7 y7 U; _& O6 D7 x+ c# m

  7.   E& G5 c8 B, _8 v0 d. f, e& P# f
  8. static void createItemAndRevisionWithDifferentNames(void)
    . Q5 g2 s5 u, P' k% V
  9. {
    , U" h6 @: d0 h' m8 R
  10.     int ifail = ITK_ok;
    6 U5 m6 m: B7 G! h
  11. " o) V8 j# ]% ~
  12.     char type_name[] = "Item";" k& v$ n+ C' A8 R) _$ q: c1 r& q' E
  13.     Teamcenter::CreateInput* itemCreateInput = static_cast<Teamcenter::CreateInput*>(Teamcenter::BusinessObjectRegistry::instance().createInputObject(type_name, OPERATIONINPUT_CREATE));5 E) E' s' L9 h

  14. 6 V7 W* o- ]5 U0 L9 _2 p! T2 y/ m
  15.     //Revision type name is not always <item type name>Revision
    0 C1 B: q' ~- a% G1 M
  16.     char *revision_type_name = 0;. B" _2 T  c: X) W) }; P5 Z1 E
  17.     CONSTANTS_get_type_constant_value("ItemRevision", type_name, &revision_type_name);
    ) ~6 N( a# `$ g; U3 Q, P, D" R* ^
  18. - q; e9 E& g: X4 V
  19.     Teamcenter::CreateInput* revCreateInput = static_cast<Teamcenter::CreateInput*>(Teamcenter::BusinessObjectRegistry::instance().createInputObject(revision_type_name, OPERATIONINPUT_CREATE));; F/ u2 I' Q% s7 H, v" f3 a
  20.    
    / S& d9 x. `1 X$ {
  21.     MEM_free(revision_type_name);4 e: I! M- D. ]( ]1 M
  22. 5 W/ M# v; u0 H: K* V% L/ P
  23.     // set Item properties
    2 v# k9 ~; ~1 S2 V6 a
  24.     itemCreateInput->setString("item_id", "1234567", false);
    1 [. c: V0 [, O3 R0 Z! c6 p& }# l# {5 ~! t
  25.     itemCreateInput->setString("object_name", "My Item Name", false);
    ( [+ m+ g( s- T% W- Y
  26.     itemCreateInput->setString("object_desc", "My Item Description", false);
    * m5 l& E4 C7 b9 T7 D
  27.     itemCreateInput->setTag("revision", revCreateInput->getTag(), false);
    ; Z$ S% v) Z1 U3 K" p! O
  28. # g' V# l$ ~; H) E! h# D
  29.     // set Revision properties
    3 D/ J: @* e$ t
  30.     revCreateInput->setString("item_revision_id", "00", false);
    , j9 _8 A& _* x0 Y9 R
  31.     revCreateInput->setString("object_name", "My Revision Name", false);
    7 j  {9 u* Z7 T3 `: D
  32.     revCreateInput->setString("object_desc", "My Revision Description", false);, S' H7 L( f3 ~  d

  33. 2 e! u8 a0 X! O" e; `* v% N
  34.     Teamcenter::Item *pItem = dynamic_cast<Teamcenter::Item *>(Teamcenter::BusinessObjectRegistry::instance().createBusinessObject(itemCreateInput));6 z& a+ p* _5 u4 @. F

  35. " b% T; Q: t4 _7 I% w3 e* Y' M9 Q
  36.     ifail = AOM_save_with_extensions(pItem->getTag());
    # Z! w( N, l% A  Y4 t
  37. + w; w4 g3 o8 D0 y7 }
  38.     // If the Revision is not saved it will inherit the Item's Name and Description.
    , C! u) h/ Y2 a% L. ~4 h. G
  39.     ifail = AOM_save_with_extensions(revCreateInput->getTag());
    6 C9 [- a0 t0 w2 p. K4 v/ i
  40. }
复制代码

& {9 M) z& `# }! j# I1 P
! {) C& `; [8 c+ w
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了