|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
, k& ]6 s$ a G
Teamcenter二次开发源码分享:获取下一个Item ID的方法6 b$ @/ x. A7 B# F3 \5 ], i
( d+ w$ M# x# w
[mw_shl_code=cpp,true]#include <iostream>" S. k7 Q$ {; Q5 k# s
5 i% C- W, G, \/ @#include <property/nr.h>4 }9 U* A; d" U) ?- I: A! M
#include <TC/tc.h>
% q1 V8 {4 x9 b: h1 B( y#include <tc/tc_startup.h>
* q# L1 R7 c/ E+ Y#include <tccore/item.h>' J* R3 P7 b' M1 {( r2 `
#include <tccore/tctype.h>
( e) U5 Y0 m% j% x( N: ~! B7 m. a8 S#include <base_utils/IFail.hxx>
* ?2 I( l" v& \6 Q#include <base_utils/TcResultStatus.hxx>* ^( i3 }/ ^1 E8 G9 Z/ D
#include <mld/logging/TcMainLogger.hxx>
% y; x! p6 B; Y- G" `
3 e) ]1 Y& Y& |+ v e; b9 Iusing namespace std;% m B: C) W) j6 F) o6 }% \( v1 j
using Teamcenter::Main::logger;0 p4 j+ @/ H G0 i! x6 E
% `' q) p1 X! w1 D
int get_naming_rule_next_rev_id(tag_t item_tag, char **next_rev_id)% w. g' @0 h# {( }7 N
{
. ~" _1 r4 f, X9 z+ V int ifail = ITK_ok;
# g. O2 z* [% Y) U7 L* v4 C8 W ResultStatus stat;
" \2 {" z% c( E/ U/ W5 p* T" m try
6 h5 o4 u8 K, l" G; y3 Y/ _ {
9 l6 J" e" v3 o5 F' Y) k6 \ tag_t item_type_tag = NULLTAG;
: o" G* x$ ~" [2 W& B% O stat = TCTYPE_ask_object_type(item_tag, &item_type_tag);0 g* O! Y! w3 X
; T# h. j* S, d& P0 u- M$ l char *item_type_name = NULL;7 O: Z( I. F* K
stat = TCTYPE_ask_name2(item_type_tag, &item_type_name);
4 B6 y7 e9 {8 d- s5 J5 G0 T7 V
0 e3 s" G0 ] O/ Q+ R2 }6 N stat = NR_next_value(item_type_name, "item_revision_id", item_tag, "", "", "", NULLTAG, "", "", next_rev_id);
4 ^' j8 Z: L2 _. O+ T if (item_type_name) MEM_free(item_type_name);1 u h2 H4 E* K2 [" ]5 |1 p
}
6 n7 l( q1 a1 j2 z catch (const IFail &ex); y% X3 S! n0 p5 C! P: z
{/ y4 [+ {/ k7 T+ j5 H
logger()->error(ex.ifail(), ex.getMessage());
+ e: s0 H7 R$ v7 Y6 P! a cout << ex.getMessage() << endl;! v0 j% H' ^7 a0 V0 [. d
cout << "error " << ex.ifail() << endl;5 b- U" `* Y5 N! z: a+ S, a) f
}
n+ W' p# l& a0 [* T return ITK_ok;! ?! ^' A- J/ z; j/ t- v
}[/mw_shl_code]* B8 j% G7 A3 m- \8 Z9 h/ p
|
|