PLM之家PLMHome-国产软件践行者

Teamcenter二次开发源码分享: 获取当前用户信息

[复制链接]

2020-2-8 09:34:22 2140 0

admin 发表于 2020-2-8 09:34:22 |阅读模式

admin 楼主

2020-2-8 09:34:22

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x

3 \0 T" }1 E3 dTeamcenter二次开发源码分享: 获取当前用户信息
- ]3 r5 U: o3 D
2 Q2 s1 W* l/ c. }6 H' h" c[mw_shl_code=cpp,true]#include <iostream>
- p  f- k' K# C* ?#include <sa/group.h>
( w* |! N4 C/ [  F#include <sa/user.h>8 q8 a( W* O9 C0 b
#include <TC/LoggedInUser.hxx>
/ ?) N9 c: O: u% M) G0 s, g6 e( w
; g& W" z  Q4 [) v! ausing namespace Teamcenter;
' C4 @3 U. X3 susing namespace Core;
' f% V# ?; [0 Q5 [  p/ c2 h& w# u8 o$ susing namespace std;
$ s$ i: e! n7 h6 W3 K$ X9 m8 x; B# a. A3 ]( h1 B
static void reportCurrentLoginInfomation()
4 C& ]4 o% X4 ?/ m3 t! L/ t5 j: i8 a{; |1 ]6 m  ?) [) ?( F( g
    int ifail = ITK_ok;0 x$ w& G3 U% }; N( a; W; n
    LoggedInUser* loggedInUser = LoggedInUser::getInstance();  u  B. r3 E/ B' v, j9 L: ]7 t/ M
   
4 [/ @* j6 S8 `    tag_t currentUserTag = loggedInUser->getCurrentUserTag();* O1 E+ S% Q' N, s; J) q
    cout << "    currentUserTag: " << currentUserTag << endl;! N* C* ~. O  w( `
   
+ ?0 t  [* B2 a( H9 ^1 \    char *personName = NULL;& C  L$ Y1 o6 J: h4 q$ [
    IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));
$ ?$ o6 }6 z* u: j% V7 i$ Q/ H2 K    cout << "    personName: " << personName << endl;
- N. h; O4 U4 ?- S) {* ?    if(personName) MEM_free(personName);
" P4 }  }# |7 |5 @  |3 N$ t% ]1 s   
" }1 \1 h5 c, q) g6 K) z    const char* userID = loggedInUser->getCurrentUserID();
! i9 S5 ^# P6 l7 Y1 b3 Q    cout << "    userID: " << userID << endl;% c$ i) ]6 K) B8 [7 T- y
. K" H5 T: ^. L) }& o8 m! U. A
    tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();' T) X) W4 d& I$ Q' p( _
   
6 J" z  Y  [6 P    char *groupName = NULL;0 D' U; y$ ]5 r. m- D
    IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));" w  P" A. s# y
    cout << "    groupName: " << groupName << endl;
$ t( @; |4 P5 \( Z5 i3 @    if(groupName) MEM_free(groupName);
# g; W3 O+ k" ^; _4 I. _" q
% n" ?: @7 g' `5 h, y5 S5 |- q    tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();
1 A- @! x2 ~) C    char *roleName = NULL;
2 H. k9 g' Y2 H) H9 F# H    IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
1 e2 ~; M" C% t- n% b* o, K7 g    cout << "    roleName: " << roleName << endl;
2 N. T. J$ M, q0 y' ^) m" `    if(roleName) MEM_free(roleName);
1 }5 ]0 F7 k$ p2 c    $ R& }7 J+ c- U' [$ h, u& V- M
    logical isDba = loggedInUser->isUserSystemAdministrator();$ `6 g6 j' s, ~( N0 a+ ?
    if(isDba == TRUE) cout << "    User is dba member "<< endl;2 c8 c; B& N2 U4 }( d
    if(isDba == FALSE) cout << "    User is not dba member "<< endl;       6 S3 H3 u0 W) s9 `, O
}[/mw_shl_code]( p% s3 _2 Q+ u& t& O) _
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了