PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

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

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

[复制链接]

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

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

admin 楼主

2015-1-21 13:16:44

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

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

x

" |/ X6 ^$ c# C& ]Teamcenter C++二次开发源码分享:创建item和item版本; N; \7 l( A+ [( i% f- K8 P2 c$ P$ Y& c
3 a. N0 Z& L, ]  _
5 r( ~1 i- O" F8 N8 b% i% _
通过创建businessobject 指定的createinput 完成对象的创建/ m6 O- R5 {; r6 U* a) H* h- o
" |5 r( D- b( O6 ^% v% T

: U, [3 V: |0 S
  1. #include <constants/constants.h>1 R3 ]$ y5 {$ \+ n
  2. #include <TCcore/Item.hxx>
    & g" t! e: g' B. z9 b
  3. #include <metaframework/CreateInput.hxx>* G3 ^7 ^' v; O8 w! I
  4. #include <metaframework/BusinessObjectRegistry.hxx>& t- @( z4 g$ p0 e3 S& y/ w

  5. 6 r5 _" N7 X7 L% z8 Y4 L2 v' W
  6. using namespace std;: S. Y' z/ b3 ]( s# ^

  7. 3 m5 F1 A0 j3 W% @  j$ ^7 k
  8. static void createItemAndRevisionWithDifferentNames(void)
    3 q+ d7 u0 }* G: {4 i2 i* u) w
  9. {5 |; v. `7 f$ `5 w
  10.     int ifail = ITK_ok;& x* h5 N8 U0 l# ^/ K% s( O
  11. 8 g" ?' E( Z! z" |7 X( G
  12.     char type_name[] = "Item";) _3 X2 D6 O  s2 J/ K
  13.     Teamcenter::CreateInput* itemCreateInput = static_cast<Teamcenter::CreateInput*>(Teamcenter::BusinessObjectRegistry::instance().createInputObject(type_name, OPERATIONINPUT_CREATE));
    # s5 a; N3 e0 x2 J+ W% ~

  14. ! t( R# U4 s7 j. c
  15.     //Revision type name is not always <item type name>Revision
    + y8 T) d# S' C# m, N  i
  16.     char *revision_type_name = 0;
    2 o' J# K$ u9 X. J7 l
  17.     CONSTANTS_get_type_constant_value("ItemRevision", type_name, &revision_type_name);
    # v$ V4 p5 v* ?: ]- |( \+ B
  18. ! B* m4 d- Z4 G0 b+ S# P
  19.     Teamcenter::CreateInput* revCreateInput = static_cast<Teamcenter::CreateInput*>(Teamcenter::BusinessObjectRegistry::instance().createInputObject(revision_type_name, OPERATIONINPUT_CREATE));3 L3 T) q0 j0 ^* f$ @7 l
  20.    
    0 O& y3 A) K7 [; f4 V$ r1 W
  21.     MEM_free(revision_type_name);
    2 P+ C+ ]0 A9 U/ B6 A  t5 z2 ]) F- M

  22. ! E: p7 V! g5 c- _8 r$ W( ~+ P' V) G
  23.     // set Item properties
    ( L; S) e  `0 u8 c% g, r
  24.     itemCreateInput->setString("item_id", "1234567", false);1 j7 {& @9 `! w  n; ~* J
  25.     itemCreateInput->setString("object_name", "My Item Name", false);
    3 y. g' Z, t- @  F0 e8 I) I" Q: }2 \
  26.     itemCreateInput->setString("object_desc", "My Item Description", false);, @* N2 F( `( c9 Z
  27.     itemCreateInput->setTag("revision", revCreateInput->getTag(), false);9 A& f, \8 F8 k& O; m& y$ G
  28. ( n8 _6 ^1 E1 v
  29.     // set Revision properties. |! ?! y* ~' o* r( O! N% O' G
  30.     revCreateInput->setString("item_revision_id", "00", false);
    + |1 z- ?1 R% E( v  `, _1 u
  31.     revCreateInput->setString("object_name", "My Revision Name", false);
      B7 e% H% X4 P5 s- f  T
  32.     revCreateInput->setString("object_desc", "My Revision Description", false);
    & b/ ~! P3 T' H  p& J

  33. ) Z+ r; O6 G% ^
  34.     Teamcenter::Item *pItem = dynamic_cast<Teamcenter::Item *>(Teamcenter::BusinessObjectRegistry::instance().createBusinessObject(itemCreateInput));
    8 U' \$ G4 b, |6 D& G$ o
  35. 6 l8 m/ I1 x! B% l( q4 A
  36.     ifail = AOM_save_with_extensions(pItem->getTag());5 _% [, X6 y, a8 R. `( v3 }9 |: A( z
  37. / f+ A; `, z2 r8 k: z
  38.     // If the Revision is not saved it will inherit the Item's Name and Description.
    0 \5 h  N9 c; F2 C1 X$ E. P& R% n
  39.     ifail = AOM_save_with_extensions(revCreateInput->getTag());% w8 c6 b+ u9 C& N9 ^
  40. }
复制代码

  Z% u5 P# K; X6 j& O+ s  ?$ `. r# E  S, _9 Y2 u
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了