查看: 5679|回复: 0

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

[复制链接]

6

主题

4

回帖

60

积分

管理员

积分
60
发表于 2014-1-15 19:35:45 | 显示全部楼层 |阅读模式

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

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

×
Teamcenter ITK二次开发源码分享: 替换命名引用name reference
) o6 h9 a" d( Y! |3 L( \0 n4 ]$ w* F& p0 Z# K5 p* L6 a# _4 D
; {+ e: Q& [7 L+ a4 ^2 d) S
  1. #include <ae/dataset.h>
    5 A0 P* B+ w& d9 V1 J* L
  2. #include <sa/TCfile.h>
    5 I$ O$ J( K( L" |, I
  3. #include <tccore/aom.h>8 F, i% W# ^' M# i2 q
  4. #include <sa/tcfile_cache.h>; d! U: A* N, w/ l7 y

  5. % ^9 J* y0 l6 ^( M: R
  6. static void
    / X% J+ G9 w# J
  7. (tag_t dataset_tag, tag_t old_file,
    / I7 h9 x+ B1 A5 L0 Q/ M
  8.             char *new_file_path, char *ref_name)
    ' j# e' x8 x" ]# j& V/ Z, `# }/ ^4 ]
  9. {. `+ N, _* c" Z7 \
  10.     IMF_file_data_p_t file_data;8 h2 l; u9 \6 T" L
  11.     IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));6 J1 _& W8 ]' _+ Y" l1 M$ N5 I/ \
  12. * O8 ]% [5 n" u" H4 z
  13.     tag_t new_file_tag = NULLTAG;
    1 }; l. J  @6 m- V4 i
  14.     IFERR_REPORT(AOM_lock(old_file));! Y3 ~+ {) ~( k8 w0 }. X7 w) A  G
  15.     IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,- W& D8 c1 }) v% L3 N" C6 i, r* q
  16.         FALSE, &new_file_tag));
    ; l4 |: h. Q1 w% a! B- G- ^

  17. + E: Z9 M. b( Z/ `4 _
  18.     IFERR_REPORT(AOM_lock(dataset_tag));
    . C/ z% |. D! U$ G6 K# @0 ]
  19.     IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,3 |, @1 ~; t( b2 n' G
  20.         AE_PART_OF, new_file_tag));; B& D! \& J2 G6 @' W! B3 q

  21. 4 ?1 T/ u, [6 @$ A
  22.     IFERR_REPORT(AE_save_myself(dataset_tag));
    % P1 x$ f- V( I3 a0 g: `# L
  23.     IFERR_REPORT(AOM_unlock(dataset_tag));
    ; M4 Z4 }' w+ e1 i& C; G& d
  24.     IFERR_REPORT(IMF_release_file_access (&file_data));
    7 r5 X! D) i8 t& g7 }

  25. ' ~! M/ S, H& w# I8 A
  26.     /* assuming the old file should be deleted */- t1 K( R6 {& |* p3 V/ a+ l
  27.     IFERR_REPORT(AOM_lock_for_delete(old_file));# s4 Q5 R3 {# |9 g* W
  28.     IFERR_REPORT(AOM_delete(old_file));; T& x# Z4 V( f& z: y, x  T
  29. }
复制代码

1 Q' v  w! ]' F: n8 h1 g: n
! q) D- F/ G0 P" c) X
1 s2 L6 A. F* F
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

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

本版积分规则

在本版发帖
关注公众号
QQ客服返回顶部