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

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

[复制链接]

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

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

admin 楼主

2020-2-8 09:34:22

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

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

x
) t& n3 Q. M- A! W) v" i, p( O
Teamcenter二次开发源码分享: 获取当前用户信息
! Z+ h& M& F) s* X) r' a7 G2 [
$ `% G! j3 {% h8 Q( J: F0 \  @[mw_shl_code=cpp,true]#include <iostream>: F! _! I2 W) s
#include <sa/group.h>
% g! G$ u& y* z) w#include <sa/user.h>5 s, y; Z9 \+ R, ]
#include <TC/LoggedInUser.hxx>
1 P% Z( j3 j0 t# j- ^. g0 L2 a4 X4 ~2 Z( S" P
using namespace Teamcenter;
% q1 {$ I* l9 {. P) M6 Zusing namespace Core;  `1 e% j( Y. N& x& M2 _6 s
using namespace std;' d$ e# r6 i" m  {  Z
. ?- [* y4 u1 n# d+ }% _9 J! ?; g
static void reportCurrentLoginInfomation()8 b+ ~1 ?2 @) M; X& H) |) |) o
{
$ w3 H) s8 w& I+ `4 n    int ifail = ITK_ok;
+ d/ P9 H4 x5 J! [- X+ e9 |    LoggedInUser* loggedInUser = LoggedInUser::getInstance();  o  B8 Q3 L! B
   
) j$ Y- u) p6 p- T1 ]    tag_t currentUserTag = loggedInUser->getCurrentUserTag();7 Q) `$ v1 T% g$ H1 P8 S2 a5 c# r
    cout << "    currentUserTag: " << currentUserTag << endl;5 v& a* `6 c' \& {
    8 Y9 p% m- K: K$ |
    char *personName = NULL;
- l/ ?8 f! _8 N1 b+ n  w    IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));8 O5 F' R; \/ [+ m& T4 j
    cout << "    personName: " << personName << endl;* ^  ]3 Z* G2 v" B% a! i6 |
    if(personName) MEM_free(personName);/ p9 W% c: S6 N+ _! W( t) ?% D* d
    + W9 H/ K, ^0 ^$ y9 c' Z
    const char* userID = loggedInUser->getCurrentUserID();
  h# Q  k% I- q4 u    cout << "    userID: " << userID << endl;
& E* X, v0 h7 U" B
* c7 p2 O4 N2 l0 }9 V    tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();8 o' H* f( i5 d" U
    7 P7 {# T! L2 U( M
    char *groupName = NULL;
) N& k+ m$ e1 T! o/ C/ k    IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
+ ?9 ~9 O2 T7 s* O" E- L    cout << "    groupName: " << groupName << endl;! J; f* l7 y* x( h& O  e
    if(groupName) MEM_free(groupName);
. u/ o9 x. X6 |% S( W0 @
3 e1 M3 p% U4 p: W( x% B    tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();0 ~0 y# a2 j% O# U8 w( y
    char *roleName = NULL;1 _: E" v6 ^2 h7 ]. ^9 F
    IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
7 ^9 v2 ?" I: E! }: Z  t    cout << "    roleName: " << roleName << endl;1 q5 D/ `. ]) w+ ?5 h
    if(roleName) MEM_free(roleName);% `* [; o! ^! U( }3 L2 B0 f
   
/ s( _$ Y  d' j7 Y! [    logical isDba = loggedInUser->isUserSystemAdministrator();  _" v( |( y$ g) g0 N3 g
    if(isDba == TRUE) cout << "    User is dba member "<< endl;7 }4 t) H1 h" o1 `& Z# b
    if(isDba == FALSE) cout << "    User is not dba member "<< endl;       * D/ ]1 o$ X0 d( ~  U
}[/mw_shl_code]  b1 g; c! c: }2 s
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了