|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
4 X" ?/ h' s- u$ F' _0 D+ e7 aTeamcenter 二次开发源码分享:替换数据集dataset的引用集, k0 v" a( G% C- @; w
$ A% C$ |5 c9 }, u- y
9 j: x: c! [+ W- ^2 s/ ]7 a#include <ae/dataset.h>
. ~$ W& z# l3 F1 g#include <sa/TCfile.h>
; A9 S/ o) [4 T8 z$ u#include <tccore/aom.h>0 G8 K, j4 Q) A0 L2 A/ d& A& h5 D
#include <sa/tcfile_cache.h>' `! k9 C9 E+ b
1 }! X7 _# n% s p" I
static void replace_dataset_named_reference(tag_t dataset_tag, tag_t old_file,
. q! R0 y7 _. @: t0 s$ p char *new_file_path, char *ref_name)
- ~. z% v L/ K. q( i+ V{7 ~4 Y" s: t6 J0 [
IMF_file_data_p_t file_data;2 Z! @+ z% b9 _7 B, Z
IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));, @: c1 N1 P! p. j. J) U( C
( d' r; {2 ?1 I# k2 r3 J D9 G tag_t new_file_tag = NULLTAG;4 a; ]" s1 } \! s6 n. x' L
IFERR_REPORT(AOM_lock(old_file));* v- p& P G D6 H
IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,
* g# T+ k1 @( r% I FALSE, &new_file_tag));
, q- e0 g5 x: c
4 l6 L }" E- ^4 Y$ i IFERR_REPORT(AOM_lock(dataset_tag));0 ^* d( ]- E* p- z3 f
IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,; e) }3 i9 ]) X# _: s* W/ X6 q
AE_PART_OF, new_file_tag));7 h* ~1 s$ {0 N( |0 V! s2 Z! o
5 }( F/ r; c( \6 o1 Z d8 j IFERR_REPORT(AE_save_myself(dataset_tag));
" c' Z+ R! q+ _0 H. @ IFERR_REPORT(AOM_unlock(dataset_tag));, p9 B! j. n0 q7 X
IFERR_REPORT(IMF_release_file_access (&file_data));2 g" o; ?& c* f1 u9 M
* `' ]/ ^; A5 h: J, C F# Q6 Y/ n" G /* assuming the old file should be deleted */
& g, F: O. W% d IFERR_REPORT(AOM_lock_for_delete(old_file));
# r3 H& X: U& }6 t1 z IFERR_REPORT(AOM_delete(old_file));" O" g3 H' G/ q! a* |) t5 H* j
}
1 B' ]; W- z0 S0 ~) k" w' `0 P9 E
/ R. H, J6 m O: l8 p% u) ]0 X |
|