NX插件
送教程
DoTeam
培训报名
AI · CAD · PLM
首页
Portal
社区
论坛
NX技术
TC技术
Catia技术
自研系统
更多
登录
NX Toolkits 「PLM之家插件」
Castsim「铸造PLM系统」
EchoCAD「大模型CAD」
视频在线
实践教程
前沿咨询
高清购买
国产软件
PLM之家PLMHome-工业软件践行者,大模型驱动工业生态建设
»
社区
›
Siemens PLM Teamcenter学习论坛
›
Teamcenter二次开发
›
teamcenter二次开发 判断当前对象是否被check out ...
返回列表
发新帖
查看:
3603
|
回复:
0
teamcenter二次开发 判断当前对象是否被check out
[复制链接]
admin
admin
当前离线
积分
60
6
主题
4
回帖
60
积分
管理员
积分
60
发消息
发表于 2019-2-8 13:39:12
|
显示全部楼层
|
阅读模式
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要
登录
才可以下载或查看,没有账号?
注册
×
& D4 R" Q* |* j' P2 C" C6 b
; E5 I1 d) r: z' E% x
Teamcenter
二次开发 判断当前对象是否被check out
7 q3 ?" b# c; _( ^
[mw_shl_code=cpp,true]#include <iostream>
( j1 n+ b' X, M9 a$ ?
#include <res/res_
ITK
.h>
/ Q b$ K1 D* T! o
#include <sa/user.h>
6 _( e! \2 J9 Z
#include <base_utils/IFail.hxx>
+ ]5 G0 k7 [: m, c3 t
#include <base_utils/
TC
ResultStatus.hxx>
' C9 {# u: E6 o- T" I. I
#include <base_utils/ScopedSmPtr.hxx>
3 ^) f; b* O; H6 g# J) T t
2 u/ x8 G5 Q7 D' B! a' H
using namespace std;
) X0 U1 _% W6 F8 V3 H1 {4 B+ R0 Z
using namespace Teamcenter;
$ [- `* Y% N& E. u" i; ?3 {7 c. ^
1 C6 S5 i$ ~) t- T! |5 S+ y) M7 t
static logical is_instance_checked_out(tag_t object_tag)
1 d; E c; S5 u, ~% y
{
' X# _3 G! \6 t
int ifail = ITK_ok;
$ p9 b. g9 h! j5 i
ResultStatus rstat;
+ I) e$ n' f+ E9 A1 |* t3 t
logical is_checked_out = false;
, ~) g7 y I9 Z
try
) [# X4 B; a+ K z; m! k8 F
{
8 P! b/ ?) ?/ L9 J) B8 j6 f
rstat = RES_is_checked_out(object_tag, &is_checked_out);
' t" b: P' w: h+ G* G8 [
if (is_checked_out == true)
) Q) c" C0 ^' J- t: \
{
% a* G6 }+ O) b7 k5 _* u
tag_t user_tag = NULLTAG;
; K% \" g( _% l& g# {: F& s
tag_t group_tag = NULLTAG;
* w- [7 }3 U3 b1 X7 g+ y- E/ l
rstat = RES_who_checked_object_out(object_tag, &user_tag, &group_tag);
, f1 e" j9 m* Y6 X/ G% m$ q
, Z; J# ?( Q: q
scoped_smptr<char> user_id;
/ N$ P! M; k0 M4 G, F2 ?
rstat = SA_ask_user_identifier2(user_tag, &user_id);
/ D) q3 Q, Q! q$ {: K9 L+ y: {( x
1 E; t/ H& w/ W' g D
char msg[] = " Checked out by: ";
/ Q0 m, d* M# t# @8 m
cout << endl << msg << user_id.get() << endl;
. h3 ~2 @1 F8 E* p
is_checked_out = true;
+ Y3 }2 Y; Q# M; u3 Y- Y- |/ o
}
8 d1 c( p3 P* z- c
}
5 w8 Y0 [; C3 Q' Q8 v
catch( const IFail &e )
3 k" e7 r; X) u9 D0 L4 Y
{
) H* \/ _# A i) c: {
cout << "error " << e.ifail() << endl;
( U' r9 V' s9 @/ y1 Z7 E) [
cout << e.getMessage() << endl;
0 o1 P8 b" {! R4 {; O# ~0 [+ v
}
" e4 r& q4 F; P6 _
return is_checked_out;
- W5 ?3 k, L; a: [' O& m
}[/mw_shl_code]
0 i% z. N1 R/ D$ {4 ~" m
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
浏览过的版块
Teamcenter 视频教程
在本版发帖
关注公众号
QQ客服
返回顶部
快速回复
返回顶部
返回列表