查看: 5762|回复: 0

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

[复制链接]

2477

主题

1280

回帖

8万

积分

管理员

PLM之家站长

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

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

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

×
Teamcenter ITK二次开发源码分享: 替换命名引用name reference5 n9 J) V. N% n/ b( ~4 ^
3 u2 V' s9 ^) Q  ?" ]; ?+ |+ N. c3 A

  h" J. ^! y2 n1 [: ?3 R
  1. #include <ae/dataset.h>- s' W! b) W6 M2 T4 O
  2. #include <sa/TCfile.h>7 m3 a+ ]. q  r" B& u# V
  3. #include <tccore/aom.h>5 v1 x1 @  F' f
  4. #include <sa/tcfile_cache.h>
    / T: u/ X1 N: v# ~

  5. , A5 W- n& b" S4 D/ |+ M; D
  6. static void , }& l/ m6 p( r/ g% F; z- C
  7. (tag_t dataset_tag, tag_t old_file,
    $ t2 y7 I1 v1 q8 |4 M1 s
  8.             char *new_file_path, char *ref_name)( ?3 D3 Z9 p1 d, b
  9. {
    5 d3 R3 F, c7 {6 q, F
  10.     IMF_file_data_p_t file_data;4 V. ^: X; ^( ^8 `5 Y/ V. w# b0 d
  11.     IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
    3 i' ]- U: q5 ]! t, L! i; @; {
  12. : Y( m" e8 v6 ]1 {, g7 e+ y" _
  13.     tag_t new_file_tag = NULLTAG;& {) H( E: i6 _  m% T
  14.     IFERR_REPORT(AOM_lock(old_file));
    ) p* y6 }) l0 {4 Q
  15.     IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,) P8 n$ m4 ^# g, y8 a
  16.         FALSE, &new_file_tag)); 7 ]: @' X6 {+ |$ q7 O* ]
  17. / l& ~$ z1 E5 e/ t0 V! A
  18.     IFERR_REPORT(AOM_lock(dataset_tag));/ w, ]# ~. E5 j4 c) V( v% b& r7 y4 L
  19.     IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,- x4 I- ^) I( Y0 s: m9 h
  20.         AE_PART_OF, new_file_tag));, e" z. {8 P* F" e! {. f

  21. 2 B% D9 p4 ?& q1 R! J+ o
  22.     IFERR_REPORT(AE_save_myself(dataset_tag));
    $ `) C- M" O9 J+ `: j
  23.     IFERR_REPORT(AOM_unlock(dataset_tag));
    ' R. v+ e0 a0 w* G
  24.     IFERR_REPORT(IMF_release_file_access (&file_data));9 I2 D8 t! w8 P. Y7 I8 K
  25. % A- d. f3 U5 p4 e5 e, L, e
  26.     /* assuming the old file should be deleted */5 t; e& F4 G# p- }
  27.     IFERR_REPORT(AOM_lock_for_delete(old_file));
    0 c. F  s$ W4 `
  28.     IFERR_REPORT(AOM_delete(old_file));
    5 K  D. D' I2 |  a/ s
  29. }
复制代码
+ a+ y$ f: }! e9 _; N

+ d! ]' r6 x# ~9 R

$ w3 {! ]8 K" ]+ U+ V
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

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

本版积分规则

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