|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter二次开发源码分享: 报告用户登录信息9 u4 i1 w) V9 R8 C! r
, [8 g1 ^/ k/ ]/ z2 w1 U
1 t/ ~: o) S# O
Teamcenter c++ 方式:2 ^. e! D ]8 h' B
& M0 B9 }0 }$ j2 L. I* v2 Z3 M; m- G1 N; n& k, \
#include <iostream>7 h* E1 X6 e+ Z4 U* z; r& N* a" w
#include <sa/group.h>, @) t. N! _: D7 [7 t( ?3 |; v
#include <sa/user.h>* Q5 q3 u2 o) o V
#include <TC/LoggedInUser.hxx>8 N) j! b7 R3 S5 B$ G4 p" J
* e$ B/ K7 g4 X2 L
8 k! F1 O: ^! b: U: x! R% R7 Musing namespace Teamcenter;
3 N' m3 f1 x: B( ausing namespace Core;
( ?4 N! Y$ ?0 Jusing namespace std;
& j. C$ P( J& ?4 |: G4 ?1 X( F: V' M: L. @$ @# ?) Q. }; y0 l( o
9 H' h+ t8 O& ?7 E
static void reportCurrentLoginInfomation()/ ~4 b" { ^3 y7 ~7 X9 [1 x: K+ i! U
{
) R; S+ ~9 L, W/ |& C4 Z! H* } int ifail = ITK_ok;
% |# X7 n" L) b9 u8 p( P" ?8 K, c. F LoggedInUser* loggedInUser = LoggedInUser::getInstance();
+ |: C/ l. r6 A k, N, \* x' @
) Y9 {" x# s! E; c/ K3 x& r* ^ tag_t currentUserTag = loggedInUser->getCurrentUserTag();6 C1 r1 n T z$ Z* ~
cout << " currentUserTag: " << currentUserTag << endl;) K3 ^' ^9 S) v$ @; P0 O
5 \+ D6 H% [6 `) ?& U
char *personName = NULL;
5 v/ P0 Y) h' ~7 h0 D/ a IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));1 h- M5 a7 A4 ^4 p7 u$ j
cout << " personName: " << personName << endl;
^' }/ o/ h/ U# B: k/ S- h4 [6 t if(personName) MEM_free(personName);: N1 j) a$ L3 o" p6 Y
- W6 y# s9 O w! P
const char* userID = loggedInUser->getCurrentUserID();6 q, F" K, J+ u' g: H2 O2 l. m
cout << " userID: " << userID << endl;
- b' y, ]. k' V O& _/ g+ S3 P) Z: ^1 x: I9 K% D1 I7 _: c
1 i. h, y# I: z: p) t4 t( g3 n tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();
6 P$ n1 f- l) t" P+ z; N) E
! L* C) F9 r$ S9 _" P char *groupName = NULL;
9 e$ L+ f; X& w% Y6 A# @9 H8 u IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
' K! q* A u4 M3 @7 U% a cout << " groupName: " << groupName << endl;3 c2 G; T8 y0 s* ?& u% d8 ^
if(groupName) MEM_free(groupName);
" C) R |3 y6 r' [
/ n' h o, E2 Z0 q/ M$ B
& ^% y4 j9 s6 n5 I tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();! L8 l: _, ^ W+ }, g
char *roleName = NULL;
% @5 U2 t7 v a) F$ K4 }4 } IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));7 f2 N" T2 W: s$ V4 s) q* t G
cout << " roleName: " << roleName << endl;
, H* L7 w% }, a; w if(roleName) MEM_free(roleName);$ i& Q3 _/ Y( P& r
- F3 t2 c+ ?" Q" H- F9 f
logical isDba = loggedInUser->isUserSystemAdministrator();: _2 k" @7 r' w3 c& S
if(isDba == TRUE) cout << " User is dba member "<< endl;
4 K% u( d8 ~/ ^' c4 l! p if(isDba == FALSE) cout << " User is not dba member "<< endl; $ p2 _3 |: C" t: ~
}: x* Z- C' S- e/ `- c: p+ ~' u: t
H; e+ P/ c! J2 ^$ i
9 D9 z; C$ e k ]' ]6 K
1 p- f0 o* y! n+ R( t/ X5 H' Q- t2 w3 k
4 `# P- J/ u, [- dTeamcenter ITK 方式:
8 U) {+ v! O& N8 M7 Q. c7 Z3 A1 q, f) ?1 P- h. C
7 O- ^4 `; c, J/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */ y3 E9 E+ u$ w) m0 O' w- i
static void report_current_login_infomation()7 j% B6 \+ X' q& U! S6 b" g
{5 x* H9 f' u6 v3 k8 P/ l
tag_t
# K+ I& Y+ V0 c current_member = NULLTAG,
" T+ `1 g! x- }/ p! P3 k3 G current_user = NULLTAG,
0 {- l7 |) L3 f) E- O) p) k current_group = NULLTAG, ! }$ E' _+ q- { N. c3 Q( k
current_role = NULLTAG;( z0 ]" D# v& h# l5 E8 N- Q; g
char
^ w" g% Q" L person_name[SA_person_name_size_c+1] = "",
Z" k& j6 @0 q% m- p% K% r user_id[SA_user_size_c+1] = "",
g/ }1 a- e5 b$ H" e group_name[SA_name_size_c+1] = "",3 {+ O; F% V, s! Y1 f
role_name[SA_name_size_c+1] = ""; ( k" I2 R: l* V) y
4 q3 f9 {! x5 c
% g7 l! h/ r2 T5 B" A' e IFERR_ABORT(SA_ask_current_groupmember(¤t_member));& u* `: L9 x+ W8 }* v" S2 o
IFERR_REPORT(SA_ask_groupmember_user(current_member, ¤t_user));
: e+ V _6 ]0 H5 ~. v! `9 |" u IFERR_REPORT(SA_ask_groupmember_group(current_member, ¤t_group));
. @( h% S6 k8 U. u- V IFERR_REPORT(SA_ask_groupmember_role(current_member, ¤t_role));
. H) r/ ?$ y4 u$ j1 F4 W
, v7 Q) g3 \* t2 t/ C4 m! ?
) q0 i5 m8 s/ @8 g: D8 A0 A, v IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));
; P5 R% R% \, x5 m$ f! } IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));
2 ~+ n) X _+ [" I7 Z: {; z IFERR_REPORT(SA_ask_group_name(current_group, group_name));4 \# Y. L2 Y3 q# _) P
IFERR_REPORT(SA_ask_role_name(current_role, role_name));
m. }& |; w4 h+ h- I- S: y( {, w! Z* D+ P. `5 E" _7 W
/ O2 P7 p8 U5 b. l' |' }. ` ECHO("\n Person: %s\n", person_name);
8 t: f/ N6 j" e3 n7 d ECHO(" User ID: %s\n", user_id);
$ u) T' b& s* x6 G9 K) X4 a ECHO(" Group: %s\n", group_name);& q! F, D6 v0 r& p, j. r
ECHO(" Role: %s\n", role_name);
O K' E y1 l: W( J}
- _. H' p5 D7 V+ ^3 y$ I( m- E5 g9 l9 n; l1 P6 Q
|
|