|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
5 l2 K9 J( n' s; [Teamcenter二次开发源码分享: 获取当前用户信息
( c' A! j8 I8 C! q7 z/ v; Z& T% R# Y$ Y+ A& }3 k
[mw_shl_code=cpp,true]#include <iostream>
8 T6 p' w; Z5 z3 B; T. L- N. ~#include <sa/group.h>
' B% e7 X+ U% t, c4 V#include <sa/user.h>
# m' d! g* V% `: e6 f) U#include <TC/LoggedInUser.hxx>
0 u" Z1 X! B& Y# H& Y3 o7 L; ^; O& m8 ~7 U+ C$ s7 x i- u
using namespace Teamcenter;, a% e9 v6 S6 s5 D2 C) @
using namespace Core;4 t( h+ y7 p5 \. ~- i, g7 T/ C
using namespace std;& }# y4 k& O+ `9 {, w$ ]
, Y+ y ^5 P6 M7 F" {5 }4 Y& D" f
static void reportCurrentLoginInfomation()
+ K, B3 H+ d0 [, F& q( d{* f6 _% _4 y, ?" p0 o' K( L5 K5 a
int ifail = ITK_ok;
( I8 K7 V: i7 J1 ? LoggedInUser* loggedInUser = LoggedInUser::getInstance();
9 K/ o! q4 |% @4 k% D " D) Z9 q- ]4 U5 L3 |
tag_t currentUserTag = loggedInUser->getCurrentUserTag();
7 x; X2 @3 t) A! a7 r cout << " currentUserTag: " << currentUserTag << endl;- m" {2 ?# \' M* Q' [: ]
3 U; t+ \6 t" `2 S) P
char *personName = NULL;* A& C, E$ @+ R( z) M3 G
IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));4 \* H. J( t$ b0 o4 J8 {" `
cout << " personName: " << personName << endl;) v/ u% K- h% ^7 G5 k5 J# u
if(personName) MEM_free(personName);3 Q" o8 ?7 u1 @! d
' i2 X/ e5 M0 n$ B- } const char* userID = loggedInUser->getCurrentUserID();3 f. g& \: @. H/ p. f
cout << " userID: " << userID << endl;* N# d7 G. y5 c, z8 _1 A, K! a' _
% Y5 E% i% K) i8 H/ Z5 |
tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();
. l# m: D$ t( e1 q
# a: m' f- {: C4 r5 p char *groupName = NULL;/ ~4 H! _$ u: F* `
IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));5 ^3 ~) S6 y- ~% E
cout << " groupName: " << groupName << endl;& } D. g, n" H& r O5 ?
if(groupName) MEM_free(groupName);
' w; ^3 ^5 S2 J6 @( O9 K' x# q! R9 l
tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();
8 J Q7 x; Z. I) L4 ~4 E8 Q char *roleName = NULL;; h# i1 z1 y" X4 o/ z; T
IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
d$ Q2 L! |% M# @4 h cout << " roleName: " << roleName << endl;5 ?: t/ r# y; ]6 R3 d: y. W
if(roleName) MEM_free(roleName);3 a e. \' J6 e5 f. A
, F: ^0 u, ^* J3 q5 j2 r% H) a/ C0 G logical isDba = loggedInUser->isUserSystemAdministrator();2 X3 @, w9 ]8 H7 i6 `$ e2 \- C, D
if(isDba == TRUE) cout << " User is dba member "<< endl;+ t8 @$ U+ [/ w' N2 t7 Z2 q8 d
if(isDba == FALSE) cout << " User is not dba member "<< endl; 6 z: A- t# _1 [. @
}[/mw_shl_code]
" u& r% g3 d0 B/ c$ y: T% Q |
|