PLM之家PLMHome-工业软件与AI结合践行者

teamcenter ITK二次开发源码分享: 替换命名引用name reference

[复制链接]

2014-1-15 19:35:45 5375 0

admin 发表于 2014-1-15 19:35:45 |阅读模式

admin 楼主

2014-1-15 19:35:45

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

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

x
Teamcenter ITK二次开发源码分享: 替换命名引用name reference( d- L7 L2 R! L0 O) d

5 R3 a: q7 I1 c0 ?% c3 J& ~
- H6 c( B- B: Y% C4 b. _
  1. #include <ae/dataset.h>; t3 A( O% B8 C( \: ]8 |4 Z1 p9 x
  2. #include <sa/TCfile.h>, Y7 f2 K2 g. z& B
  3. #include <tccore/aom.h>) z( U/ J' R" \& m" w  J5 h
  4. #include <sa/tcfile_cache.h>
    ' q9 q6 L; H: E- e
  5. : e+ i/ n9 c3 y0 l( Q
  6. static void " b1 ~9 Y, g" C6 h, `6 \9 ^
  7. (tag_t dataset_tag, tag_t old_file,
    ( n9 M0 H7 C; A/ A) F& T* k
  8.             char *new_file_path, char *ref_name)
    + k9 u6 I6 t5 b$ q1 J5 t' b. a
  9. {- r* g8 W4 R& m( U9 ^6 ~2 [' X
  10.     IMF_file_data_p_t file_data;: h" M6 s* D5 t% k3 x7 c
  11.     IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
    ) g+ G2 \8 t- ?/ @0 s# }( X8 R
  12. + b$ \, l* z0 W
  13.     tag_t new_file_tag = NULLTAG;
    / ~6 E( K: e% Y' R1 K
  14.     IFERR_REPORT(AOM_lock(old_file));6 V% M, G$ b$ _8 O2 V+ K
  15.     IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,
    ) ^/ p5 X, }+ I! j2 x# T0 o- f! v+ z1 A
  16.         FALSE, &new_file_tag)); 5 Z4 O- L; l, E4 h

  17. . F  R' @. M( D7 D
  18.     IFERR_REPORT(AOM_lock(dataset_tag));
    " n$ y* x, o' E: {2 A5 b& @1 |
  19.     IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,6 N; u& i5 a+ w1 \
  20.         AE_PART_OF, new_file_tag));
    ( J6 i2 X% _. N; c: m- l

  21. 1 |7 X4 ^5 n7 y+ a
  22.     IFERR_REPORT(AE_save_myself(dataset_tag));) [7 R$ C" b1 n2 Q
  23.     IFERR_REPORT(AOM_unlock(dataset_tag));
    - T) ?- ]9 P! z- Y% D! \7 G
  24.     IFERR_REPORT(IMF_release_file_access (&file_data));2 ~+ t' j3 V3 x) V

  25. 3 L7 o$ E3 i7 P, z7 l% H
  26.     /* assuming the old file should be deleted */
    ) A6 Z$ @/ l  Y9 T: Y, a* h
  27.     IFERR_REPORT(AOM_lock_for_delete(old_file));
    6 w9 W# N+ E  T: D! X
  28.     IFERR_REPORT(AOM_delete(old_file));
    7 r! ^$ E- l1 W) K
  29. }
复制代码

& I  i/ W2 u- Y5 d) K
: U7 u! a3 d7 X6 r
0 ]5 v$ j! Z) |
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了