|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
. p9 x7 ]6 Y% u& U$ O& a& S$ x
9 r$ m: i! a) F8 w1 u- fTeamcenter二次开发 判断当前对象是否被check out! t' u, h! J9 M- d0 J- Q
[mw_shl_code=cpp,true]#include <iostream>; o! U. @8 z" m# k7 i+ {& X
#include <res/res_ITK.h>* B7 |: [6 w* m C1 A( a
#include <sa/user.h>) W5 V% r% n% q* H. {5 v. i
#include <base_utils/IFail.hxx>
, Y& Z% [; H& x9 a$ d+ |: a) B#include <base_utils/TCResultStatus.hxx>4 T2 F0 @+ P9 b) O4 t4 k$ \
#include <base_utils/ScopedSmPtr.hxx>
/ L6 L+ @9 Q* C6 M7 T2 P" U6 c% d A
, R5 O. L' @( W9 [5 p$ Jusing namespace std;$ W) ~* I. ` t! h
using namespace Teamcenter;
/ r {, k$ Z: ^. c. D; g0 e4 t" s/ B
! E$ D0 t* R: j+ qstatic logical is_instance_checked_out(tag_t object_tag)
) ~; ~5 X, I9 ?. r( t{
. l3 S: B: T; h& x# E& d6 Q int ifail = ITK_ok;
1 T, W6 i$ C0 y! i# p$ ^ ResultStatus rstat;9 m" g; d ?9 T4 D
logical is_checked_out = false;
1 A6 @: |) m% Y: [ try
6 C$ e3 b7 B1 y3 ^3 v Y7 G: Y3 d {
* v6 u o: O b rstat = RES_is_checked_out(object_tag, &is_checked_out);) G) q' a+ c3 \6 R8 Y$ z9 W6 r
if (is_checked_out == true): T- ~" C7 F# v+ ^, C1 j' J
{, C5 |( Y; y) p$ y k6 W9 u
tag_t user_tag = NULLTAG;7 E$ v8 U: o' k* `9 S
tag_t group_tag = NULLTAG;
~/ b! y# w6 \& A* g rstat = RES_who_checked_object_out(object_tag, &user_tag, &group_tag);
- B9 \" U/ x" E5 x/ }& a+ V6 x3 @, n* b+ F
scoped_smptr<char> user_id;
' N4 O: _6 X; V/ h! A rstat = SA_ask_user_identifier2(user_tag, &user_id);
+ v8 S) b) d5 o% F* P9 p' F9 D( B
k: r+ ~& |6 }8 g1 u T* J char msg[] = " Checked out by: ";: f( f7 U: g. X
cout << endl << msg << user_id.get() << endl;
( U( j8 z/ `: `3 l9 M is_checked_out = true;6 H( x( K$ _) d
}% g4 X1 V4 O7 B% w! s Q W
}
& P( c$ N$ K2 A catch( const IFail &e )
! j( S v) U: G {: w- b) r2 A: w' z t" b
cout << "error " << e.ifail() << endl;
4 g& n7 c: S' l Q* z cout << e.getMessage() << endl;
- M6 i( P+ T' N: g! x' J2 O }: g3 |% O. Q- ^4 `4 m
return is_checked_out;
; T3 d9 U n9 H3 [1 ?3 H6 M+ }}[/mw_shl_code]" l# u/ S- P0 j
|
|