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

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

admin 楼主

2015-1-21 13:16:44

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

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

x
0 b* M+ f) |' j  n1 b) H8 [
Teamcenter C++二次开发源码分享:创建item和item版本
; Z( \; d( w& y4 Q# x
" l4 W) f: F9 _9 J8 _/ n
- f, H3 O! c: ~' y6 i, v/ E0 Y+ U
通过创建businessobject 指定的createinput 完成对象的创建; _) P+ X+ s! o# F4 c$ _  c" N

+ t) g6 r$ n5 p3 y: |6 r( a% T* V$ @
  1. #include <constants/constants.h># [0 `; j' L' f: T+ ^
  2. #include <TCcore/Item.hxx>  ]7 {) t, G4 |0 Q8 k2 |4 I
  3. #include <metaframework/CreateInput.hxx># `- _, q" q" E5 |% F8 u! t: @0 j
  4. #include <metaframework/BusinessObjectRegistry.hxx>
    , C( J* \9 m% O% {4 E7 y

  5. . Z  R7 N* H: N" g
  6. using namespace std;0 @' L, h1 |: _- l; E- D+ h

  7. ; A5 j. ]! ]3 U" `* y. S
  8. static void createItemAndRevisionWithDifferentNames(void)
    9 K# k" B; l- ~! q, x% w
  9. {7 |/ J4 W, @( F/ k: _2 h: X4 _
  10.     int ifail = ITK_ok;6 b5 S  x3 g$ c) X

  11.   Y+ r5 `6 a6 {8 p( j5 f
  12.     char type_name[] = "Item";
    ( m7 p* s& @9 p" P
  13.     Teamcenter::CreateInput* itemCreateInput = static_cast<Teamcenter::CreateInput*>(Teamcenter::BusinessObjectRegistry::instance().createInputObject(type_name, OPERATIONINPUT_CREATE));
    9 S( J- I/ d$ ~' E3 N, h
  14. ) u6 o. F! Q4 X( E6 o
  15.     //Revision type name is not always <item type name>Revision! y: _$ ?* E4 c$ u" f8 l8 ]
  16.     char *revision_type_name = 0;
    . G3 \5 Z$ G5 M+ u# }) j
  17.     CONSTANTS_get_type_constant_value("ItemRevision", type_name, &revision_type_name);
    0 D9 R2 r1 |5 _. X

  18. 8 p4 R6 w6 Y: x; s3 @
  19.     Teamcenter::CreateInput* revCreateInput = static_cast<Teamcenter::CreateInput*>(Teamcenter::BusinessObjectRegistry::instance().createInputObject(revision_type_name, OPERATIONINPUT_CREATE));7 p1 ], U& F- H8 k" A' ^" F
  20.    
    1 V+ W, a& Z) x* k) ~
  21.     MEM_free(revision_type_name);; O; b6 E+ [9 k, [3 X% [

  22. ' |% W7 a1 s4 G* P% y5 O* u
  23.     // set Item properties
    % ]5 ~- x; P- j' }5 D4 p) K; k" B/ R
  24.     itemCreateInput->setString("item_id", "1234567", false);
    ( R* u$ E  L4 v: T; A
  25.     itemCreateInput->setString("object_name", "My Item Name", false);
    - N  d! t3 o. N3 H; Q% K' h
  26.     itemCreateInput->setString("object_desc", "My Item Description", false);* Z, g( w. c; j5 h& B
  27.     itemCreateInput->setTag("revision", revCreateInput->getTag(), false);6 v4 l( _% p# T6 C

  28. 3 V: ~5 D3 O: B+ G7 D  H! ?0 q. v
  29.     // set Revision properties# R7 D: b; F/ ?* `- x" a9 d- G, c1 y
  30.     revCreateInput->setString("item_revision_id", "00", false);
    / C( d. K& G3 |
  31.     revCreateInput->setString("object_name", "My Revision Name", false);
    0 [6 j0 V+ f' w/ b+ @' x9 J! x
  32.     revCreateInput->setString("object_desc", "My Revision Description", false);
    * ~  l1 Q- Z$ P9 K9 ^, b

  33. 8 i  Q5 z6 A5 F" t9 l
  34.     Teamcenter::Item *pItem = dynamic_cast<Teamcenter::Item *>(Teamcenter::BusinessObjectRegistry::instance().createBusinessObject(itemCreateInput));3 |) e2 C. |1 U

  35. - u/ h$ d  a; `, _. B' x8 t
  36.     ifail = AOM_save_with_extensions(pItem->getTag());7 s7 p$ R' l8 W. c% B

  37. ! I, R+ U) e! ]: w
  38.     // If the Revision is not saved it will inherit the Item's Name and Description.
    ! l, W2 `) R; ]& r0 e
  39.     ifail = AOM_save_with_extensions(revCreateInput->getTag());
    4 S$ p& B% q- R$ c* ^( b  r- Q" b# y
  40. }
复制代码

- w8 k/ W: X$ A5 a9 ~
8 B  a6 f: k7 Z# O- P/ x
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了