|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
) t& n3 Q. M- A! W) v" i, p( O
Teamcenter二次开发源码分享: 获取当前用户信息
! Z+ h& M& F) s* X) r' a7 G2 [
$ `% G! j3 {% h8 Q( J: F0 \ @[mw_shl_code=cpp,true]#include <iostream>: F! _! I2 W) s
#include <sa/group.h>
% g! G$ u& y* z) w#include <sa/user.h>5 s, y; Z9 \+ R, ]
#include <TC/LoggedInUser.hxx>
1 P% Z( j3 j0 t# j- ^. g0 L2 a4 X4 ~2 Z( S" P
using namespace Teamcenter;
% q1 {$ I* l9 {. P) M6 Zusing namespace Core; `1 e% j( Y. N& x& M2 _6 s
using namespace std;' d$ e# r6 i" m { Z
. ?- [* y4 u1 n# d+ }% _9 J! ?; g
static void reportCurrentLoginInfomation()8 b+ ~1 ?2 @) M; X& H) |) |) o
{
$ w3 H) s8 w& I+ `4 n int ifail = ITK_ok;
+ d/ P9 H4 x5 J! [- X+ e9 | LoggedInUser* loggedInUser = LoggedInUser::getInstance(); o B8 Q3 L! B
) j$ Y- u) p6 p- T1 ] tag_t currentUserTag = loggedInUser->getCurrentUserTag();7 Q) `$ v1 T% g$ H1 P8 S2 a5 c# r
cout << " currentUserTag: " << currentUserTag << endl;5 v& a* `6 c' \& {
8 Y9 p% m- K: K$ |
char *personName = NULL;
- l/ ?8 f! _8 N1 b+ n w IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));8 O5 F' R; \/ [+ m& T4 j
cout << " personName: " << personName << endl;* ^ ]3 Z* G2 v" B% a! i6 |
if(personName) MEM_free(personName);/ p9 W% c: S6 N+ _! W( t) ?% D* d
+ W9 H/ K, ^0 ^$ y9 c' Z
const char* userID = loggedInUser->getCurrentUserID();
h# Q k% I- q4 u cout << " userID: " << userID << endl;
& E* X, v0 h7 U" B
* c7 p2 O4 N2 l0 }9 V tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();8 o' H* f( i5 d" U
7 P7 {# T! L2 U( M
char *groupName = NULL;
) N& k+ m$ e1 T! o/ C/ k IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
+ ?9 ~9 O2 T7 s* O" E- L cout << " groupName: " << groupName << endl;! J; f* l7 y* x( h& O e
if(groupName) MEM_free(groupName);
. u/ o9 x. X6 |% S( W0 @
3 e1 M3 p% U4 p: W( x% B tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();0 ~0 y# a2 j% O# U8 w( y
char *roleName = NULL;1 _: E" v6 ^2 h7 ]. ^9 F
IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
7 ^9 v2 ?" I: E! }: Z t cout << " roleName: " << roleName << endl;1 q5 D/ `. ]) w+ ?5 h
if(roleName) MEM_free(roleName);% `* [; o! ^! U( }3 L2 B0 f
/ s( _$ Y d' j7 Y! [ logical isDba = loggedInUser->isUserSystemAdministrator(); _" v( |( y$ g) g0 N3 g
if(isDba == TRUE) cout << " User is dba member "<< endl;7 }4 t) H1 h" o1 `& Z# b
if(isDba == FALSE) cout << " User is not dba member "<< endl; * D/ ]1 o$ X0 d( ~ U
}[/mw_shl_code] b1 g; c! c: }2 s
|
|