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

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

[复制链接]

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

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

admin 楼主

2020-2-8 09:34:22

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

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

x

! C6 n: ^& i% A" G1 ~  wTeamcenter二次开发源码分享: 获取当前用户信息
! O, X( T& r% n$ \: f% \7 v" c8 x
[mw_shl_code=cpp,true]#include <iostream>
# I) `7 n$ h. t8 ^#include <sa/group.h>$ d8 Q7 i! ]* J% r
#include <sa/user.h>
% B* \% C( `% T' m) b! o#include <TC/LoggedInUser.hxx>
. b, }0 F/ u$ `" P3 ^! {2 A8 E/ x0 S9 Q& {. p& I2 A! `/ j
using namespace Teamcenter;
  h  c: L' e% E% T7 husing namespace Core;8 s/ X8 T( k3 Y, U( i$ {# A
using namespace std;
6 A! ]% P" _% B2 Z, u2 L7 ^" T/ B* ?. D# U6 j* B& h7 v
static void reportCurrentLoginInfomation()) r7 ^* E  ?; Q* I1 e+ W
{
8 ~: r/ v7 _5 [4 b    int ifail = ITK_ok;& z0 z" F+ O+ \: {5 K5 s; A: W
    LoggedInUser* loggedInUser = LoggedInUser::getInstance();- F+ V  i7 h# `: `. o
   
# R+ _( d+ }" l    tag_t currentUserTag = loggedInUser->getCurrentUserTag();0 E$ \9 G4 h( Y: ^( @% a+ k) q
    cout << "    currentUserTag: " << currentUserTag << endl;
6 N6 x( U3 i8 |9 k4 m  r9 X5 D* S8 _5 A    ( L  _. V' V* w! c8 B
    char *personName = NULL;
. O8 p7 {5 J% v9 |' Y4 C/ {    IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));- @  t: _$ z/ z# I" R
    cout << "    personName: " << personName << endl;
6 a: `# R8 l% N8 T4 O* d    if(personName) MEM_free(personName);
4 I6 z# g' _/ v2 }9 S  K   
* W, M9 M* Q$ {) s, Q* v  X    const char* userID = loggedInUser->getCurrentUserID();
9 c5 W) H/ S: r4 O, j0 m6 B    cout << "    userID: " << userID << endl;6 F+ R# Y; G! Y* w2 ~

; b/ f- g$ W3 o8 f- B1 a. u' H! b    tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();# a3 R$ v+ k5 ?5 T% W
   
# ?6 u7 f) r2 C5 N    char *groupName = NULL;
, N% g% |7 u) `1 b$ B9 n4 Q5 K8 Q8 P    IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));7 u5 I. ?2 ~! p) E9 Y6 k- v
    cout << "    groupName: " << groupName << endl;% |7 |; G: ^% k+ z& W9 u1 d3 U4 N  u" _# L
    if(groupName) MEM_free(groupName);
" L4 I8 ?8 M3 _$ i* B/ ?" k4 N% [: }% _) p( m
    tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();" A: g# o9 r# |# h- f
    char *roleName = NULL;
7 f) j& h) d( _! E    IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));3 R. m; g) c0 C' k: q
    cout << "    roleName: " << roleName << endl;) h; M+ P8 e; X, V8 L
    if(roleName) MEM_free(roleName);
0 P: [+ B: n. L   
4 L" c' i' y0 g+ f% X2 Q; f    logical isDba = loggedInUser->isUserSystemAdministrator();
9 p; Y& }, _# ]. z4 _2 b/ ]8 X    if(isDba == TRUE) cout << "    User is dba member "<< endl;1 o& l8 r) X& Y; ]4 ]1 Q
    if(isDba == FALSE) cout << "    User is not dba member "<< endl;      
% e# K/ E, I' X  N}[/mw_shl_code]- N& e2 t& B! ?$ f8 T5 a! N
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了