|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter二次开发源码分享: 报告用户登录信息
5 ]% g% v" s- s4 {! g$ y0 v, f1 J9 D
1 e) e6 @9 @3 C ~* g! E& S
Teamcenter c++ 方式:
{; g+ Z1 z" ?0 m# @. g
H4 X( n+ y; d% A/ r7 ~/ A7 V* S, a3 z/ t4 t
#include <iostream>6 p0 S2 G0 o. H. r6 s# ^
#include <sa/group.h>
+ Q7 K& |! b( S2 w#include <sa/user.h>. [ Z5 h' Z/ U+ K& ?/ W9 \
#include <TC/LoggedInUser.hxx>
; P5 t; H9 a0 j/ I
e" R0 Y( m- D9 K0 R5 ]* l- |" y4 o! D3 ]( p
using namespace Teamcenter;
. t+ e- a6 D: L# h. X2 U0 Qusing namespace Core;; A# ?& a- n/ ?. V3 p* g7 t1 [3 Y% t- ^
using namespace std;" \ E" L6 c/ Y
' j8 b, r) \( @
$ H I, [+ K) x" v) Dstatic void reportCurrentLoginInfomation()) E3 p7 P* m6 L! w! h$ Z
{
1 L; s8 C6 G. p/ W% X* T int ifail = ITK_ok;* a- [/ M8 x" J; N4 \3 w6 I/ z
LoggedInUser* loggedInUser = LoggedInUser::getInstance();7 R; V; F0 C# _, n# ~) m3 j+ U9 a
" O+ e5 x" k1 F tag_t currentUserTag = loggedInUser->getCurrentUserTag();4 y( n, f9 X/ ]: M8 _" f. [- o
cout << " currentUserTag: " << currentUserTag << endl;5 I, G2 l3 t: R. G5 X
/ v+ e- e( j' c3 O1 g/ w char *personName = NULL;) c2 J/ H) x7 M8 n) j& W& [8 i! X- I
IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));5 c+ R: \) e+ h3 o7 ^7 A, J
cout << " personName: " << personName << endl;
+ O" R! _( C8 H. }* z4 S if(personName) MEM_free(personName);3 `/ Z, m- {+ }4 X
' ?' y- G8 X0 X% @ const char* userID = loggedInUser->getCurrentUserID();
2 ]2 n, ~" B! \0 e7 f cout << " userID: " << userID << endl;' a' J1 w. X+ {: J& R; x
8 B% q* H) g3 d4 _- k) F) m& Y& u& j& B- r: ]8 W6 M
tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();
, i$ y" z2 C2 d7 p 4 {9 x6 u: f7 j% ` x! x
char *groupName = NULL;
* b/ V2 z/ D3 H+ V IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));1 Y- t% I9 N" m0 s
cout << " groupName: " << groupName << endl;
* z* B) i( M! l0 z7 \3 d if(groupName) MEM_free(groupName);9 O- p" y; c; _5 L" I, y
, i2 b- @( O7 A
( k, g4 D3 T) h6 V tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();! ?) g$ ]: l" Z3 w& p. C
char *roleName = NULL;. a, f, E* ^7 |
IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
h; }2 A5 F0 J; k1 t cout << " roleName: " << roleName << endl;
' T8 p) a( j1 I; [# }) X- N9 A3 J$ T if(roleName) MEM_free(roleName);
3 n8 r l N: k$ ]
4 c, N6 \# A# s3 E* O& G- h! v% z. S logical isDba = loggedInUser->isUserSystemAdministrator();
, [# E% T2 u! Z# n0 u# ]6 |6 w5 s if(isDba == TRUE) cout << " User is dba member "<< endl;
9 N$ d* z) Y3 P' i \, I1 t' e if(isDba == FALSE) cout << " User is not dba member "<< endl; : n0 L5 D$ }* L/ I$ M7 H# t( e% T, {
}" l* L2 Y d0 M% X$ p
7 Z, m$ V, e4 a* {6 \9 ?5 ^! j, D
5 z6 Z, N. J3 i
; i3 Z. e2 U- N2 N# t1 L8 x! M8 k9 ?8 q/ V
" D) S) v8 U" N! Q+ G( p: {* F* aTeamcenter ITK 方式:
9 A; j2 d" o$ K7 l' O/ ]
. o7 s- ?$ I0 v5 @- n, B& {4 j
7 P( p. y2 W5 T$ P/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */9 p0 e2 n% {. `& N- E
static void report_current_login_infomation(): Y/ P- Q1 L% P: G% P
{' N: {+ X% p& u9 i) h, y2 D! r
tag_t 8 |0 |# |- f1 p C: _) g
current_member = NULLTAG, $ c; R2 N" n. u0 B( B
current_user = NULLTAG, & O! o- {$ ]5 q* {: y) J+ J
current_group = NULLTAG, ( |8 s6 a% G4 f
current_role = NULLTAG;. ]' w) o# X* V. _# W
char / \& a2 i/ ~6 y) I* C+ k6 h* @ |
person_name[SA_person_name_size_c+1] = "",; Y7 }# }+ Y8 A/ D3 M! }
user_id[SA_user_size_c+1] = "",
0 B0 o" E# w) w; ` @- Q group_name[SA_name_size_c+1] = "",
1 W9 m$ j& d: K; G role_name[SA_name_size_c+1] = ""; : p0 ?- l% O6 N/ Z1 ?; z
, W* K3 @: n- {" d2 c, |: Y( B9 l! W) S k4 g% L2 f- |
IFERR_ABORT(SA_ask_current_groupmember(¤t_member));# [6 C% S8 k7 y1 d# S2 p2 x
IFERR_REPORT(SA_ask_groupmember_user(current_member, ¤t_user));
2 r( r! l! R9 T IFERR_REPORT(SA_ask_groupmember_group(current_member, ¤t_group));% t. C7 c, Z& C, A. r
IFERR_REPORT(SA_ask_groupmember_role(current_member, ¤t_role));4 S0 m0 H- k- E5 E" }- w
4 v( N; }: {. H2 g6 C u1 t
% t1 I# F6 ^1 @$ E% H& F. v
IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));9 X: S% t# |: @6 q0 d* Y
IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));. E) W9 @( I7 U4 C2 l# ?2 O3 d2 M4 D
IFERR_REPORT(SA_ask_group_name(current_group, group_name));
# {( l# T8 J9 I+ n& T9 I: ~ IFERR_REPORT(SA_ask_role_name(current_role, role_name));
% E; B) L) y7 G
& v6 A, u- s# h9 m k8 X: h$ r( {3 H# ?9 l* p
ECHO("\n Person: %s\n", person_name);
' l1 m- z1 Y3 A1 @' B- Q) n Q ECHO(" User ID: %s\n", user_id);
% ?; V: f4 z# Z2 _/ }6 c4 s. w ECHO(" Group: %s\n", group_name);
- a; Z1 D9 J" q! r. C; [7 N ECHO(" Role: %s\n", role_name);: G# p" K4 {. |/ Q# C
}
, R( B- |, A+ K! B6 B# \3 f7 u9 @% A+ }, k- T
|
|