|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
. [9 m4 Y/ V' `8 _8 k8 Q
Teamcenter二次开发源码分享: 获取当前用户信息
/ R/ c" [. ~9 S# F
. J! E8 n ?( Y: O8 f: j, ^[mw_shl_code=cpp,true]#include <iostream>- o! _7 B% k6 z* u
#include <sa/group.h>& k( ~6 S# c% W
#include <sa/user.h>
2 z* I2 }/ Z5 ]& f% X _4 P: p#include <TC/LoggedInUser.hxx>; E, w+ M9 S6 Y S/ U G9 j' E
8 I" {% b4 p8 E& o! Qusing namespace Teamcenter;
4 m0 R; i& w$ `" m8 j) ]using namespace Core;
; H7 h, G) s# N$ X1 _using namespace std;; @' R6 d" I8 F$ a% i: i# d
2 v: h1 X' x. E8 {3 `static void reportCurrentLoginInfomation()- Y7 g/ U3 C g; F T. L
{' j2 F& }6 ~. I
int ifail = ITK_ok;9 A: w$ _% k1 m
LoggedInUser* loggedInUser = LoggedInUser::getInstance();3 `) v, P: A2 y# T+ K* ]. P4 @
/ a6 y, M7 Q' }+ A6 N$ F7 N tag_t currentUserTag = loggedInUser->getCurrentUserTag();
& C0 K( r1 ?+ [+ q' l; C cout << " currentUserTag: " << currentUserTag << endl;
- F/ i2 c5 o- C: N. @, ]' \" F ' e1 ^2 R1 ~. X j' w
char *personName = NULL;( G( M" j" r |. n" @3 g$ G* _
IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));- l! T5 d/ {* Z; y8 n7 E0 L* S
cout << " personName: " << personName << endl;7 }: U) p( w8 P4 j# k) R
if(personName) MEM_free(personName);
+ [/ F5 r) `2 Q% r& b1 k7 o / R2 k7 T2 k( t z0 r6 ~2 T$ {
const char* userID = loggedInUser->getCurrentUserID();* R9 b4 q2 \, J/ ^
cout << " userID: " << userID << endl;' L4 r6 Y7 A5 Y! B, g
4 O6 s: R' [/ `% C+ D3 G tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();
: |5 A4 w# O; E! u. J# j 8 x3 d9 n6 l9 F% x+ D$ S/ I
char *groupName = NULL;
0 P/ M( `+ ^5 l7 }( v! i IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
) w: |, k. J# @3 ]8 S) x cout << " groupName: " << groupName << endl;
$ Q- o$ j6 L: y m( w if(groupName) MEM_free(groupName);2 K! ^" I+ f6 a& g5 J
( p8 t5 u9 J; O% W& z; C/ |
tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();
% x5 [+ x z8 O' }9 ]% f: h) @ char *roleName = NULL;# W2 `, r: B- ?* G, Q
IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));& K C: ?6 ^% J4 y0 u% A8 k7 r
cout << " roleName: " << roleName << endl;
* y: h$ W: y9 @! _4 q+ R if(roleName) MEM_free(roleName);" y. P6 v/ D4 b1 O
H3 l8 w w# \) b! a/ X$ F. A
logical isDba = loggedInUser->isUserSystemAdministrator();
8 U! A7 ]( i9 q U- p$ h) j5 [- X if(isDba == TRUE) cout << " User is dba member "<< endl;) T5 C4 Q- K) ]5 m6 S5 l9 L
if(isDba == FALSE) cout << " User is not dba member "<< endl; 1 L. J* C; W0 \& H
}[/mw_shl_code]
. b7 M9 h+ J; p O2 a |
|