|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
; i1 O8 T* W* G2 ?$ f/ v% W/ l
Teamcenter二次开发源码分享: 获取当前用户信息
6 t: T5 y+ \* i' }" N: |$ }
* H k: A: c% A! h( ~% @[mw_shl_code=cpp,true]#include <iostream>! W9 r. l1 P2 o9 [& s: ?" ~4 m, W
#include <sa/group.h>
: W/ E9 x* I8 J/ f, V#include <sa/user.h>& w. X9 V) U' c) I: ^5 x% R
#include <TC/LoggedInUser.hxx>
2 ^+ S! g* l; j% h! t+ F' V: j( T; S& i6 }6 @4 y
using namespace Teamcenter;$ e. y; x$ |" ?: ^/ [
using namespace Core;# b! E: ^7 s6 e. G6 W- W$ [
using namespace std;
* T; W9 W" }# c5 ~* _) D: k
, \+ o, l: p8 P9 q2 e! @* Q3 \static void reportCurrentLoginInfomation()& ^1 N# O% l4 x1 l9 s
{
- ~8 J+ f& _* z3 c% d int ifail = ITK_ok;9 e: i: a+ e: ^) F# Y; w6 o
LoggedInUser* loggedInUser = LoggedInUser::getInstance();
6 G7 c4 z) l, Y7 t1 M
& j: j3 r/ d* Y6 N tag_t currentUserTag = loggedInUser->getCurrentUserTag();( M6 W3 L) [2 c. t1 a3 Y
cout << " currentUserTag: " << currentUserTag << endl;3 c+ l5 n3 f0 K/ {1 d" H
5 q3 D7 S( T8 R% h( l
char *personName = NULL;2 s& h: Y3 x5 t& |
IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));
( P1 B; P: ] o, T w cout << " personName: " << personName << endl;. f+ p) H( r5 ~' A( g5 C$ B( U
if(personName) MEM_free(personName);4 L, [- e" X: i: h% z
0 M* t" N" X# O1 P8 F: V) S
const char* userID = loggedInUser->getCurrentUserID();
) a0 ?$ n: W& D0 U R cout << " userID: " << userID << endl;+ _" d9 w$ C* f% e" K& X
I- x6 f! y4 W2 Z. f$ O
tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();, s' L. \. u" P6 p$ h/ i
/ x9 i' q& j9 \+ W
char *groupName = NULL;
+ ~# Q7 m0 s/ K' i3 P g IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
+ F, }' x$ _2 R. X5 O' w cout << " groupName: " << groupName << endl;) C' M( v$ K; l
if(groupName) MEM_free(groupName);1 ^: J' G# i# G
- w V" I4 [" b7 i1 o2 o
tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();8 j& L' k4 M i4 ^
char *roleName = NULL;
" C1 o4 U+ `" ? IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
: m8 ]9 r0 R: d4 `& ^; |: P cout << " roleName: " << roleName << endl;( h) _2 Q- v1 `/ M8 F
if(roleName) MEM_free(roleName);' C4 J: w6 x! [* r$ E0 O
" L8 C, h: T* Z. L1 D; I: p$ P logical isDba = loggedInUser->isUserSystemAdministrator();2 k) A+ O5 h) _. B, u
if(isDba == TRUE) cout << " User is dba member "<< endl;0 ^" p! ^% j/ T& S4 q/ z
if(isDba == FALSE) cout << " User is not dba member "<< endl; ( I5 O& Y' Q- Z/ l# I( I+ I( G$ V
}[/mw_shl_code]
6 R) G% E* B4 d; `* s |
|