|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter二次开发源码分享: 报告用户登录信息 O2 X) L+ F" N( p$ s
; Z% E/ c' E6 {% x) ]( i% f
' q9 J' D, E/ C6 [# `& j7 g/ zTeamcenter c++ 方式:2 u8 p; M0 `5 W( p3 X
) d2 H6 |' H4 K% u4 \ {8 Q; D; K% ]7 I5 I* m( X
#include <iostream>
7 v! Z* Z$ Q5 S* x. \: D( f#include <sa/group.h>' i0 A$ I2 w J. h" b- W
#include <sa/user.h># k4 {% O0 O) `, ]3 h q% t; y
#include <TC/LoggedInUser.hxx>" ?9 @+ F' ?: H6 \8 N
2 Z6 @7 g A3 d) T U1 l+ g+ h3 t; m; o6 X7 x3 [; f
using namespace Teamcenter;& g( ?* y! T1 R* h( u2 d
using namespace Core;! U* n' T' w# e6 Q
using namespace std;
7 t! { u* X6 r0 D4 f: Q; y$ h! T& _, R: |' [0 N# I7 f# l' M' n
5 R% j2 B- N; D4 {# kstatic void reportCurrentLoginInfomation(), ]( ]2 _# u/ y2 K6 L
{
, J/ l1 F- [( e int ifail = ITK_ok;- j0 \% E$ @$ a4 u3 W& w6 n' T4 ^
LoggedInUser* loggedInUser = LoggedInUser::getInstance();
2 m# ?0 G5 s1 q2 N - Z, E0 J7 F( s4 W$ v
tag_t currentUserTag = loggedInUser->getCurrentUserTag();
; i _- ^4 O7 F8 }2 |' L cout << " currentUserTag: " << currentUserTag << endl;
# i# N" F+ |" H( i0 b7 ]
D2 w& U9 x0 w& X2 M0 z char *personName = NULL;9 c$ ?; f- q/ B: c& f8 n( a
IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));
7 ^1 Z6 A6 P( v4 U3 ^2 l cout << " personName: " << personName << endl;" i- U, }& j( I9 e% J, K
if(personName) MEM_free(personName);
) h* { R* W1 Z5 B/ S8 X/ i ; w! G% Y+ s4 W' X% P7 G& c5 z0 u
const char* userID = loggedInUser->getCurrentUserID();
0 F: a0 R& h9 m3 v% {. i) K cout << " userID: " << userID << endl;+ h* U1 R3 t9 [" z- v2 S2 \
+ A3 B" U; M: \) {2 e) P+ A" ]8 z9 X; ^ A3 ?+ ^7 e
tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();1 [4 ^/ M- M/ J( X8 F
- m+ M) G6 H: Z, ~$ L2 x4 n char *groupName = NULL;2 U n0 M) O. Q3 i* P4 I
IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));) S, u- l5 |# B) w+ {- u
cout << " groupName: " << groupName << endl;
$ z. h% D u. e+ a% Q* V if(groupName) MEM_free(groupName);. x. H6 G1 E& a% \3 ?
! g; k `* N' w/ y! @2 N. R( X, S4 ]5 d9 |7 ~
tag_t currentRoleTag = loggedInUser->getCurrentRoleTag(); b! U9 J5 j- Q) p4 o ~0 Q
char *roleName = NULL;9 U& k) t$ d" X, i9 @9 T
IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
5 C1 E$ o8 ]7 n7 |" r cout << " roleName: " << roleName << endl;
) U) I8 i# f4 i if(roleName) MEM_free(roleName);
& p1 D5 E8 s- q. ~- x3 Q
; V! }) N; b. P5 a; y' ~ logical isDba = loggedInUser->isUserSystemAdministrator();
. E/ D8 Q) u% c& c/ c if(isDba == TRUE) cout << " User is dba member "<< endl;
7 v& v8 e7 F ]2 L+ W: h if(isDba == FALSE) cout << " User is not dba member "<< endl; # M5 b w0 S5 T9 S# C U
}
3 {% C! W8 e5 F+ n: }! I L I1 V1 V' h) c! f: x
b% ?/ |/ C2 _+ X+ e& Z! s: W: f) R0 V" A8 c
0 x3 S, N* @+ q
4 ~( i6 {1 O8 [2 z$ E5 q, t; a! ?Teamcenter ITK 方式:4 r3 x/ y" Z; f2 G4 l! u
: p* l* H0 h2 p) E, ]/ E7 M8 A0 M; W2 Y( c
/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */
" q( N7 {4 A/ ?5 j4 gstatic void report_current_login_infomation()
7 ?) V. J5 d& ^! P1 T) G9 g4 T8 Y+ K{6 V# q1 Q: `- G% X5 k; g
tag_t ' v2 B& q2 f% Z J2 @+ D
current_member = NULLTAG,
/ E! F3 S8 W) `( _- F" D S+ u5 k current_user = NULLTAG,
# O) R- n1 }+ F+ I7 T2 M g$ m( y- G current_group = NULLTAG,
" w0 @8 _: _; o9 H current_role = NULLTAG;
8 n1 r2 k& Y5 p% l9 ? char
" Z9 R: r9 f ^0 L$ Y person_name[SA_person_name_size_c+1] = "",! }# {/ t2 M* g! u2 v
user_id[SA_user_size_c+1] = "",
5 H2 {* h0 a0 `3 @. P" { group_name[SA_name_size_c+1] = "",7 }7 t0 O) b5 V( z: r9 u
role_name[SA_name_size_c+1] = ""; 1 H, c% y w0 F- l! Y5 j
4 l, a9 ?+ E& O
; R# ]# U2 u# p6 F IFERR_ABORT(SA_ask_current_groupmember(¤t_member));6 [1 R+ b2 }; x- j" S- v4 J
IFERR_REPORT(SA_ask_groupmember_user(current_member, ¤t_user));
! \, N# @( c3 O. d, h7 e, _ IFERR_REPORT(SA_ask_groupmember_group(current_member, ¤t_group));& x. B; H2 Z) p2 B: @- _
IFERR_REPORT(SA_ask_groupmember_role(current_member, ¤t_role));6 s, r' Y0 q( m! G, B# Z- h
2 L/ I { e' u/ m; A
/ x7 h9 n, ~- |+ \8 U* L& I IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));1 L0 U9 K! c0 u* z/ j* I3 z( D
IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));1 {4 t2 R# b; Y2 N7 C p
IFERR_REPORT(SA_ask_group_name(current_group, group_name));( K0 W$ f. D2 P& g* P" b% {& [: H# V
IFERR_REPORT(SA_ask_role_name(current_role, role_name));* K$ I+ u+ S0 \* Z6 S* j
! |2 P2 _! A. [$ P1 c9 G6 y5 h0 l& |4 c2 |6 F9 F
ECHO("\n Person: %s\n", person_name);0 B3 v4 n0 O- t
ECHO(" User ID: %s\n", user_id);: Y. a; Y* o) q" L* D/ a
ECHO(" Group: %s\n", group_name);
1 E( c2 U6 I7 c8 L) t5 g | ECHO(" Role: %s\n", role_name);
/ Q' A7 ^ x% H}" V) f7 X( Y$ H0 L3 i; V7 N
. u3 P, ` l! [4 t1 Q$ z
|
|