PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

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

Teamcenter二次开发源码分享: 报告用户登录信息

[复制链接]

2017-11-20 13:49:47 2901 0

admin 发表于 2017-11-20 13:49:47 |阅读模式

admin 楼主

2017-11-20 13:49:47

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

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

x
Teamcenter二次开发源码分享: 报告用户登录信息2 w( J% I, @# o" v4 M* u
$ d( C/ l2 T5 s: s- G( z: ^" ?
% n5 j/ z  q) d' d8 g* g5 h$ g* g
Teamcenter c++ 方式:8 }% ]0 e8 H. B% e

& C) w2 J$ }. d8 K* z# y5 T  l

  d8 S" F/ E* x5 H  F#include <iostream>
$ C; V8 S2 |, ?8 P. H#include <sa/group.h>
, Z: C- X4 K& n- B/ z" R0 k9 y) m8 a#include <sa/user.h>
% |) R' s  H9 o% _/ y. i#include <TC/LoggedInUser.hxx>
6 F/ z. ]% r; U6 X5 M, }; h/ x3 O
& O2 p, I5 b. ]* j) q
using namespace Teamcenter;
% P/ g/ l3 o2 n6 J1 susing namespace Core;; K2 j9 q. U3 m) s" e$ u# N
using namespace std;
) O% C  c! T& H" {2 x$ T9 g2 w  J5 M9 O* G/ e" N

5 P$ M& R" T4 {! r7 O( _& Ustatic void reportCurrentLoginInfomation()* G5 h  u1 [' s( _8 R% V: T
{. ^/ X3 G$ }7 U% s, d; c' [) |
    int ifail = ITK_ok;. w1 U  U% Q8 S! f0 E
    LoggedInUser* loggedInUser = LoggedInUser::getInstance();3 F% F- m' Y- K
    ) V; l  ?) k5 q1 \; i" x# B; `5 j
    tag_t currentUserTag = loggedInUser->getCurrentUserTag();; x: R3 o9 i6 u0 t% a' v  @
    cout << "    currentUserTag: " << currentUserTag << endl;3 L) F/ e! V6 ]; y3 Y( z, \- a
    . G  J9 M( s* Y) P
    char *personName = NULL;  }$ i7 @2 N0 E
    IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));7 g0 |( H9 F3 o* f
    cout << "    personName: " << personName << endl;
; Z) _% l9 p) a* e    if(personName) MEM_free(personName);# K' O2 ~/ Z' P+ Q& v- W
   
" c7 r/ C; j! b! ]6 }    const char* userID = loggedInUser->getCurrentUserID();, z7 w2 u% \% u4 \& w6 r; D) B
    cout << "    userID: " << userID << endl;
% {" Z# \( Y% \! f' t5 j
7 M' Y. l; H) q) e, O
, [+ l& B. M4 P$ q
    tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();
+ q& r. R; H8 M0 a    9 n. M! z& }/ s
    char *groupName = NULL;
- v6 |, r  R. c+ E' l$ A    IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));
% R6 P0 M9 d( o0 W' Z# e1 x1 W1 }    cout << "    groupName: " << groupName << endl;
1 A1 I6 O0 s) X    if(groupName) MEM_free(groupName);7 D) t8 |7 i* {3 L4 e
& W& Q3 T7 h; u
- W  F& `) c+ t2 R7 m+ h; `
    tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();  E0 M- Y& v- ]  K  F8 I
    char *roleName = NULL;. @5 W9 C7 O4 ]8 |
    IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));
: k7 J& n+ p4 N: I1 ~& h8 \    cout << "    roleName: " << roleName << endl;
6 r9 g2 \& }% B. a' A) u# `/ L( T    if(roleName) MEM_free(roleName);+ w2 v/ m( ?( ]3 D2 G
    # M& q* `" Q! K+ `9 O) g$ n
    logical isDba = loggedInUser->isUserSystemAdministrator();
6 b+ a- D" s6 X& [4 G/ q    if(isDba == TRUE) cout << "    User is dba member "<< endl;0 T& k. l, O0 ]; \' m3 N, o( c
    if(isDba == FALSE) cout << "    User is not dba member "<< endl;      
: f4 }# Y) z( b5 K1 y}" M" G5 ]. E/ \7 R4 v$ N
% V8 p3 P3 U, Q

+ \1 p- Q, P4 a$ M. C

4 a4 x- j, d5 g: K( W% R5 ^/ i0 Q
& r: \3 @  w7 D7 P% N

+ k5 X% i& S5 XTeamcenter ITK 方式:% f4 N: L  U0 X" A0 z
3 s: C& a7 s$ ]

& y& ~8 Y0 i# E" \& M0 O/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */* O, _& t: B9 r' W1 g% D6 D
static void report_current_login_infomation()2 J( [/ F6 D3 U, h) I. X
{" x; [1 e% O) ~2 L
    tag_t
) U/ `3 T8 J+ F! \( y& s        current_member = NULLTAG,
3 t* z' u( a8 Z3 J( ?        current_user = NULLTAG,
8 s# b( [( T" o+ H4 h7 o0 h$ L        current_group = NULLTAG,  - [0 Q7 A! V2 ^; U  ]
        current_role = NULLTAG;" N8 k$ @2 |6 S. t: g
    char
6 V+ h2 g2 E" E& [        person_name[SA_person_name_size_c+1] = "",) P$ y- F) {, q
        user_id[SA_user_size_c+1] = "",  
. R1 ^2 s& ?. y) D        group_name[SA_name_size_c+1] = "",: R* o7 F1 h) I; s
        role_name[SA_name_size_c+1] = "";  
5 U+ N% q5 s9 o, x* U. k: J( C$ y( L/ v' Q
% v5 n! Q' D8 |/ W$ M
    IFERR_ABORT(SA_ask_current_groupmember(&current_member));
! C7 m; T/ m: `. {1 {    IFERR_REPORT(SA_ask_groupmember_user(current_member, &current_user));
( z2 {) F  ?7 D9 T2 |9 U) i. X   IFERR_REPORT(SA_ask_groupmember_group(current_member, &current_group));
5 ]# q2 ~+ g- s" ?    IFERR_REPORT(SA_ask_groupmember_role(current_member, &current_role));- J4 ?1 E! l& P& p: u1 }( m" n
  Q) s9 H1 u+ T9 H: Z9 w6 ^
( {) ]: T5 m% c( G0 [) I! C% _( \/ x4 @
    IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));( Z; [/ j$ P# Y8 s8 }* p
    IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));4 o6 p: ]& [: w# ?
    IFERR_REPORT(SA_ask_group_name(current_group, group_name));
: D! X4 K/ ]2 q: e    IFERR_REPORT(SA_ask_role_name(current_role, role_name));
' q7 T9 u7 }" U& k- p; h
" x4 b4 ]) q  Q6 y; |& W; h+ \! v
! {8 j9 t+ c( T" M+ j6 z
    ECHO("\n        Person: %s\n", person_name);( C4 D$ Y7 a9 v1 i: q
    ECHO("       User ID: %s\n", user_id);) p0 r6 X' l; ^" ~* }+ F+ k
    ECHO("         Group: %s\n", group_name);
0 c% Q$ E" C9 ~, }8 _    ECHO("          Role: %s\n", role_name);+ P) D" k: z/ Y
}3 c  _* o0 k7 B1 o7 Q/ C
$ g2 T" A5 S  M7 ^3 u, I3 ?
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了