|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter二次开发源码分享: 报告用户登录信息; P+ _; b+ D0 q7 c9 s l1 I* [
; V( ~$ J6 _- t
- P/ @9 m% f/ C7 @
Teamcenter c++ 方式:3 W2 z. k" ~9 ~6 E/ L
# c3 x1 B/ X% M4 n+ ?% S
; g7 x' w; h% Z2 Z7 J#include <iostream>* e/ U) x( @* R2 A+ O+ N @) Z
#include <sa/group.h>5 G; m3 x# K6 N+ Z& N; v
#include <sa/user.h>, |; H/ R9 R& r6 T0 L
#include <TC/LoggedInUser.hxx>0 a2 ?# I( x, A) \2 _
1 h6 z' j2 }9 b) p2 K/ z% J- Q
* _% H$ H: }5 T( O3 c9 Z7 _$ N+ s
using namespace Teamcenter;, h' W# `' O- n
using namespace Core;
2 _3 M* Y% I1 y* e2 A) a. tusing namespace std;
& M- H) c3 ]* q( g6 y) W% h* |; Q5 x5 Y. E* B, w$ F6 y* X
0 D8 Q$ K8 Y! y: _5 K% \ Ystatic void reportCurrentLoginInfomation()) R- T& n, G2 t$ F" G; z/ s
{& P3 |; L1 U$ i1 e3 }
int ifail = ITK_ok;
6 j0 X$ y" ]8 h" n6 Z+ H5 r- l- c4 f LoggedInUser* loggedInUser = LoggedInUser::getInstance();
$ C, c- Z+ b, E2 p. R $ Z- k1 Y, ?5 W; k6 p/ h2 a
tag_t currentUserTag = loggedInUser->getCurrentUserTag();" m0 X( O7 V' K1 \, X
cout << " currentUserTag: " << currentUserTag << endl;
0 }2 ]; K/ L7 p. R9 X
/ \8 U# _) d# h. e6 L' o2 m' t char *personName = NULL;4 ^# l" _/ l; L* _0 `% Q0 \
IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));3 W7 |$ c+ p6 f
cout << " personName: " << personName << endl;
( O, x' R. V' s, `# O5 U2 }7 w" w7 h if(personName) MEM_free(personName); z3 N7 ~/ I3 E
6 Y u" e$ ?; K+ M" O+ R, x5 v4 ] const char* userID = loggedInUser->getCurrentUserID();
?) _& t. x+ L; h+ R* T cout << " userID: " << userID << endl;; a: s) a, |. {7 U+ L
# G% c% Y# @; y' \! p$ ?# T3 H5 `% w+ |6 e6 c& K$ N/ j! b4 _7 `
tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();0 c# H/ Z1 O' I5 l% C9 U! f
# J, f8 Y+ e. k. z2 |5 L' ?8 U char *groupName = NULL;1 U8 j) b+ r. S# A
IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));5 T' Y1 \3 T2 N$ [! k* {- B- g$ R
cout << " groupName: " << groupName << endl;
, c9 K7 n- R: i. u6 j& S8 Z% ^ if(groupName) MEM_free(groupName);
( `! i+ p* k7 D x( S& g7 G3 p: G% J$ K8 e7 p% A& U6 W8 r0 V
0 Y2 W3 l% o1 u6 T- u: l8 u/ l [ tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();
8 E) V4 W3 e# Z |8 C8 ` char *roleName = NULL;. _6 `" @2 H/ u' R6 q) l9 C1 s, R
IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));$ i; O; ?' q" l& x" A; [
cout << " roleName: " << roleName << endl;0 k( Q' P( y1 f" P( f
if(roleName) MEM_free(roleName);
$ |9 ]; V. t# L5 s$ n5 |/ x$ n% \ ! W5 I: ]6 G' S. ^) o
logical isDba = loggedInUser->isUserSystemAdministrator();' A) u& g6 c, |! K! _4 [
if(isDba == TRUE) cout << " User is dba member "<< endl;& z- v- g" X8 l% F) ~4 Q
if(isDba == FALSE) cout << " User is not dba member "<< endl; ! P4 f* m; o! u+ W0 F, s6 b
}
+ ^* T" b5 E8 ?* J7 `; ~/ b* v9 Q2 e$ [- K3 w1 z
?# Q/ X* n& e1 j3 E2 W. ^
2 ]! r" ~. X7 _% e& |: F
+ z |" V/ }$ B& h6 \
. S" o# O0 W, z5 CTeamcenter ITK 方式:
( k4 l6 D6 z% }+ y+ D3 n0 b+ M9 W
% v1 T4 P* z5 E# Q u! K& Q2 C
3 P5 x) F+ M' {# w8 o/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */' a- O! T9 ?1 n/ D! ~* B; l+ j
static void report_current_login_infomation()) W' b0 k6 J6 M) O- a
{
: `, b8 o, C" T( H tag_t
9 i% \( N" z; m& Q8 C, e- P3 p$ C8 f! [ current_member = NULLTAG, ( p8 R! r. f6 k7 k {/ p
current_user = NULLTAG, , |0 @: h1 G* l' H. G: {
current_group = NULLTAG,
( ~$ T/ m2 h. ]% F current_role = NULLTAG;7 w" P! t8 m$ H7 F: Z, }6 [
char
1 S! o* G1 p/ [" t& V( X person_name[SA_person_name_size_c+1] = "",. Q" I9 E. s, |7 `2 q
user_id[SA_user_size_c+1] = "",
5 x, s) y. i( m1 V group_name[SA_name_size_c+1] = "",
- g! f+ }( a: K: m5 f+ n% R role_name[SA_name_size_c+1] = "";
* n: P3 o) \+ O
, z, I S* a5 Z8 i% J3 H7 K6 e& I/ m/ O% P1 N2 Y
IFERR_ABORT(SA_ask_current_groupmember(¤t_member));8 G! n9 R. |: [: c0 |8 c8 g
IFERR_REPORT(SA_ask_groupmember_user(current_member, ¤t_user));
, g3 E7 u3 \% k4 G8 i IFERR_REPORT(SA_ask_groupmember_group(current_member, ¤t_group));! g. P6 Q/ L( _( V* q
IFERR_REPORT(SA_ask_groupmember_role(current_member, ¤t_role));
7 Y0 s% q1 f3 q4 _ t2 y6 X" P% J$ W5 q* L5 T
6 t( C% Y! ~" y8 h) F* ~
IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));
1 e! Z$ ]) J6 V, `+ X IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));
: q" i) K1 s6 C: j. l IFERR_REPORT(SA_ask_group_name(current_group, group_name));/ b. p: y5 q( A7 N- Z% h- Y
IFERR_REPORT(SA_ask_role_name(current_role, role_name));
- b# g3 j9 r& \* |; ]
* D8 S! R- B( |2 O, i3 Y3 ?7 q& J+ C8 z' \
ECHO("\n Person: %s\n", person_name);
# c, j9 Z" A) J9 a) f, g ECHO(" User ID: %s\n", user_id);
+ l5 ~" r* m0 p ECHO(" Group: %s\n", group_name);$ m8 u! v) W% g
ECHO(" Role: %s\n", role_name);
% `. y$ d }9 d* ~& J4 b2 l}
& U# y6 K h0 b* a% k7 d- f, D
1 C! x7 g7 m$ u( T |
|