|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter二次开发源码分享: 报告用户登录信息4 u c4 H: |1 j: V; c) | Y
% D( r2 @% }" S. n( ] H, j. T' `9 i4 X9 N8 C! ^1 v5 k9 F
Teamcenter c++ 方式:- P. Q2 x# J! r" t! I k* I: s
8 ?% H. Q$ t( M% k' j1 x' Z9 j
) T |9 N* Y3 h#include <iostream>
$ y5 Q8 ?! d! u- h#include <sa/group.h>9 `7 p- P X4 K1 h
#include <sa/user.h>6 c* q3 b4 t, ~3 y
#include <TC/LoggedInUser.hxx>
( g; ^9 z/ y: ?! f# ?! l. D( R7 _ f# U, c B3 W2 n- R* ~/ [; _
. J2 ~3 @. u0 U6 a& C7 v# G
using namespace Teamcenter;( _9 B, f0 O6 c4 W2 Q3 n% r
using namespace Core;
% N2 ?9 i" @& ]. Yusing namespace std;
. S, }; z- Q- k7 e H- s3 n* x4 w" k) @) a2 t
: W Y4 o) r8 N& i Pstatic void reportCurrentLoginInfomation(); @; q" M v! I& r% W
{( r" M6 Y: [! H$ ?
int ifail = ITK_ok;
4 D. |0 ^* y6 [, S4 i LoggedInUser* loggedInUser = LoggedInUser::getInstance();
+ X: C. O4 ^# Z( u# S" M
9 M4 U* x# Q1 V tag_t currentUserTag = loggedInUser->getCurrentUserTag();! K; r6 _* R$ s' x
cout << " currentUserTag: " << currentUserTag << endl;* {* \3 m; {( ~& `1 b2 w8 |
8 r3 F5 q3 T* C
char *personName = NULL;% c+ @; f) h5 w# K
IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));& O/ Y" I( K9 v. x4 S
cout << " personName: " << personName << endl;
1 D5 l8 u5 W$ ?0 w4 }: y if(personName) MEM_free(personName);
% f& x4 q$ V ^0 I+ K1 E: f* B
: U/ j8 \) o* Y9 M const char* userID = loggedInUser->getCurrentUserID();1 C, c6 H9 w, c( }* O) r7 W; _" j
cout << " userID: " << userID << endl;
) U3 ^1 A3 }+ O2 j% P, x, B- c6 u7 J y$ {" c; Y6 x4 r. j
3 O6 A* ~/ Z. t9 R9 v
tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();7 [% b/ K, P( k1 M$ v
( c0 y# ]* d; S. A7 a! `; V ]' | char *groupName = NULL;2 E2 |) f; b' O, _+ w
IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
- l X/ j$ I5 T Z cout << " groupName: " << groupName << endl;) w/ h* ]! k) Z
if(groupName) MEM_free(groupName);
9 o- e7 C) W1 U' J- _5 ]% [
% B+ l5 X! y r/ F4 z( L2 I; T% Y# M% M
tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();3 ^2 N9 C1 \( p0 G, c
char *roleName = NULL;
8 p! H4 ?* l" A+ S/ q2 B4 U IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
6 S* U4 ^0 t, X2 A; F& }2 y3 B cout << " roleName: " << roleName << endl;7 G7 U' J! o0 n7 y% T
if(roleName) MEM_free(roleName);5 U* t7 e" {" R
# H3 R" O! ?, T logical isDba = loggedInUser->isUserSystemAdministrator();" |5 D) x* A) d6 w
if(isDba == TRUE) cout << " User is dba member "<< endl;: w) U9 N$ H/ }3 u( |& W
if(isDba == FALSE) cout << " User is not dba member "<< endl; . {5 J0 ~3 Y* z1 K, \
}
3 Y" _' Z3 Z5 o
! o R% N# f0 R2 k7 u/ V! w2 U" e7 t2 y& b W) P6 o! i a3 a6 Q, D
7 \( h- D/ |/ _- B4 W4 _0 C
2 X% [1 s4 @; M
2 `7 ~; w$ u- L; W9 Q5 qTeamcenter ITK 方式:: E: y7 |3 k6 H5 e4 N9 ?' V( B
! f$ L( G) G& E
) u2 K: x$ k/ ~+ ]- ~0 t. W7 E+ c2 h f/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */
) ]: G( P: p. H. cstatic void report_current_login_infomation()
8 g" G* J. E* \" n: |) V l3 D{' u- I2 T: t( h- Z8 }% c9 T+ O
tag_t * w' U* W1 h$ o1 C5 C+ Z$ c
current_member = NULLTAG, 5 l6 C4 h7 Z. i$ j
current_user = NULLTAG, ! Y( L$ x. B" \4 q8 E: l/ G9 _
current_group = NULLTAG, + Y2 V; }/ [' g L' Y
current_role = NULLTAG;
' `+ w6 c- C8 a; N' B char ; o' w& e- C8 F- Z% I
person_name[SA_person_name_size_c+1] = "",$ s* o7 |% d0 J& {& E) s
user_id[SA_user_size_c+1] = "", & M9 T/ L3 @; ?2 ?
group_name[SA_name_size_c+1] = "",
% v( y- c, _& y: j* V role_name[SA_name_size_c+1] = "";
- u/ p3 h1 R( ?9 {( f" \
9 C: D* L1 d1 o/ j; X4 c
% h y+ {. E' k7 }/ k IFERR_ABORT(SA_ask_current_groupmember(¤t_member));
- R; q$ S* Y9 t: `6 }) T+ W) j) H; x IFERR_REPORT(SA_ask_groupmember_user(current_member, ¤t_user));2 x _% D. V& U- j" Y
IFERR_REPORT(SA_ask_groupmember_group(current_member, ¤t_group));
' a3 m+ z |+ H9 K# I IFERR_REPORT(SA_ask_groupmember_role(current_member, ¤t_role));
4 [& ? {& x6 o Y1 C
! [. D' @) D7 q+ ^ `/ u' t& W5 O& `; B3 U7 ?$ g+ Q% F7 O
IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));5 O) i7 J4 }& B$ {1 [7 f9 e
IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));9 X% o2 L7 }+ j8 ?) A
IFERR_REPORT(SA_ask_group_name(current_group, group_name));
, _1 @3 Y& W; M; B4 U8 K IFERR_REPORT(SA_ask_role_name(current_role, role_name));
- t7 o/ X# H& S# I. V3 H9 b/ w9 H. d& p0 i& i+ | j
. T% s. g% x0 B3 \( F
ECHO("\n Person: %s\n", person_name);3 R% A0 j' I' H8 l1 }( |
ECHO(" User ID: %s\n", user_id);
' ]7 k, j) W7 p3 s ECHO(" Group: %s\n", group_name);6 ]$ d& h' l2 E! e: ~. H9 ?9 g
ECHO(" Role: %s\n", role_name);
9 p0 X/ c4 J" Z4 A& R}4 W4 \8 m) }# {/ h- V
J% [' ~' X; W1 r4 e" G6 b
|
|