|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
, @! p! k, x: V
8 q7 c) }# j! ^0 z1 |/ |5 VTeamcenter二次开发 判断当前对象是否被check out
$ o) r; s; R* v! n& Y7 k; v8 b! h[mw_shl_code=cpp,true]#include <iostream>' e( n. v0 Q2 j& M/ g* v
#include <res/res_ITK.h>
/ M& P8 N, _/ x8 I# d4 _2 L#include <sa/user.h>1 Y1 B8 ?* z& q5 w8 a b
#include <base_utils/IFail.hxx>1 C- d! a: v% Z
#include <base_utils/TCResultStatus.hxx>
7 v1 I, m/ a, o% Y/ `#include <base_utils/ScopedSmPtr.hxx>4 \8 i P7 p1 m6 y( K P1 B" D+ l
+ f7 F0 Q3 h8 o: ]% V' l) ^) u3 n* U( P
using namespace std;: g: T* z2 A8 E5 O
using namespace Teamcenter;+ a7 V/ t+ q3 o
$ j# E7 I y' k; Q7 b
static logical is_instance_checked_out(tag_t object_tag); m4 p* v2 j4 v7 Y, `
{* h0 m# H# \2 T; T% S* H. c1 @ Q
int ifail = ITK_ok;$ J! n, R0 H6 ?' a( U8 {/ {) l% }
ResultStatus rstat;, e5 R/ ~- l6 s' _5 I
logical is_checked_out = false;2 {0 x+ J, o! e) s! j1 g
try8 O, e4 I0 n2 t+ R! q# d% l: r! ~
{% S( C1 r3 H. i1 ?$ c
rstat = RES_is_checked_out(object_tag, &is_checked_out);1 c0 @$ {) W! {3 [6 Y" t
if (is_checked_out == true)
5 q w, c1 ]1 P {
/ A: C; m b# L4 M tag_t user_tag = NULLTAG;! k Z$ a! K- M) K: r& v' O H$ L
tag_t group_tag = NULLTAG;/ F8 C/ K7 Z- t% V# w( M$ X- I
rstat = RES_who_checked_object_out(object_tag, &user_tag, &group_tag); 0 g; w9 o' j- z5 v8 W
" h& W6 N C9 t1 ]' b7 X" ^
scoped_smptr<char> user_id;
O, N' ]4 ]& ~ rstat = SA_ask_user_identifier2(user_tag, &user_id);/ P2 o: D+ l& C/ c8 y; b7 z; T
7 M. f, Z. A- F1 R3 E
char msg[] = " Checked out by: ";+ ]1 r( |! ~8 |+ x7 d
cout << endl << msg << user_id.get() << endl;
( ]6 o9 G! J1 ^1 n* H+ b is_checked_out = true;
$ n, O3 {- t, ~9 H7 |6 B5 B }/ R6 B# \) S( t
}
! B; \% P9 {+ G1 L4 a' } catch( const IFail &e )
! L# }3 I* V% j7 [/ M. C {
( }6 c1 \# B2 M( j0 P% j cout << "error " << e.ifail() << endl;
' e* X0 p: m- z+ H cout << e.getMessage() << endl;
6 s! u1 a w9 I) p; M }9 S) ^0 a! |4 O) F
return is_checked_out;6 p) }* b6 Y% f+ v1 ?
}[/mw_shl_code]" V n( ~& M/ k; m2 z, Q( D# q- h
|
|