|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter二次开发源码分享: 报告用户登录信息9 ]' V5 u8 Y) U/ z; t! Z9 @
& _, n4 i" Y) K. c2 E
% Q. |8 v& o. N f; sTeamcenter c++ 方式:8 G" f& T4 v# e5 U5 u! ?
! F- D! o2 c k+ t# t
9 _4 m, e8 L" `1 e# U
#include <iostream>
4 X! @3 z T# k6 _( z9 r#include <sa/group.h># h; z4 U2 s0 y/ I; D
#include <sa/user.h>" w, h5 P; K+ N- S9 ^. r8 O
#include <TC/LoggedInUser.hxx>* D) Y) A1 ]! q& H0 S
7 e' o R. A0 {0 t1 k
7 U! x2 G9 t7 q+ {
using namespace Teamcenter;
0 n: U1 v; g: O2 H- pusing namespace Core;' [ G& X7 Z' y" \7 S
using namespace std;0 A" W) e2 y& g' M2 B6 v
4 d0 p! y6 ~% K5 f* |' V1 V8 o I6 m4 S( h9 \
static void reportCurrentLoginInfomation()
0 a7 s+ z0 j; ?& w- Y& z' [0 q# u, L{
, r' m, I$ I# B: Z int ifail = ITK_ok;+ L: H3 I' J# T" h+ C7 o
LoggedInUser* loggedInUser = LoggedInUser::getInstance();
6 N) m! b% F" w l& R3 d
! j# Y' S' Y+ i* y- f1 W4 O x tag_t currentUserTag = loggedInUser->getCurrentUserTag();2 C1 }$ y4 o8 M+ e, [; V
cout << " currentUserTag: " << currentUserTag << endl;! b# W! x2 |" x
- c% S+ o* q. n8 r" H- S* D! Y char *personName = NULL;* G: j t7 p$ E9 L, X* ^3 Z9 H+ T
IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));. ^: v8 x1 q( F8 `9 }- s+ ~1 ]
cout << " personName: " << personName << endl;
' X/ ^& N. C4 S" V5 U if(personName) MEM_free(personName);! v% d. M+ R" B: x# }) W& }
- h, x5 I1 R1 G6 m8 D0 f const char* userID = loggedInUser->getCurrentUserID();2 L' V/ y H$ T6 p6 {
cout << " userID: " << userID << endl;3 ^) A- K# P/ Y* F' G& l
; M' ~, y& w) j0 X
+ V. J% R0 r: i- j! r1 s$ | tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();- n; K8 p$ h5 a( p1 {" i4 t9 r$ g
' R$ t2 c7 `: V# o char *groupName = NULL;
$ F% } \+ _% C3 x IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
0 P" d8 r( [# z% P3 K, J5 B2 ? cout << " groupName: " << groupName << endl;
9 N- Z7 U8 w i ?& `0 o# `( n8 Q if(groupName) MEM_free(groupName);) Y6 K! q7 N% y6 Z
' D( ]1 b2 C# q% P4 a1 R
4 V e8 }0 a. d0 s& Q2 _1 k tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();
& g _: F/ b' }/ _% ? char *roleName = NULL;
/ d' f+ F& s7 m+ t) Y* Y+ Z7 |$ d IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));# X" G& ^6 ^: E) p( k1 {
cout << " roleName: " << roleName << endl;
) Y$ y! H& ]' v" G2 f$ h) l/ S if(roleName) MEM_free(roleName);
# s1 k9 n+ z `1 O
0 {5 U% b. z, h5 ^$ u logical isDba = loggedInUser->isUserSystemAdministrator();
$ W2 }# X+ j8 z$ c/ c- z+ u if(isDba == TRUE) cout << " User is dba member "<< endl;) D7 f1 A6 x" N7 v4 v
if(isDba == FALSE) cout << " User is not dba member "<< endl;
* G# c/ X) g. ?+ z% a}5 H9 \) n! u. p
4 ?7 x( O2 a$ n4 e' r F
0 |/ d; K8 l' g
6 ~8 h N' b5 h9 K: ?$ d8 d
4 b& }8 C& F' i3 Z4 R+ ?* N6 n
1 U4 q3 Y) {+ b+ Q0 I- W, u, jTeamcenter ITK 方式:; D, U6 e9 g' T( x: J0 b
4 X! ?9 O; }! E5 e5 Q' `6 N6 T" M) x. J$ b" m7 I1 f
/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */+ h9 ]- k9 h5 h) g! U+ f$ S
static void report_current_login_infomation()- V# A, F$ ~ J, e3 X+ F# _* }
{9 y' R0 J9 U& w8 t+ Q$ J# P
tag_t " D% S# F- l* g. q) A$ t
current_member = NULLTAG, + r' k/ C- p6 }4 F1 F1 o
current_user = NULLTAG,
/ P3 F* ?2 b+ v7 s Y5 u current_group = NULLTAG,
0 ^# n/ E3 n [5 `) |3 J7 ~) R current_role = NULLTAG;1 J: |8 `. s6 B" y5 D# T
char
$ |; L5 W9 { V' N& E! ?( U person_name[SA_person_name_size_c+1] = "",
: }" }4 U& k5 R# Z% e: A% j user_id[SA_user_size_c+1] = "",
3 E8 M; l" G% Q% g: r; ?) u group_name[SA_name_size_c+1] = "",$ ?3 ^5 J( n* W& w
role_name[SA_name_size_c+1] = "";
& E8 O. Z, X# k7 N" y
3 P e' ?" Q2 L- ?4 L( ~
9 c( z6 ~- {/ {: X- H/ q+ n% S IFERR_ABORT(SA_ask_current_groupmember(¤t_member));
, N; G+ ?4 z: D0 R5 j( G- a IFERR_REPORT(SA_ask_groupmember_user(current_member, ¤t_user));
9 ?5 b+ d% V) X5 R IFERR_REPORT(SA_ask_groupmember_group(current_member, ¤t_group));
/ j# m0 u) R- ~. Y u IFERR_REPORT(SA_ask_groupmember_role(current_member, ¤t_role));
9 X( Z7 @! n+ A# j4 E- S% S0 Z
) L' Z- U. X) @4 J8 s' S: n
: J% A8 r- M: `+ ?9 B: } IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));
& C3 _" k6 j. z# @! Q3 Y IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));5 `/ I3 {+ x% K4 S j, w5 e" k( j
IFERR_REPORT(SA_ask_group_name(current_group, group_name));
) G; v F' B( _9 ] IFERR_REPORT(SA_ask_role_name(current_role, role_name));" r6 G3 R: t& T% u) X: m2 U9 _
. j+ g6 t+ ]( W8 G
* Q# s$ h' Y3 I' O3 W" P6 | ECHO("\n Person: %s\n", person_name);" O7 h9 j1 f9 |
ECHO(" User ID: %s\n", user_id);
+ j" i. e" d1 L# d. Y ECHO(" Group: %s\n", group_name);0 x; O% p7 ^. l1 V7 Z, r8 A
ECHO(" Role: %s\n", role_name);
4 H }# V1 s* i# V9 n( _}) E. o5 h; y% u( i$ ]+ j2 \
! N! b2 t a4 h1 H- y& F. }1 T |
|