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

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

[复制链接]

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

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

admin 楼主

2020-2-8 09:34:22

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

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

x
  I# B; w) O$ O$ W4 E: i
Teamcenter二次开发源码分享: 获取当前用户信息/ m: H' R( i, X. x1 {2 l
- `$ o; l, U! \5 m1 n
[mw_shl_code=cpp,true]#include <iostream>7 q; Z$ G1 D) Y$ e! ^- L( o% e5 {
#include <sa/group.h>7 X5 w0 }! Z$ o: A- \' ~
#include <sa/user.h>) h  P2 O1 H: P' k' T& {
#include <TC/LoggedInUser.hxx>
7 J' u+ I: O% U$ q3 d3 H# @, M6 k! U& w4 {0 W- G
using namespace Teamcenter;
" u. Z0 E' d, q2 G/ F& K' }1 fusing namespace Core;
2 W# i; I: O# j* u1 \! I7 iusing namespace std;
# E- t4 {! e" d1 u2 F) Y$ |' ]6 ~5 Z$ i) p+ I6 M9 N0 C4 K
static void reportCurrentLoginInfomation()
- j$ d/ |: E- b, m{
& y6 R& S/ c, p" s    int ifail = ITK_ok;
8 }  a0 v5 U3 d$ g4 A1 e    LoggedInUser* loggedInUser = LoggedInUser::getInstance();
8 B( g# Z$ U1 D2 k3 H    & e. o2 F; x0 d" Y9 q. g
    tag_t currentUserTag = loggedInUser->getCurrentUserTag();
% U! I5 A) `& n7 u6 `9 P* O    cout << "    currentUserTag: " << currentUserTag << endl;
- t4 A& r# M6 M/ a   
  h* E4 \- r2 {8 A: x' M    char *personName = NULL;% X- J& D- v7 J$ o7 q  {
    IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));5 \# T* i$ O* f, R3 H
    cout << "    personName: " << personName << endl;
) x# X+ k3 M: M# t/ Q% O1 o    if(personName) MEM_free(personName);
( e- H* k1 }' o% @0 x0 S4 \& _    5 a7 r" V3 Z; @5 X$ v" {
    const char* userID = loggedInUser->getCurrentUserID();' w/ c! o: A6 ]2 k0 ~  F0 K
    cout << "    userID: " << userID << endl;
9 H% ~3 O/ L2 P# R" S6 v. `& j
! m% K! y& n, U5 l8 _    tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();& }$ a/ |: ]+ t* r2 g6 D. C6 g
   
" w. Z6 |* V7 C/ K: i* {    char *groupName = NULL;9 G: x* D' \0 i) `) U' I: F3 @
    IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
9 m) r( Z9 f$ y4 v+ L2 j0 ]    cout << "    groupName: " << groupName << endl;
! u( S2 Y8 k3 b2 n% [/ K: h    if(groupName) MEM_free(groupName);
1 L  {- {9 v) X. A+ z2 _
9 D5 V# T0 o& u! r- w# b    tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();4 u) j9 W7 a. A5 _4 k
    char *roleName = NULL;! ~, f3 k+ G) `  k- q. o' ^7 M( h
    IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
! C( k. ?/ o3 C4 ~    cout << "    roleName: " << roleName << endl;: d8 B! t3 G' O4 Q
    if(roleName) MEM_free(roleName);( F0 y/ T! b( ~+ t. L
    4 M) _$ s) ?' Y6 b$ I3 L: C+ i( j2 F: k
    logical isDba = loggedInUser->isUserSystemAdministrator();8 p; A4 O4 K1 }" j" f
    if(isDba == TRUE) cout << "    User is dba member "<< endl;, ~$ j0 V0 Z- d' K
    if(isDba == FALSE) cout << "    User is not dba member "<< endl;       4 e2 @2 d. x+ Q. D9 r0 l) N
}[/mw_shl_code]
" R6 Q: H5 k1 A3 x5 q; _8 l
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了