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 2914 0

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

admin 楼主

2017-11-20 13:49:47

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

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

x
Teamcenter二次开发源码分享: 报告用户登录信息9 ?% |. K3 @* Q3 L0 ~6 J2 S
/ {: \; f5 b+ W# F' i
% G& c0 ?* a9 E& }2 z0 m
Teamcenter c++ 方式:; ~7 `/ _! @  _6 u  H4 U
" R% b) C  X5 C" }7 |0 v- R
( K: \* `# T- G' c
#include <iostream>
' t' L/ U( H: d2 |#include <sa/group.h>
3 p1 `. y- t# b# m#include <sa/user.h>
6 A# e6 j) s  r#include <TC/LoggedInUser.hxx>
9 b) U# Q# E' ^3 |6 n. f4 }) P2 v) k, n% W: \# F
. g" O' b8 p: J+ o; |% \& A. O
using namespace Teamcenter;9 i$ D  s/ j4 f: O( U6 h
using namespace Core;# h% S, Q3 Z: M  B( r- f5 Y
using namespace std;
; L' R% Q& `7 \8 _
% O4 c2 y5 I, f
+ f, d5 l' I5 p) e* E7 |* q* {  m% H
static void reportCurrentLoginInfomation()
8 g/ q" J9 Z. j3 s{2 m8 d" |/ L" p/ E4 e5 `) @4 `, V# j" X
    int ifail = ITK_ok;
# A9 G8 @. g6 ^; \    LoggedInUser* loggedInUser = LoggedInUser::getInstance();
" L/ D7 F, z1 o5 L: g& X    . f& Y: E1 \: Z( ~- H% S1 l' u
    tag_t currentUserTag = loggedInUser->getCurrentUserTag();
  F9 N; Q! q% e: L" g7 {5 L    cout << "    currentUserTag: " << currentUserTag << endl;
  f/ L; i3 a4 n; z' j   
+ ]% C' I8 o8 f: N+ E4 Q$ U2 v7 f  W    char *personName = NULL;4 {2 m- E4 P' C! D$ P
    IFERR_ABORT(SA_ask_user_person_name2(currentUserTag, &personName));
! }2 R0 t1 n; n9 w    cout << "    personName: " << personName << endl;' |4 B: Z  \& [
    if(personName) MEM_free(personName);3 P9 S6 I# {7 M" J; G, I
   
7 U0 A+ {# U. r, A. l$ x* O8 \' T3 B    const char* userID = loggedInUser->getCurrentUserID();7 A% q0 Q. E  F& |4 K
    cout << "    userID: " << userID << endl;
- v& e$ x" _5 @# X- o
/ t( V0 m0 m5 W; t

5 b. T! L4 ~8 g, y    tag_t currentGroupTag = loggedInUser->getCurrentGroupTag();
& |9 w" \3 U) c$ J8 q    ! A+ C, F+ d% T) ]2 s8 n
    char *groupName = NULL;
0 H. f# D2 Q. M9 q! D8 E5 C    IFERR_ABORT(SA_ask_group_name2(currentGroupTag, &groupName));! b* ~; ?0 _+ B2 f1 f: t' Y
    cout << "    groupName: " << groupName << endl;# g0 A) D& U( ?3 q: P% d4 }; O$ w* p) S! @
    if(groupName) MEM_free(groupName);  l1 W; Z3 ?! Q! V$ }; k
, @! ^' `$ _8 `* F. O4 y8 w

  ^; j( O0 C( ~/ i  q    tag_t currentRoleTag = loggedInUser->getCurrentRoleTag();- W# }  T$ C- m8 _9 D, ?5 Y
    char *roleName = NULL;5 U) ]4 P) x) N! r% H$ X  |( d
    IFERR_REPORT(SA_ask_role_name2(currentRoleTag, &roleName));  R% H' J2 |" }+ P  v! J2 {0 H# q
    cout << "    roleName: " << roleName << endl;1 m- C1 f, c% Y( m
    if(roleName) MEM_free(roleName);+ r" H) x' p, t/ o0 I
    + M* S! K% }* y4 z/ p. ~) G1 n9 c
    logical isDba = loggedInUser->isUserSystemAdministrator();
: R: t0 G6 x( Y    if(isDba == TRUE) cout << "    User is dba member "<< endl;7 f3 q" L8 K, b0 V4 k
    if(isDba == FALSE) cout << "    User is not dba member "<< endl;      
5 b0 U" T+ v7 N% L}. _7 x6 S/ a3 f
9 a, o; R- W7 U5 X9 F
2 C  g4 x8 L& `, K+ ~$ D( A3 G

; m( p4 e8 v1 U# `0 _# A- J
( a! X* s( `7 @

1 M* }- E* t% ?; i# k- Q) }  D7 ZTeamcenter ITK 方式:
) C1 f( f2 U3 B
, q, J( J- _3 t

* c7 u& H9 K6 R/*HEAD REPORT_CURRENT_LOGIN_INFOMATION CCC ITK */6 s! w4 X' w: c% q9 N1 v+ q( A
static void report_current_login_infomation()
. Z5 x% a$ w: c. C{8 ^; u& @- T: {7 t8 B( I
    tag_t
% ]( a+ P+ z8 F( \& F7 E        current_member = NULLTAG, 9 o2 i  y  [. f. v7 m
        current_user = NULLTAG,
. {2 J! |% X: W* n2 e        current_group = NULLTAG,  
' I" o2 D$ x: R8 w2 |# O        current_role = NULLTAG;
3 N! E6 r7 |3 T0 q    char
( \  t2 d- q5 l$ F        person_name[SA_person_name_size_c+1] = "",# N* }1 T/ f# u* v, n1 Z4 T! ^0 n
        user_id[SA_user_size_c+1] = "",  
8 N8 e% L- u) k* i. [9 X8 P        group_name[SA_name_size_c+1] = "",+ a4 m! s5 i( S( v8 R& b
        role_name[SA_name_size_c+1] = "";  
* x! t3 G5 N! y- e7 R( K; p6 C; N' u

( M  E. H1 u0 C) C" ]5 V4 ~5 f    IFERR_ABORT(SA_ask_current_groupmember(&current_member));
. T: x/ I2 A1 @( W    IFERR_REPORT(SA_ask_groupmember_user(current_member, &current_user));3 B1 s* f: O* N: S$ K! j9 W
   IFERR_REPORT(SA_ask_groupmember_group(current_member, &current_group));; J9 E& V8 W+ W$ _6 Z
    IFERR_REPORT(SA_ask_groupmember_role(current_member, &current_role));/ D8 T! D  o5 |/ t$ L4 I0 N) _
" M; F7 ?! R3 d1 ]) Z

# s; @1 p5 d8 M* p2 ?    IFERR_REPORT(SA_ask_user_person_name(current_user, person_name));
0 _, s- b3 a' Y1 o9 q0 [    IFERR_REPORT(SA_ask_user_identifier(current_user, user_id));
; ]+ C8 O( U4 X( |/ X    IFERR_REPORT(SA_ask_group_name(current_group, group_name));+ B( J$ L2 h; g8 w2 D+ K; r
    IFERR_REPORT(SA_ask_role_name(current_role, role_name));
3 F& |9 a& e" Y: Y, `& x8 ~3 v4 G+ |2 O5 c( j( \0 x& Y
8 b2 E/ b5 b! [1 v1 F5 D# f3 t
    ECHO("\n        Person: %s\n", person_name);, x4 d1 z+ U6 J  I4 d4 ?3 s1 W
    ECHO("       User ID: %s\n", user_id);
+ V7 a  _4 O1 g* q    ECHO("         Group: %s\n", group_name);& k+ p8 d# K" u: c
    ECHO("          Role: %s\n", role_name);
% i: K+ }' l4 b5 ]}( z$ W' `0 d5 F5 W, d$ S

/ r" I( J% |) T! p# ~( |
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了