查看: 2654|回复: 0

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

[复制链接]

6

主题

4

回帖

60

积分

管理员

积分
60
发表于 2020-2-8 09:34:22 | 显示全部楼层 |阅读模式

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

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

×
* P+ x2 \1 `7 G# m# c- \3 \
Teamcenter二次开发源码分享: 获取当前用户信息
6 g+ N5 p; H# a4 m7 A( W5 B
" H  N/ Y# S7 ?, F5 C- o[mw_shl_code=cpp,true]#include <iostream>, C+ v, Q0 y: ]) D* X: j2 [3 F2 j
#include <sa/group.h>! Y& ^; G& _4 w1 i! B6 W9 Q& C
#include <sa/user.h>
( _7 U8 o- x7 M+ O8 r#include <TC/LoggedInUser.hxx>% s8 e: I4 s8 z2 H% R

# {( E5 e2 X- V! g% w' o/ W2 Yusing namespace Teamcenter;
- N' [/ o4 [7 l$ _- i9 }# \/ busing namespace Core;
& j9 Q% d& B2 X6 y7 Kusing namespace std;
& J4 c& [1 l& x1 l$ `4 s- ?# j: z( }4 h
static void reportCurrentLoginInfomation()
9 O; F/ t- _  A  c) y( L' X9 K, G{
. Z/ A4 S4 U# t( l1 C8 r    int ifail = ITK_ok;- O' e& k9 s( Y- ?
    LoggedInUser* loggedInUser = LoggedInUser::getInstance();
* `0 F5 i: o  z   
9 h% Q0 o3 |" f# Q4 }    tag_t currentUserTag = loggedInUser->getCurrentUserTag();
5 k8 b0 q# F! m9 E5 a, P4 Z    cout << "    currentUserTag: " << currentUserTag << endl;
! n/ x1 C' H9 {1 C  J    9 ?% i* Z# i5 Y1 i
    char *personName = NULL;
4 m& a' E4 b. @4 z2 l& s  H/ A( M. Q    IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));
) E3 W0 r- c1 \) o1 U& ?) U    cout << "    personName: " << personName << endl;
& J4 U( a( b& ~3 u    if(personName) MEM_free(personName);) H+ v+ l5 |( F( E: g
    7 [# F; y2 M* j" b0 |4 E) W) }
    const char* userID = loggedInUser->getCurrentUserID();- ~; g  C  h1 A% v& u% T! ~
    cout << "    userID: " << userID << endl;$ s. k# e2 C$ L! n6 N  c' c% `8 n
2 ]3 ~% J* k" a2 E2 @
    tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();5 {- @' P/ `/ g! U+ _
    0 D5 a9 |+ f" ]1 W9 P: Q4 U
    char *groupName = NULL;( t. c" [8 _, f, \. n/ J# \
    IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));" ~& O% Q; c4 K
    cout << "    groupName: " << groupName << endl;. [: t$ I2 R; x  C1 s: f! S
    if(groupName) MEM_free(groupName);' z' @* i8 K% N1 @2 ~, T# l& P
; D+ `$ X( r  s% [& T
    tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();7 u! G  N3 e  ]5 j
    char *roleName = NULL;0 Q+ d9 j7 p; |
    IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
, L6 `4 Q. {3 {: {    cout << "    roleName: " << roleName << endl;
* t, N& r/ V: {) d    if(roleName) MEM_free(roleName);
( M9 K* _6 B3 A% q; b5 Q    0 `, d9 p+ |% d
    logical isDba = loggedInUser->isUserSystemAdministrator();
' b! Q+ j7 g" U/ @    if(isDba == TRUE) cout << "    User is dba member "<< endl;) [7 I% l( J. x; Q
    if(isDba == FALSE) cout << "    User is not dba member "<< endl;      
" y0 J. o% ]; `" U; |) e- l4 I}[/mw_shl_code]5 Q+ ]9 }1 {& w1 |& s6 @
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

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

本版积分规则

在本版发帖
关注公众号
QQ客服返回顶部