|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
1 g% c* g, j9 g) }6 i* l, Q
$ l! D( `9 B1 J5 {- j) y
Teamcenter二次开发 判断当前对象是否被check out
" Q" [- A/ s+ B5 {2 @[mw_shl_code=cpp,true]#include <iostream>
/ M- q4 Z% p# R, z/ t#include <res/res_ITK.h>
! X, g3 w$ l4 ?' H#include <sa/user.h>
2 i. z9 H# q8 X#include <base_utils/IFail.hxx>9 E4 J5 k5 u8 ]- e, J
#include <base_utils/TCResultStatus.hxx>+ p" C2 u8 m5 g6 ]$ q
#include <base_utils/ScopedSmPtr.hxx>, }, ~: m- a |1 ]
8 x5 n+ G) @4 O* L; F8 a
using namespace std;
0 p8 J* t2 Q! l) E3 E: h( Jusing namespace Teamcenter;, k n. ?" m1 ?) ]9 ^# o
# `$ M8 ?# v7 @$ Q: \' Ystatic logical is_instance_checked_out(tag_t object_tag)3 v h% v& A4 P; J
{; t: n- e6 W1 w5 q- L8 r6 Q
int ifail = ITK_ok;$ O; E+ F `+ |; P4 a
ResultStatus rstat;
; J% T* n4 [( ^7 A logical is_checked_out = false;
. A0 Z7 P% B* S! i( O try* _$ t. B2 ?8 S; e1 N
{+ f! t- ^0 B X' H& c
rstat = RES_is_checked_out(object_tag, &is_checked_out);. ?' }; n2 \( T/ F) ~4 u
if (is_checked_out == true)
" k; f0 G# X5 Q- i% Z {
1 ]0 D5 p3 `: `; s) |: j tag_t user_tag = NULLTAG;# s# b6 [' H) q. `( ?+ i) A
tag_t group_tag = NULLTAG;
8 e" |+ f m* [" c: E& j4 j' ? rstat = RES_who_checked_object_out(object_tag, &user_tag, &group_tag); + D* ?6 b# k; S
6 r' n- {1 P2 W3 i, \7 q
scoped_smptr<char> user_id; . y4 U: @/ n, r
rstat = SA_ask_user_identifier2(user_tag, &user_id);
# Q8 H- z' q u; Z7 f
$ X0 |9 ?/ V% m char msg[] = " Checked out by: ";
: b* B/ M1 F: _! ? cout << endl << msg << user_id.get() << endl;
! d1 F& [& y" h' ]9 S3 } is_checked_out = true;
3 x2 C" T% M1 V; K }
1 d; I; F) ?% W: r1 U }
- g6 L4 Q3 B: G% u( X X+ O catch( const IFail &e )
: H* z" ^+ E8 ~$ V6 W Y/ q) I0 Q+ f {0 x$ ?+ M1 {' c% T4 h" k3 [
cout << "error " << e.ifail() << endl;
: d0 a" B: u: i" f* [ cout << e.getMessage() << endl;
2 R5 s$ j, j' J: P1 K- e }" p1 P: [" ]8 J7 F% N
return is_checked_out;
8 S5 a% F% e1 I! v3 u! l}[/mw_shl_code]
( u' Y+ `# V @8 @5 V6 F |
|