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

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

[复制链接]

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

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

admin 楼主

2014-1-15 19:35:45

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

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

x
Teamcenter ITK二次开发源码分享: 替换命名引用name reference
( X/ r. M# s6 c( P# X6 A. T4 W1 m

5 P8 V& f$ ]4 O: l
  1. #include <ae/dataset.h>; X' |: N! }$ c/ u# Z+ |4 F' W
  2. #include <sa/TCfile.h>) F  N: h3 k4 s* a9 c3 @
  3. #include <tccore/aom.h>: Z0 f3 ?& b/ @4 e9 s: x
  4. #include <sa/tcfile_cache.h>( [1 s: b$ j! X8 q! V. b1 H

  5. / T6 F8 i+ n  h! W( p/ N( _
  6. static void ' t7 e% W: Z4 y
  7. (tag_t dataset_tag, tag_t old_file,; C4 V& w8 A0 g: b5 D6 d1 y
  8.             char *new_file_path, char *ref_name)
    / h0 G7 l8 O4 m( g4 d- s
  9. {
    : g/ i4 a0 h2 w
  10.     IMF_file_data_p_t file_data;, D1 x2 K# V2 R$ Q2 }, i
  11.     IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
    ! \+ S8 T' d) r# R! v" R
  12. ) U1 P: M9 H* B) G
  13.     tag_t new_file_tag = NULLTAG;
    7 b' w# g% s) B2 Y
  14.     IFERR_REPORT(AOM_lock(old_file));
    ) ~" l% W: f6 K# g
  15.     IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,
    1 t# @4 W0 J* S) r7 ^
  16.         FALSE, &new_file_tag));
    ) |7 v0 `" x  G6 m% m. g; c9 m( q

  17. 5 d" [1 m! s0 v9 L9 O0 e
  18.     IFERR_REPORT(AOM_lock(dataset_tag));' z0 r$ |) r6 P- f9 n
  19.     IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,
    : f* y& c8 X* o% m
  20.         AE_PART_OF, new_file_tag));  t" P/ U& d& j' D9 F5 p
  21. ! v% s' o8 }: S( e/ L, F9 z
  22.     IFERR_REPORT(AE_save_myself(dataset_tag));
    $ I. S, Z* t$ m( r* D2 d# @- j
  23.     IFERR_REPORT(AOM_unlock(dataset_tag));9 r2 B# ^8 m: e  j
  24.     IFERR_REPORT(IMF_release_file_access (&file_data));; h/ |; \) v6 z: E6 D9 x
  25. & Y8 r; D& u7 N9 q% V1 i- [
  26.     /* assuming the old file should be deleted */
    ! O6 L  d- m( [" G( I: ^
  27.     IFERR_REPORT(AOM_lock_for_delete(old_file));3 l7 y/ I+ ^2 Y' E+ ?
  28.     IFERR_REPORT(AOM_delete(old_file));
    . |% Z! \0 e  W2 P- F
  29. }
复制代码
, j( L( j* B3 [" ]& @' q7 B+ B8 @$ U

6 Y7 u/ A  ^, Y2 `- I0 n5 `

9 N  e) N: S( R+ U5 a
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了