|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
Teamcenter二次开发源码分享: 报告用户登录信息
9 s, g# w c1 Y
' p2 m# x/ X! U# W, ~ z$ ~3 ]% K
Teamcenter c++ 方式:
5 e7 P1 _" V- \2 h* e, ? R8 i4 _. s; N
, q; a4 H$ h$ s# M8 W: H
#include <iostream>5 x* a1 h% W7 }' n- ~
#include <sa/group.h>
* w, B7 u' t* v9 L% `; C" E3 a* }#include <sa/user.h>
9 s8 v8 l5 R& ~0 ^# ~#include <TC/LoggedInUser.hxx>8 Z6 v6 K7 p |1 B* P/ H
5 K1 _# I2 L9 O/ J4 `0 Z
7 t- q* r# e) K6 p
using namespace Teamcenter;
" N6 \' z/ u3 {( j$ jusing namespace Core;
8 O0 L' ~; y2 W9 J% x" Ousing namespace std;
% W! ` `. O. x+ o, M
$ l. v4 J* \$ k5 q9 H2 H/ Y6 P0 i, w1 S/ ~
static void reportCurrentLoginInfomation()
4 N8 h; t+ D* \' W, P8 i6 U& d{
3 J9 @$ t X% \) e% \ int ifail = ITK_ok;8 J7 e" H! H% `% `! W- f# T4 E' }+ S
LoggedInUser* loggedInUser = LoggedInUser::getInstance();
1 `; e. B; `" ?# Y' \8 Y
7 ?! r) e; Z& j( f# o( h3 } q8 D tag_t currentUserTag = loggedInUser->getCurrentUserTag();- L6 w d' ?, N) t4 M) I- Q. z
cout << " currentUserTag: " << currentUserTag << endl;! u0 q# q6 A" r8 u$ e% t: o! d
9 Q; M& v" |5 R* Q% l
char *personName = NULL;- q* `0 K1 q" T2 u
IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));
1 k) X0 o8 U/ B& ?9 ] cout << " personName: " << personName << endl;
% e' z0 G! V! Y- t) N; i if(personName) MEM_free(personName);- g3 h. D# y$ x s
4 e6 j: q7 q% p7 q; V
const char* userID = loggedInUser->getCurrentUserID();' H; v, H# I4 G, T& |; P; q3 e
cout << " userID: " << userID << endl;2 K% D0 d. w. @0 |
) K# w' g0 q8 q/ I _" x, V
! D( J# V j4 S tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();
1 v1 t# N2 p4 J& S2 u! l 3 I4 ^7 k& q3 |! M0 x: m; F
char *groupName = NULL;' Z' Z! y# J$ Y; h, {$ ~8 b) f9 R
IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
B; ]( }2 K* {3 n3 ]. n cout << " groupName: " << groupName << endl;* A. Y3 |, x8 _8 O L9 _+ _
if(groupName) MEM_free(groupName);4 f2 C8 ?: h7 o- J6 ]" ^
" G$ c4 s+ p* v6 ]5 q0 U" B* _9 h
/ J8 j, b$ u: ~* J tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();
- A0 J* l- ]3 r" Q M7 A char *roleName = NULL;
2 g1 T+ P# |' Y/ p3 }0 ~; D IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
' [( i& n/ i8 t cout << " roleName: " << roleName << endl;
* I* n, ]9 n) {! z( ? if(roleName) MEM_free(roleName);- N5 f) q" F/ o1 U, A& ?
3 F u# `; \4 E' y w' w1 j logical isDba = loggedInUser->isUserSystemAdministrator();9 H& S2 w+ v2 g; w# Z Q* B4 V
if(isDba == TRUE) cout << " User is dba member "<< endl; E D" f' w: }$ }% O+ Y' {! r |. x5 a
if(isDba == FALSE) cout << " User is not dba member "<< endl; & h6 x# f7 j8 y& X }. g
}
0 x7 `" M0 j* C' c1 b# L7 W/ ^; c
) ^6 X( A1 i9 _4 o7 O5 D; @0 Y4 j; ?* [7 L7 m$ }
* C0 r9 n: m. O! \5 b0 Q; |. l S" F2 ~; i
! h* r. Y" Y5 HTeamcenter ITK 方式:; c$ M% E( ?! U# [" f6 ~" v
7 R& E5 M# F& Z$ A {% Y3 ]* W
) f3 D" R4 v' @6 D2 N/ F2 \2 P/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */, k4 O8 N ? h4 l1 ]# _* U# T
static void report_current_login_infomation()
5 A. _' _( }0 y) `2 P! a{! V( o* H" p8 r
tag_t
( ?5 m" v, R2 F# _' l current_member = NULLTAG,
: Z$ i- `6 ]7 X# C: g current_user = NULLTAG, - L n9 A/ N, D
current_group = NULLTAG, ( i+ t7 X7 C( S# t' a# i! y
current_role = NULLTAG;% s- x% u# e8 K4 m0 y% j
char
' p3 g1 V, {% I; O* u4 @ person_name[SA_person_name_size_c+1] = "",
- z' u+ S. [7 D* \5 I5 {8 E user_id[SA_user_size_c+1] = "",
: }" y" y1 _% \' Q0 L \ group_name[SA_name_size_c+1] = "",
. N8 a# j6 ~2 [; q$ Q role_name[SA_name_size_c+1] = ""; 1 C+ k' Y% y O( i4 G1 ?' m
2 k5 ~/ J5 b. z+ v( t" g( y# R, o; I$ u: b$ A: g7 C7 G* B- b+ b
IFERR_ABORT(SA_ask_current_groupmember(¤t_member));' [5 o! r- a: D7 o3 M
IFERR_REPORT(SA_ask_groupmember_user(current_member, ¤t_user));1 X% P" C9 e |. P* s5 T
IFERR_REPORT(SA_ask_groupmember_group(current_member, ¤t_group));/ A0 M/ I2 K% c1 y
IFERR_REPORT(SA_ask_groupmember_role(current_member, ¤t_role));3 I2 j; z$ T; ]3 k( n3 p& V
* K1 V5 ]7 n3 E( p
: l' `; l4 i i! N2 n IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));
" z" e8 e$ `, N3 m9 \6 V0 V IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));
, s6 P( {9 P+ y: _ IFERR_REPORT(SA_ask_group_name(current_group, group_name));
y0 R+ Q3 C+ q4 X IFERR_REPORT(SA_ask_role_name(current_role, role_name));1 Z( T1 q( ]5 @; }" |5 c7 j
, y7 @8 ?7 @3 S9 M% C" }
0 }3 q2 P F: v3 z. D5 p" \ ECHO("\n Person: %s\n", person_name);% A! L/ O @# {; W6 j! |: @2 y
ECHO(" User ID: %s\n", user_id);
5 W6 c( `* y# l. _- r/ Y ECHO(" Group: %s\n", group_name);) P" L" v$ y: j* |
ECHO(" Role: %s\n", role_name);
3 b6 W5 x, @0 {7 Q7 K}
3 }" k- i2 b9 W
8 I2 W9 m2 J* R' H5 @* o$ { |
|