|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
0 H) [7 R: n# i5 c3 z, H/ ^Teamcenter 二次开发源码分享:替换数据集dataset的引用集, {) U6 q& s* U
) n8 d" u1 p" ~
' O6 B3 R {3 \#include <ae/dataset.h>5 m0 w- U0 n8 S7 e( x
#include <sa/TCfile.h>
% b$ j" R: y% j" f! D8 K2 s#include <tccore/aom.h>
0 E; Q& {( V2 K* f! F# i2 y1 M0 W#include <sa/tcfile_cache.h>
& s' \* J0 g# \6 y1 w8 U- `/ Y# p9 i8 n2 x4 m, n
static void replace_dataset_named_reference(tag_t dataset_tag, tag_t old_file,
( P; H; }' h/ A' H% }6 l/ t char *new_file_path, char *ref_name)
+ v" v9 e( |* b3 J% r9 Q) x+ W, r{4 F8 d3 j( _/ Y5 Z% n* j
IMF_file_data_p_t file_data;
' T4 ~" D6 r6 _$ j0 `( p4 E IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));' K/ B' g- T5 L, r: N/ Z2 U
, h6 Y+ X. m4 o+ }( I' W( o m% q tag_t new_file_tag = NULLTAG;
! W$ Q: p" b0 _0 j: f7 ^ IFERR_REPORT(AOM_lock(old_file));: g! `- ~4 f/ k- J) W6 l/ y/ N
IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,2 l& w: x( Z% ^4 @2 D) _& L/ d
FALSE, &new_file_tag)); - Y2 C5 k9 T, d. [
2 {6 V" I$ w: ?; I2 `
IFERR_REPORT(AOM_lock(dataset_tag));$ [' K! X" K# K }3 j
IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,
. z0 G; Y0 X& ]& I6 v; a6 k% v AE_PART_OF, new_file_tag));
! ~2 Y) ?& e- A3 s0 d' ~! B1 [ D' r
IFERR_REPORT(AE_save_myself(dataset_tag));) Q1 [9 j t: u* }. M
IFERR_REPORT(AOM_unlock(dataset_tag));
5 g/ }1 J* D5 U- r9 T t IFERR_REPORT(IMF_release_file_access (&file_data));
# N; D/ C- y" V8 K0 ~/ F& c3 Y
. o2 E/ A$ \: O& @/ J5 _ /* assuming the old file should be deleted */, B! \1 ] W, [3 ? p
IFERR_REPORT(AOM_lock_for_delete(old_file));5 c7 W9 f! p' Y, E/ O1 u/ w
IFERR_REPORT(AOM_delete(old_file));+ B, t5 k3 C$ P! a: I
}
: t" _( m, A* L/ _9 Y
3 ~! i2 f! K; p6 Y |
|