|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
( @: J, X8 C- ~9 M8 l! z" ~
& L! {5 y! l0 _8 b$ | `1 KTeamcenter二次开发 判断当前对象是否被check out$ k; B# O% d% I( D% w
[mw_shl_code=cpp,true]#include <iostream>, I* o3 u4 v# K: R. `6 L2 b
#include <res/res_ITK.h>
. S' c8 E7 ~8 U3 p2 j#include <sa/user.h>; A* s; |- w% z5 r$ @( H
#include <base_utils/IFail.hxx>
4 b8 ?; A% D8 T% }+ h3 ^& h#include <base_utils/TCResultStatus.hxx>
8 X6 B$ e3 H( S4 D# [, I#include <base_utils/ScopedSmPtr.hxx>: O: r5 \6 C* c3 X. k
5 W! M6 c/ x/ x. f3 |using namespace std;6 Y; X% T* h1 o0 q* h$ r2 Q
using namespace Teamcenter;# @+ q6 f0 }% Y" `( c; _
7 \+ u7 Y2 y$ r9 q% S/ I' S, jstatic logical is_instance_checked_out(tag_t object_tag)/ p {2 _' r2 r' E, E) g+ A* ^ t
{7 p/ B; z6 }5 c1 p0 d2 `- b
int ifail = ITK_ok;+ V7 }* C( e4 A# Y4 u0 w: g6 r
ResultStatus rstat;. P# `- u5 s, `' X, g
logical is_checked_out = false;
7 N8 ^( y+ q2 ?* ^ try" R+ B; W/ o W5 j
{, l" C2 ^5 ?/ x: {: u5 }' j% w2 j
rstat = RES_is_checked_out(object_tag, &is_checked_out);; M- x- T! h7 l+ _
if (is_checked_out == true)
+ Z# s) t9 B& H9 V k* I {$ _) r8 Z9 q/ J( q# n2 `5 L" {+ P' `% L
tag_t user_tag = NULLTAG;
% Q z W. b% |9 U: n tag_t group_tag = NULLTAG;
9 i* Z& I; }$ }' a( V rstat = RES_who_checked_object_out(object_tag, &user_tag, &group_tag); " `( n4 n+ U6 v2 V/ N& [( ^
- P4 F9 E9 f* i* d% B7 K4 ?% I scoped_smptr<char> user_id; ' ~+ z* O& @0 c# ^; a+ D
rstat = SA_ask_user_identifier2(user_tag, &user_id);
+ d4 d9 a! l) N( d% f& ?, C- X: D9 V
char msg[] = " Checked out by: ";7 s7 Q4 p( a+ y
cout << endl << msg << user_id.get() << endl;( ] v! O) E- o' l, {$ R4 f
is_checked_out = true;& h+ G7 p! O8 u! Y, v8 v0 y
}
- I3 I' N; T2 t$ i }* x" k7 _* q1 F/ B; _6 I$ t
catch( const IFail &e )
/ _6 e% K% y9 N$ W8 Q0 U: p- z/ k1 B {
: s* X+ M! r0 X9 Q; |- i9 e cout << "error " << e.ifail() << endl;
" R) Q+ K8 N' Y$ ` cout << e.getMessage() << endl;
- O, Q7 {+ H% H+ G }
- S' k. ?& \- }: b2 V return is_checked_out;1 q! v3 N8 r; t0 e
}[/mw_shl_code]
+ U$ I' Q% O- t |
|