PLM之家PLMHome-工业软件践行者

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

[复制链接]

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

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

admin 楼主

2020-2-8 09:34:22

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

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

x
: [+ z) O) f" A) c
Teamcenter二次开发源码分享: 获取当前用户信息
- {, i$ D7 @  O& M" [2 m6 d" }! E$ ^0 L
[mw_shl_code=cpp,true]#include <iostream>
* w3 O6 j, F& J. z8 V, e- b#include <sa/group.h>
' `1 W! G6 f* }#include <sa/user.h>1 k: {- `% k2 D# c; |/ f/ X( J: ?
#include <TC/LoggedInUser.hxx>
7 b7 F% j9 |" j' Z. S
6 e; |" o4 y, F, qusing namespace Teamcenter;
+ X. a& z3 a6 t# J" F" Susing namespace Core;
1 s% K0 z1 e8 ^) |9 wusing namespace std;
/ v8 o2 x+ G& h8 C! G! e
8 P" T  p4 e3 R) b( gstatic void reportCurrentLoginInfomation()! u4 i" F, k, ]: I" e2 P7 x' z
{
& E! s' P* g. E- H) J! P    int ifail = ITK_ok;1 _2 L5 H2 U- G$ q. I& |
    LoggedInUser* loggedInUser = LoggedInUser::getInstance();2 @1 @  D4 `" Q8 V6 n# V
   
# D8 m7 p, R7 E) w4 e    tag_t currentUserTag = loggedInUser->getCurrentUserTag();  p# X0 k" w% O
    cout << "    currentUserTag: " << currentUserTag << endl;
% }/ `1 g8 Y8 f7 k# F! {/ j    7 [# T; Y/ Q4 U+ |) `
    char *personName = NULL;* Z# P/ {! ~* Z+ K: `/ K
    IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));
2 {- X! g) g! f% n/ S    cout << "    personName: " << personName << endl;
" \/ f! }6 E/ @# m* q    if(personName) MEM_free(personName);& c) r- t& O( m) d) g. T
    6 e( L+ j1 `) h/ f% P
    const char* userID = loggedInUser->getCurrentUserID();
& v8 Z9 J6 @6 l3 J  J    cout << "    userID: " << userID << endl;# f" p- w# ?: e; h0 B# ^
: o1 L: e/ i" K# T' T. C
    tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();
6 J# z1 J" b+ b! k9 r& m    ) y# R1 P7 C  }* O' j# P9 L! |7 k4 w
    char *groupName = NULL;
7 C% k3 s3 _3 Y  G    IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
+ M% E; ]) V$ j4 m    cout << "    groupName: " << groupName << endl;
* R5 d. b  e' U* o; S    if(groupName) MEM_free(groupName);( ]1 U6 y/ T8 j! t* P1 _/ R
2 p5 ?2 ^9 h( {% F& u
    tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();  I+ Y3 w+ |- s* w# x
    char *roleName = NULL;2 L% {# Z- u: T: Y' g. G+ K( \( v
    IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
' P+ K5 k' S6 e4 b+ ^+ O4 S3 }2 M    cout << "    roleName: " << roleName << endl;+ J4 j8 B3 y& Z8 K% {$ u1 {- r
    if(roleName) MEM_free(roleName);& q3 s3 x5 s- J8 w# M
   
0 z: d0 b5 N# G5 A    logical isDba = loggedInUser->isUserSystemAdministrator();
4 b( d2 K/ q, D! H! @5 G    if(isDba == TRUE) cout << "    User is dba member "<< endl;
  M6 s% [5 u# @4 a) q" m    if(isDba == FALSE) cout << "    User is not dba member "<< endl;       , M$ G* C9 Z, w. h1 e
}[/mw_shl_code]
% i1 L" P" U5 f7 ~- z5 J! \
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了