|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter二次开发源码分享: 报告用户登录信息( p/ _& S, ^0 i/ `# U
9 P7 H9 V, ?1 T! h( @
( E) ~; V2 t! ^ c3 p9 LTeamcenter c++ 方式: {5 {( z3 X, A0 h$ f. \
( H- J# v; Q1 f! F% L: }
. P) t- T: w) H2 G/ Q
#include <iostream>3 G* G, X+ K r3 n# ]
#include <sa/group.h>4 C8 O& b) t8 Y* P m1 A6 L+ e
#include <sa/user.h>
5 y* D7 n4 d+ n2 i#include <TC/LoggedInUser.hxx>0 }0 d+ `/ x) b) u) T
9 h3 }4 m% O; U# K; q; E
8 Q9 l4 r* y! X1 }using namespace Teamcenter;
& F9 s( n8 a& O2 j( }$ Q' vusing namespace Core;
. O! G: z* {$ fusing namespace std;% E; b0 A4 P. y% r' }* P
$ r7 m: O! C" a( [/ T1 q
& q/ Q7 `2 C2 E: V. m; ]static void reportCurrentLoginInfomation()
/ g& }5 G; ?8 h9 m+ I: i{/ z' L7 c# c- ]* z* y5 G' g
int ifail = ITK_ok;2 e9 }9 ?" i' U0 Q6 ?. _
LoggedInUser* loggedInUser = LoggedInUser::getInstance();& S! m2 v- `4 U" b: m5 E
8 Z7 K4 X0 _$ w; W& N
tag_t currentUserTag = loggedInUser->getCurrentUserTag();
% V6 P' ?' R2 o4 e9 z5 _! u: L cout << " currentUserTag: " << currentUserTag << endl;
- }3 e( m) K9 {/ Z" Q5 P2 ^& J " h6 S, g7 N: {3 r+ n
char *personName = NULL;
; z; Y# j/ ], O3 R& |) L; y; {, H. V IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));" M, w/ w! }5 x8 r
cout << " personName: " << personName << endl;
( X3 `2 B6 n3 g: s& d6 K if(personName) MEM_free(personName);
/ Y2 f- }3 z( `& @* j- ~ $ ?% D4 Q6 t. s! q0 b' y
const char* userID = loggedInUser->getCurrentUserID();
& n! o" N/ R6 [$ z4 S' ` cout << " userID: " << userID << endl;# Q2 t6 I- D3 Z, d2 d! g
: w- f; |& u6 Z8 t+ Y
& n/ j3 w% ~1 l- G tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();* a' N) t7 T8 U8 [, O
; {$ U& S( Y& a6 [! C# f
char *groupName = NULL;* C( s, M5 R. \8 L
IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));" Q) g+ H. N! A
cout << " groupName: " << groupName << endl;
) q" h# h! V/ G4 @* D) d. Z8 a! ? if(groupName) MEM_free(groupName);
6 R+ ?# H. I, I5 E4 m7 ?% X9 I* }
8 ^- J0 x0 p' f* @9 ]! E- }
9 ]* O& K1 i& r, z& h+ ? tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();4 h& ^$ z- V, _6 ?' c
char *roleName = NULL;
9 {/ h8 R8 D" p# Z# n: c IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));, d# a! ^8 h! Q# m! p
cout << " roleName: " << roleName << endl;9 m5 X4 }& N" z4 C
if(roleName) MEM_free(roleName);3 _' F' u" _' Y7 M& q7 |4 L. Z
# m6 o/ G, C0 Z. O) g* F4 e$ t
logical isDba = loggedInUser->isUserSystemAdministrator();
7 R% [9 `5 h3 X, y& _& G! o8 c if(isDba == TRUE) cout << " User is dba member "<< endl;
0 q' N( Y7 j: m% h q& b if(isDba == FALSE) cout << " User is not dba member "<< endl; . M0 F" z2 e4 U3 W& B) {/ {$ a) l* ]( W
}' f" j( m* n# D" r, c! |
/ Q! p7 N1 @" y9 R, _
' R, `( u! M u% j7 W3 V$ ]# X, p! @" @$ S1 V6 A4 q/ j2 N
7 O; u3 |' ?$ r+ a7 Z5 R9 q: U( y* Y
E3 ]: q" Z x. B
Teamcenter ITK 方式:" w6 Y9 t1 l3 h
( x$ j, I$ t; V$ t
# R- N A/ G& O% h: x$ S
/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */
) ?/ O+ N% G. p! X( k$ E: e0 _4 ostatic void report_current_login_infomation()
$ m( I" _4 H5 M$ }9 ]0 i{
* E/ z0 |6 X& {- r3 J9 j tag_t 4 z+ ~6 g( ?, i: Q
current_member = NULLTAG,
# A6 M2 p/ B; | current_user = NULLTAG, ) V0 \3 ~% O" l4 g. t Y5 e
current_group = NULLTAG, / Y, |+ d/ X& K) e$ c- }# z
current_role = NULLTAG;" b# u# J# ~3 p+ i* A
char
6 j* T2 l/ N5 d! ~7 F; O5 r5 D person_name[SA_person_name_size_c+1] = "",. U8 b0 w# d* T$ W* t8 F
user_id[SA_user_size_c+1] = "",
# p8 h% n7 n. E: V( m group_name[SA_name_size_c+1] = "",0 u/ v3 c: v6 l5 }& Z
role_name[SA_name_size_c+1] = "";
# r4 J1 X. N3 Y9 l' ~+ F& Z6 o
9 k9 B! V3 H6 K' P4 Y' I IFERR_ABORT(SA_ask_current_groupmember(¤t_member));
0 t% C, M' a1 {' i5 r. S IFERR_REPORT(SA_ask_groupmember_user(current_member, ¤t_user));( S/ M& t; I4 R8 E
IFERR_REPORT(SA_ask_groupmember_group(current_member, ¤t_group));* Q& t+ t) B* e( ]- C$ G
IFERR_REPORT(SA_ask_groupmember_role(current_member, ¤t_role));
% b3 {2 Z2 u% u1 z2 g
" s' p; ?6 h: Q4 U& w- |
5 g! W8 s1 P( n6 m. C6 S- [ IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));5 ` ] `! y& b- Z" M8 n
IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));5 x' Y# U) z9 p2 `$ p/ K! q+ ]* F
IFERR_REPORT(SA_ask_group_name(current_group, group_name));
4 ?! |/ ] ?/ j# v1 K IFERR_REPORT(SA_ask_role_name(current_role, role_name));
( l. w/ B, n0 a$ s5 A) G
1 H- M# l! ?3 O6 q! [6 G, {& a8 j4 y7 s
) R+ T$ W! M7 f5 W, Z5 ^ ECHO("\n Person: %s\n", person_name);# ]/ `' g% v3 O5 x( Z
ECHO(" User ID: %s\n", user_id);
; k6 E+ M( O2 S$ ~9 A L2 I ECHO(" Group: %s\n", group_name);7 j0 [+ E1 z. B$ b4 x7 y
ECHO(" Role: %s\n", role_name);
( R- V5 B& [3 A6 }! Q; i) [}1 ^7 t$ J! i% p* `% P/ K
$ t3 c$ C7 R1 f* U9 M- s7 Y
|
|