|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
0 A& N# F* S. ~+ _
Teamcenter二次开发源码分享: 获取当前用户信息5 z6 z; k, `* l8 y$ q e
. C* [" c9 Y4 i( j. Q9 V0 U
[mw_shl_code=cpp,true]#include <iostream>
' B9 J- y: w0 g# e! L# }& ]+ A/ [* y#include <sa/group.h>3 F! |0 X A9 L5 \
#include <sa/user.h>
- j0 n) p+ b! U* q( R# \#include <TC/LoggedInUser.hxx>2 e+ f a3 w* ^
2 R/ x6 u) q& |
using namespace Teamcenter;
6 J4 e8 l! k+ R5 R. Q! k4 M# v+ a2 O# eusing namespace Core;
% X7 j2 M) h3 {$ ^/ _" @using namespace std;
4 ?) [( C/ d3 s' ]1 L+ l
/ Y1 x L& \% Z' i5 \9 r& estatic void reportCurrentLoginInfomation()
! M! ]- P4 b7 j0 x# q+ V{8 ?0 {* R* U+ m& p! w* y
int ifail = ITK_ok;
5 i% ]& i8 V; S5 A" v' @- `0 m LoggedInUser* loggedInUser = LoggedInUser::getInstance();- s5 D" M" {4 k7 W0 ]
. P& w, A3 \% `, K3 h. ^- t tag_t currentUserTag = loggedInUser->getCurrentUserTag();7 d3 j) T/ p# X4 y0 ^( z; t# x- V% j
cout << " currentUserTag: " << currentUserTag << endl;
# e9 w8 }! T/ h+ ^% i8 \$ | h% @& }3 }: e* A [7 y: M5 {
char *personName = NULL;& E; Y* U! {1 R' \& v7 s' M
IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));- T; `6 k4 r7 H: y" \ N( z# r# x
cout << " personName: " << personName << endl;
4 P' @5 a; P' V if(personName) MEM_free(personName);
) \) h4 G% i( [/ a9 |
1 Z& F' f0 h# s: h) H7 _6 Q const char* userID = loggedInUser->getCurrentUserID();% a4 a, d N( y7 ]8 y
cout << " userID: " << userID << endl;
U2 Z$ t: l3 u+ U( E, `& w3 d% X, H; H0 {" S4 P. t
tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();/ v* Q; ?/ q* ^- r" ?7 S
. ^: D& U$ a6 e( r; ^8 p2 p5 [ char *groupName = NULL;
' ^) O! `. a: p# Q9 `% } IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
* L5 D" B6 Z# S- e+ T2 x cout << " groupName: " << groupName << endl;1 g# K. ^; f; I8 Y1 W: g% k8 z8 T7 V
if(groupName) MEM_free(groupName);. ?+ ^/ }! l1 Y- l; x9 I5 k2 Y, y
0 g* m1 H2 a1 }: x b
tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();4 L4 z4 J" `& O1 g; p
char *roleName = NULL;
Y( ]5 o( D, U IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
1 c0 I' E( s5 c+ E cout << " roleName: " << roleName << endl;$ i0 \- T9 [5 I2 m: n/ W% }
if(roleName) MEM_free(roleName);. V: U1 m% A8 T8 Y" w% o# W
" i( Q% N0 H& o, |9 ^+ H) B& z logical isDba = loggedInUser->isUserSystemAdministrator();; T+ J. u" h2 P, P9 R. ?
if(isDba == TRUE) cout << " User is dba member "<< endl;
' N: }8 z: P( V' ]8 W9 N if(isDba == FALSE) cout << " User is not dba member "<< endl; " \% H1 Q! s& H+ i
}[/mw_shl_code]
/ ~# {5 K. F" e |
|