|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter二次开发源码分享: 报告用户登录信息: _9 Q n7 b& Z+ o- u' g
+ o; |' [( M$ F# n" y
0 N. P4 W, G' X; M; [, n, z* A9 X& ^Teamcenter c++ 方式:
: V$ E+ p) t" G; d i
# I+ `: v. b j T
" A/ n; S$ g" C& a# O#include <iostream>: o" J' c' l" a- H
#include <sa/group.h>
4 K/ \7 ?' c+ _# L% J8 j#include <sa/user.h>
8 r2 s7 T+ q6 B) n: Q1 H#include <TC/LoggedInUser.hxx>
+ {9 M1 {& F$ E. v* V+ d3 V
. K# i Z& y2 G5 q& `2 Q
; L# S7 C: S1 w. Q5 U5 _: Yusing namespace Teamcenter;+ G z4 N3 _: h( }! Q' G5 c
using namespace Core;
+ Z1 [+ A- ^" _! cusing namespace std;5 e2 X) [. A; b5 `, l& l7 p9 l
8 z; K) M( N, j0 P" ]* y1 Q: S# o; s& ?; X( }! k) |6 V* [7 t( n! B( T
static void reportCurrentLoginInfomation(): G J* U& G" A u. b/ }
{' C" S* L7 }0 R. K( v$ Q7 y
int ifail = ITK_ok;! {) E$ }/ D" u' {
LoggedInUser* loggedInUser = LoggedInUser::getInstance();
& f' N" L+ @0 k
! c2 E+ r: Z% L9 x4 X, R5 v% d tag_t currentUserTag = loggedInUser->getCurrentUserTag();
% q) {, e$ a0 ?" p: _- ? cout << " currentUserTag: " << currentUserTag << endl;+ V' S& @+ A$ \$ C+ z4 R# Z! O
7 k E% p f/ }$ t8 ~* C+ v2 j, j char *personName = NULL;: Z9 v$ H/ [1 ?. c2 j: X' [8 ~
IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));
* H. P3 R, _4 `: H5 E cout << " personName: " << personName << endl;
# D* n J4 C3 A1 L+ c: b if(personName) MEM_free(personName);6 o' I/ A& }, R
, n- d% D7 M* Y/ U" X' B% |+ w
const char* userID = loggedInUser->getCurrentUserID();' z& U; q% y2 K/ g2 P! e: J- z
cout << " userID: " << userID << endl;
' L( G; Q* l% F( Z" {
# T4 P) j! ~& t }) D, T; I# j" v. p2 {8 J* g8 U
tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();+ f% j+ ` B2 l" f# G2 ^; M
4 S/ `8 @( f, i R/ J char *groupName = NULL;
' n# m* V: g; w, Z/ V IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
3 q* ?+ G, ?7 @. J cout << " groupName: " << groupName << endl;/ ~! ]* d- B( D3 ?/ {
if(groupName) MEM_free(groupName);9 e, d3 s8 }! z+ h
v+ p. {, o0 n" u% y
& b6 i; |) R/ S4 P tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();
5 m R( N1 d# I- H4 ?' d8 I char *roleName = NULL;% L3 a# o3 k+ q5 D" l
IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));2 v# Y8 H8 w9 O8 r; o
cout << " roleName: " << roleName << endl;
3 V `- _# s0 k/ N if(roleName) MEM_free(roleName);$ |% h' S' A6 [/ o' j6 \* W
+ V2 h6 ^) l3 @' x
logical isDba = loggedInUser->isUserSystemAdministrator();& \3 y& z7 l2 d, W2 [7 Y
if(isDba == TRUE) cout << " User is dba member "<< endl;
6 B2 ~) ?5 [" F- ^# A9 R if(isDba == FALSE) cout << " User is not dba member "<< endl;
4 i4 {- X: f8 ^ v}1 {: B) K2 V1 j' t" {& x A
# N+ K% C( \! H. R. p: g# |" c
* X' @" Y! P, }2 e+ L5 I
; }/ F1 l0 l0 M& r% D3 t1 ]; d. h6 o$ [: Q" A8 n' _/ R
1 p$ A: p# A' v, i! B
Teamcenter ITK 方式:8 h% l3 X% i9 M# K- w
! v3 P$ d: e! z d: ?* D4 e r- b0 N8 K1 s
/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */7 ]! q; g e7 @
static void report_current_login_infomation()
8 Y. S8 r6 d2 X: W. v, \( {' G6 }{6 Y- h/ R$ x( E) {
tag_t
8 m, O, }# Y9 V) W; ] current_member = NULLTAG, O# t7 W( A; y6 c
current_user = NULLTAG, ! y7 G n; j7 M
current_group = NULLTAG,
% f* f; J9 x- C+ a, {3 u4 q: U/ ? current_role = NULLTAG;
3 D9 x8 A. h" h+ w8 Z2 V3 } char
! u2 r, ]# `& m) t: B person_name[SA_person_name_size_c+1] = "",6 F5 h& }' E5 b/ N6 f4 @" ]( x
user_id[SA_user_size_c+1] = "", ; e3 Z% E* \ t. a* p" J
group_name[SA_name_size_c+1] = "", b5 q+ d& Q0 Q' J; ]
role_name[SA_name_size_c+1] = "";
$ i8 W# V1 c( U7 {" ]
4 K+ N: [9 z8 [) e) G* u, e' C2 `
IFERR_ABORT(SA_ask_current_groupmember(¤t_member));
: n+ V/ x6 T" L0 o' `) n IFERR_REPORT(SA_ask_groupmember_user(current_member, ¤t_user));8 e! m. i l7 l
IFERR_REPORT(SA_ask_groupmember_group(current_member, ¤t_group));( J0 V' X; _8 J* W
IFERR_REPORT(SA_ask_groupmember_role(current_member, ¤t_role));( H( \/ G p" Z- Y4 ]
7 U( q- u7 d" \5 h, K
% {$ X" ]( [! v: f @ IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));
- k! H' e! t& c$ V' S/ r( E8 t IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));
7 H# D3 ~. f* z! i IFERR_REPORT(SA_ask_group_name(current_group, group_name));$ G$ }3 j0 Q3 K% }* l, w
IFERR_REPORT(SA_ask_role_name(current_role, role_name));
- C( u. p8 r) t7 f( U# M: ]! d3 x3 C: G& T1 N) I: y. i
" P9 c2 U3 ?1 n3 S1 }+ @
ECHO("\n Person: %s\n", person_name);5 X* u+ ]! }9 k/ Z
ECHO(" User ID: %s\n", user_id);
8 i+ u; ~- t1 A! j# h- o ECHO(" Group: %s\n", group_name);
' O4 z6 v& l j- R% M0 e/ B ECHO(" Role: %s\n", role_name);
; y( `, G/ o# l+ M, ~}8 a& V8 N+ m5 B
/ D4 L% P8 U# y- F" |3 n
|
|