|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter二次开发源码分享: 报告用户登录信息9 l2 I7 b% O; V) b" b
5 V7 P( t: V7 G- T
$ i$ O9 r6 z4 @+ x# q+ x5 ?7 G. t- {Teamcenter c++ 方式:
: _* p/ g: s) L I, c; S8 {1 U- @6 [2 f) X) K( Y" o& i
$ k4 w F$ @& s$ ~5 C+ y' }$ J6 d#include <iostream>) u% V3 K/ p6 S, w
#include <sa/group.h>
- j' T( Z$ g5 F6 P6 V2 D! `' l! O/ ?#include <sa/user.h>& K5 M% P- k" a( R( `. [
#include <TC/LoggedInUser.hxx>
3 Z0 h" S7 x( g; R& F9 Q3 }/ g! D0 ]. S6 p
5 M& T' X# N% b1 F7 ^. \using namespace Teamcenter;0 w$ o$ Z( z3 z0 S0 G
using namespace Core;) X3 g$ E( R+ `4 B* o+ Q2 S
using namespace std;
7 m8 \$ A+ `/ j7 [& E0 C: E, y# g
9 o e Z I3 G% X- e
5 ^" _# [* N" k* \* Mstatic void reportCurrentLoginInfomation()+ `1 b! E4 D0 A7 f! a9 w
{- b% N V i/ T3 }/ }
int ifail = ITK_ok;
' Z; E% w# Q( e$ J6 v LoggedInUser* loggedInUser = LoggedInUser::getInstance(); o V2 G7 e9 v* E) O
* F+ q0 Y4 W) _
tag_t currentUserTag = loggedInUser->getCurrentUserTag();
: h. u: m0 J0 ] cout << " currentUserTag: " << currentUserTag << endl;+ Z7 a Z, w) p% B
3 b3 e9 n' ?" ^. j
char *personName = NULL;
, V: P; }; @9 T/ f% O# Y1 P IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));
1 Q6 Y+ O0 M. ^: @6 J% X cout << " personName: " << personName << endl;2 C" g, J# Q @, Z
if(personName) MEM_free(personName);
, Y& {4 {# k- v' _( x) ? % t3 ^; U# _" m) b- e
const char* userID = loggedInUser->getCurrentUserID();2 t6 f$ \; x: }# L6 T
cout << " userID: " << userID << endl;/ }; r" U8 h9 T# ?( n; [+ G2 w
# m6 F4 N$ J: J$ b9 s1 @
, g! h. ?% q! |0 s. ~ tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();. w6 @0 J5 x9 w& F! s
; p6 O9 n) Z6 x: l g' m
char *groupName = NULL;+ o+ r3 g+ {* l/ o
IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));# `" v+ y B& m+ A0 g
cout << " groupName: " << groupName << endl;) S4 b# H* w0 f. A8 e9 m* O
if(groupName) MEM_free(groupName);9 F3 S8 r: g7 X# p+ s+ J8 v
8 R9 Y! s- A/ p/ K
" u1 H! F# O7 A& @) u tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();+ A4 c w) Z7 p7 E3 T
char *roleName = NULL;
) j6 ~7 Y. T% X) d/ o- A5 e) b! _ IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));4 X6 Y8 O7 t) A3 H2 }- T2 v, v
cout << " roleName: " << roleName << endl;
- F2 ?( a0 a& f! l- G if(roleName) MEM_free(roleName);5 _ U8 H: V+ U t
. v( z x, a1 e4 K3 M) Y) J
logical isDba = loggedInUser->isUserSystemAdministrator();: }2 b) u: P+ r* P* O. w5 |
if(isDba == TRUE) cout << " User is dba member "<< endl;
0 A9 L: \8 N7 {" T: e; S' e, d if(isDba == FALSE) cout << " User is not dba member "<< endl;
$ S6 g, ?5 C3 r- n}
5 T/ s- j7 g7 }
$ f. e( r; g* u* `1 I
6 t7 ^0 J2 x& m5 \) s+ ^" ]" y
1 f3 d& p2 V$ ]) g* R
# i* s! Y! L* H( M6 B: L8 [( {" y/ g8 {3 n/ u4 g# V# g
Teamcenter ITK 方式:
7 ~4 u& Y! e, }# v
0 n" c, ?. k8 w8 [: r% {$ N. J3 E+ ?" B, A8 ~: }
/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */
9 e* v: v% r3 K% k- E# J4 Gstatic void report_current_login_infomation()
. V ]. P) P6 e4 H1 M, O7 I" F{
. ^# y4 l: y( p tag_t ) n$ ^! o: k e; @* @4 U) _4 I
current_member = NULLTAG, , v$ b4 W! C5 s& V
current_user = NULLTAG, $ d( B. Q/ W& M8 ~4 K2 e+ q2 Z3 U; ^
current_group = NULLTAG, # x+ o7 _7 v" w
current_role = NULLTAG;
1 G8 D3 r% S- [/ M char $ J k5 T {3 y) W
person_name[SA_person_name_size_c+1] = "",
9 H i8 j5 j8 _7 _/ t8 n9 q. t8 ^3 j user_id[SA_user_size_c+1] = "", / r' f$ W- I1 O# y6 R
group_name[SA_name_size_c+1] = "",
, j) N$ ]6 S9 G! b6 M$ s+ Y3 { role_name[SA_name_size_c+1] = "";
% Q8 G( G7 \2 Q4 R8 k
2 B5 x+ n; k8 W' }/ F- g0 N0 _& K- Y0 G% y2 z5 Z2 C
IFERR_ABORT(SA_ask_current_groupmember(¤t_member));& F; t$ }1 E4 W
IFERR_REPORT(SA_ask_groupmember_user(current_member, ¤t_user));
" |% d Y1 c% N: C3 P; K7 f8 e. y IFERR_REPORT(SA_ask_groupmember_group(current_member, ¤t_group));
7 i4 A7 \* ?& l IFERR_REPORT(SA_ask_groupmember_role(current_member, ¤t_role));3 ] U4 y2 s# P3 m8 s$ k
- a+ l/ k) ] v! ?1 J S5 S
4 f9 ?/ J0 _! |/ o! B
IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));
+ q4 ~7 f4 n; w6 ? IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));
/ q q' ]& K4 c% |- i IFERR_REPORT(SA_ask_group_name(current_group, group_name));4 |7 W0 o6 R. n. t( K4 K
IFERR_REPORT(SA_ask_role_name(current_role, role_name));
. c6 X- r0 c2 c4 z- a2 a6 c4 z5 x/ p3 _- u2 A% C
5 F4 \2 K% s3 P( M
ECHO("\n Person: %s\n", person_name);! C' J7 |! v t6 T% `0 g
ECHO(" User ID: %s\n", user_id);3 F# Q0 L% D2 K" P F/ o
ECHO(" Group: %s\n", group_name);
7 F( ]0 p8 @1 D' G5 w2 o ECHO(" Role: %s\n", role_name);
+ A/ o! A+ ]* p}8 V* _7 T8 ]5 Q( `5 t
( w; w2 }1 I! D1 N/ @
|
|