|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
4 D3 w: ]# s8 c, ]) r6 w$ \
Teamcenter二次开发源码分享: 创建Item Create Item方法: [ K; @4 s1 a3 w% F
% y3 p" D' S9 A. t. q& r[mw_shl_code=cpp,true]#include <TC/emh.h>) s# l3 H) e' x' I- A3 ~: |/ Y
#include <tc/tc.h>
/ J6 Z M3 M; R, e5 A#include <tc/tc_startup.h>' C, V% g& H( K. w
#include <tccore/aom.h>8 y+ M! ~2 R g! j; L* Z- c
5 O9 N$ Y! _ J t3 r7 c#include <iostream>5 p$ E. J3 l( \# N: x: c
#include <base_utils/IFail.hxx>4 u& G! Q5 C( d# d6 T5 E
#include <base_utils/TcResultStatus.hxx>4 M" K4 \, y; ^0 \& Z
#include <metaframework/BusinessObjectRegistry.hxx>+ u$ a6 c$ j7 ?& Z" L
#include <metaframework/CreateInput.hxx>4 B' ]$ C* }& M
#include <mld/logging/TcMainLogger.hxx>
|1 B n, l9 x4 E; x% k9 ~" r#include <tccore/Item.hxx>
2 W" c+ p& N9 k) A# _( ]4 u6 [0 w: F; c
using namespace std;7 |7 ~; g* A1 \* S/ N5 R" w7 g
using namespace Teamcenter;
p( X* {' z7 h$ N2 [" A. Vusing Teamcenter::Main::logger;/ Y' ~7 z- M* r9 o( w
6 i: b( D' Q! X
int ITK_user_main(int argc, char* argv[])9 F( K$ [3 f( m
{
. {, Y$ p, J8 ` int ifail = ITK_ok;4 x) ~1 E, Z- z) E
ResultStatus stat;
% A" W( `4 E/ g( F5 J% } try B- N# M- }9 p2 p1 T5 P
{
: }! |) u* a8 f* b$ q4 t stat = ITK_initialize_text_services(ITK_BATCH_TEXT_MODE);
2 ?6 ?/ F" p5 ^' y stat = ITK_auto_login(); / Z( s: d- W( u( A p
stat = ITK_set_journalling(TRUE);
/ V# w" K# s T4 T' t: Y4 _2 O, N# a+ \$ o
# p/ e9 N. K9 ~( ~ BusinessObjectRegistry& boReg = BusinessObjectRegistry::instance();) I- a: h1 t+ w6 L6 |* [; T# \& K& U
CreateInput* pCreateInput = " N; }" G% L8 u* c: [& T
dynamic_cast<CreateInput*>(boReg.createInputObject("Item", "Create"));6 |6 p- C2 v; T1 Y6 `
1 `! o h5 b: b; l! Z5 h" v5 G- R ~' O Item *pItem = dynamic_cast<Item *>(boReg.createBusinessObject(pCreateInput));$ X- o& J8 B8 S" Z: @( g% \7 _
) `5 @% ?* C% P) p. i' T
tag_t tItem = pItem->getTag();
" a) o% K; C# q& ^# {" k$ l' \; R% C
* _; X. C- P) G# Y- G1 L" O string sId;# T+ n7 }; V' V* \5 j
bool isNull = false;
6 D R+ f$ Y( j8 O+ i& X/ a9 O C- _ pItem->getItem_id(sId, isNull);
, s. V- }7 Q h$ b" N # v) m- x* f' B2 m5 k
pItem->setObject_name(sId, isNull);
" k9 k1 S. C+ h- W, y& j
9 v& n V5 K% P% r stat = AOM_save_with_extensions(pItem->getTag());
+ a- C. `9 Y# h6 w3 v
% G: g. }* q8 |" q8 }7 L0 d cout << endl << " ID: " << sId << endl << endl;
6 }7 q) r6 r4 p+ ~$ R8 l( U. h% i }
0 |. g5 J4 G6 ]: B. s' e catch( const IFail &ex )
; Q0 g/ \8 B# D: S/ u; O {# ^5 Y( k% ^2 o" v7 M8 P" I
logger()->error( ex.ifail(), ex.getMessage());+ l7 Y) q" n( [
cout << ex.getMessage() << endl;
" b0 \2 L. d! _ ?! T cout << "error " << ex.ifail() << endl; ; u7 f. C! v. Q) r, `
}
6 S6 }& R5 p x+ K- S5 w const char* syslog_path;- X1 d% C9 Z" _
syslog_path = EMH_ask_system_log();' X( e3 q7 k, C$ b1 m
cout << endl << endl;
) D; l; f3 r" Q cout << syslog_path << endl;
" j2 M, e: T: C v$ S7 x- i- G" @6 S5 c1 a# u4 a' n1 D2 w! ^/ [
stat = ITK_exit_module(FALSE); ' Z9 }4 o W; }' c! b0 n/ P
return ITK_ok;
: m( c @5 \6 J}[/mw_shl_code]( ~# K% b, E# C# p* J: h, H/ o
|
|