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

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

[复制链接]

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

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

admin 楼主

2020-2-8 09:34:22

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

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

x
1 U6 u- g3 c; O4 W$ M6 m
Teamcenter二次开发源码分享: 获取当前用户信息: I! o9 m. u' N( }" Y

8 e3 w3 b6 G0 E+ m[mw_shl_code=cpp,true]#include <iostream>
+ p2 k* \8 M; a: q! S: D#include <sa/group.h>
+ C0 ^4 A, k5 a, w0 O: C5 f#include <sa/user.h>: n( M% A6 x* k: H& g* Z
#include <TC/LoggedInUser.hxx>% K* C, g1 h8 M5 y$ x$ a5 a+ c

" g# m3 g6 Z$ X% t$ i5 pusing namespace Teamcenter;
, J1 @1 J5 d! b# j3 m" Eusing namespace Core;
/ ^% [1 v! u/ `7 X! o# F! [" {using namespace std;
6 I* s6 u5 O/ |: W, w! p
, [8 l( \% d/ q' |static void reportCurrentLoginInfomation()0 K" h3 Y$ J- u
{
+ d2 @* C+ D" s# T" V    int ifail = ITK_ok;
9 ]# y' e- X! {' i    LoggedInUser* loggedInUser = LoggedInUser::getInstance();
' T/ Q# o/ f1 F; l/ T$ J    # ^7 |1 Z: m" V0 ]2 P& G8 j5 K
    tag_t currentUserTag = loggedInUser->getCurrentUserTag();$ T/ P- o) C+ t& F
    cout << "    currentUserTag: " << currentUserTag << endl;8 Z; \5 c4 c. K& f; D! L
   
# N& g4 B1 |  t! [  ]4 T; l    char *personName = NULL;
  ?6 C( O: [1 Z/ Z2 x& A) f* r    IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));2 y  A6 P0 K+ ]4 j1 I5 j
    cout << "    personName: " << personName << endl;
# Y) P8 H/ z" R, S    if(personName) MEM_free(personName);
4 P% B. t' T9 [. i    5 E4 b  [% y" @4 r1 p+ e; I
    const char* userID = loggedInUser->getCurrentUserID();
4 g3 E: w3 o% i) h& k    cout << "    userID: " << userID << endl;
5 Z9 p3 a& Y% Q9 [4 U4 Y: |6 b4 M; u/ G5 |& ]9 j  g
    tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();  u& p( B/ A- }- K) P" ]- N+ a1 m
    5 [( ~: d+ e* J4 w) O# B
    char *groupName = NULL;  ^# H4 m; G4 Q
    IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));1 X  H4 [7 b$ R' x5 w
    cout << "    groupName: " << groupName << endl;3 e( I5 h0 T5 s1 @! Q
    if(groupName) MEM_free(groupName);" T3 e! v& b" N. U% d& F7 M

, A- I9 G( u/ }7 B$ H( P    tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();& u- y  L. M( Y# Y- L0 }; z% Y
    char *roleName = NULL;; `! J; M4 ^" O8 J1 k, o# h
    IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));6 o: R- U7 F- [7 b( ^, k
    cout << "    roleName: " << roleName << endl;* |9 G) `7 j" q
    if(roleName) MEM_free(roleName);
* K! W" g8 j/ p& p   
  Z* z3 j7 c2 [+ a7 _) e  F    logical isDba = loggedInUser->isUserSystemAdministrator();
8 G" B) m9 k  y1 @    if(isDba == TRUE) cout << "    User is dba member "<< endl;
/ A% b8 v, n% t; b/ P2 W2 D. F    if(isDba == FALSE) cout << "    User is not dba member "<< endl;      
6 s- r- ^) q# V; h7 M0 O( C}[/mw_shl_code]
" m" G  s% b  L6 l, ~4 d5 g
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了