|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
) G% B$ s" Z7 @1 Y2 E2 E2 VTeamcenter 二次开发源码分享:替换数据集dataset的引用集
z# |- v/ y! m$ I/ P
+ s" e$ K+ R8 Y0 D" N! {# C) I5 g$ P& L) Y3 ]7 B3 ?1 Q" w! Y
#include <ae/dataset.h>
% _+ q* N2 T v! a7 I: t#include <sa/TCfile.h>
1 ]/ V) X- k8 z7 q! u2 `#include <tccore/aom.h>
. y) t3 l t% }1 O1 D#include <sa/tcfile_cache.h>* l0 v L8 _3 M# w; g
' t& A( J) \ v3 _( ?# h; m7 n4 lstatic void replace_dataset_named_reference(tag_t dataset_tag, tag_t old_file,
1 V8 k2 ^, X1 t! V; p( q char *new_file_path, char *ref_name)% H, Q: }8 \4 l& Q3 R
{
$ {: B4 T$ t0 G- g: i IMF_file_data_p_t file_data;
' x7 u. O& {( @& v, y% T' U, Q IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
9 c/ L, Z9 N# B) n7 `* g2 _" @! F( o h" j, ~1 b
tag_t new_file_tag = NULLTAG;, b2 k0 v) k3 U
IFERR_REPORT(AOM_lock(old_file));8 C! J P/ T; z* w& F
IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,
6 b \& f1 `9 o* S! l FALSE, &new_file_tag));
1 Q6 r$ `) C5 y/ l" a! i! s4 F
2 @. f q# J- o' g `3 A IFERR_REPORT(AOM_lock(dataset_tag));4 l0 M& X* u# s, E2 B
IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,
$ D2 ?1 X! @/ S4 {' |% V AE_PART_OF, new_file_tag));
: O! J1 |& c* X+ N7 e$ c6 q X" J
IFERR_REPORT(AE_save_myself(dataset_tag));
2 c' S" q# @ e IFERR_REPORT(AOM_unlock(dataset_tag));1 n1 n9 X8 h* p
IFERR_REPORT(IMF_release_file_access (&file_data));7 ?# T# M. r- r/ ^' C* c
0 f5 m3 d" x3 D$ c
/* assuming the old file should be deleted */0 _! v4 w: D6 }/ q8 n% W# W
IFERR_REPORT(AOM_lock_for_delete(old_file));/ y$ y) o7 ]6 Q$ _( m0 Q% u
IFERR_REPORT(AOM_delete(old_file));
; ]+ d; ?& U0 m1 d& S. e}
0 R( |: P; |! P# S+ ?) B1 p* X& g; k5 X$ A0 t$ W$ ^1 v' }8 \1 r# {
|
|