|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
9 x$ d; T2 j* b2 w* R4 z. \; cTeamcenter二次开发源码分享: 创建Item Create Item方法
" |- K1 e6 w; i
. Q( e. f( U- o9 S. e[mw_shl_code=cpp,true]#include <TC/emh.h>7 z* w6 D# h2 q, q+ m( z, I7 J
#include <tc/tc.h>1 }9 v$ V- s9 U, i
#include <tc/tc_startup.h>
6 W3 A, u9 G o+ B6 p+ B#include <tccore/aom.h>
( E+ }1 j2 l, v* L2 \" [
2 w' I4 \8 Y: N3 r7 L#include <iostream>
% O9 H" l( V" R3 d g#include <base_utils/IFail.hxx>" Z4 `7 P4 e4 [3 ^( M# W2 A
#include <base_utils/TcResultStatus.hxx>5 `( a0 H3 F& }7 u7 j( c9 I5 y
#include <metaframework/BusinessObjectRegistry.hxx>
3 f4 Q( \+ C9 l#include <metaframework/CreateInput.hxx>/ I" C, j9 w, N
#include <mld/logging/TcMainLogger.hxx>( t Z. Y$ l% D9 V. c
#include <tccore/Item.hxx>
) s: @6 m: n6 X0 F$ T& c
; \7 L* {. F! K+ n$ l" |. ?using namespace std;
) U$ }: ? r9 B% _- _1 v' Yusing namespace Teamcenter;/ _( i, \9 o& j1 b# I( w
using Teamcenter::Main::logger;
* }" Z9 A& J. J
( q* O& p# g5 A, D% hint ITK_user_main(int argc, char* argv[]). y( p J0 U9 @* w- n" Q" p( Z- H$ v
{
( @: e1 Q! K% N4 \- V6 ^1 F int ifail = ITK_ok;2 ^$ ~) L; }( U3 H' H
ResultStatus stat;, r! z' t5 T+ v
try0 G) r9 G% X( Y& N# q
{8 I% j+ ?! A. g1 ]
stat = ITK_initialize_text_services(ITK_BATCH_TEXT_MODE);
6 M% W, }1 u3 t( E) X/ ` stat = ITK_auto_login();
2 K: }- Q4 V/ h# @) U5 _0 d stat = ITK_set_journalling(TRUE);9 O% \7 R5 c5 K/ Q
( R/ f, ?7 {% s$ i+ f
+ f# K6 |/ u8 Z) i5 c/ Q# ] BusinessObjectRegistry& boReg = BusinessObjectRegistry::instance();0 [0 @& h' B/ J2 G* N. @
CreateInput* pCreateInput =
8 h( H8 ?: C# h' R dynamic_cast<CreateInput*>(boReg.createInputObject("Item", "Create"));' J5 g3 K ]2 b
' _9 u4 R9 y; D, S Item *pItem = dynamic_cast<Item *>(boReg.createBusinessObject(pCreateInput));$ v1 q M$ ~7 E" `( n7 h% g) Z
! l( \& z% Z) u+ L) p tag_t tItem = pItem->getTag();% d0 ~$ k K. T: m0 X
0 r7 g; `5 R: O- y9 K) \. p
string sId;- O3 y5 ?6 b. y) a- [: N, J
bool isNull = false;
. R6 y$ g* z8 s8 q# X pItem->getItem_id(sId, isNull);
+ I* F# p4 M7 M7 d( n. [. K6 z" T
* l, n3 ]- Z/ d g pItem->setObject_name(sId, isNull);2 n n9 S* ?- H' n' t
0 ?: \/ |2 i, J0 {7 J( _) q0 l/ c; R
stat = AOM_save_with_extensions(pItem->getTag());
$ W; j* u/ [$ C0 a
8 P/ W" ?4 Z( c9 W" S1 X cout << endl << " ID: " << sId << endl << endl;; E2 Z8 O+ T3 `5 e
}# P1 K# X4 H8 ~5 R
catch( const IFail &ex ) [5 f8 V; y+ `4 l7 w
{
4 m7 `% M1 Y6 V X5 }9 @ logger()->error( ex.ifail(), ex.getMessage());
2 @: X* I" \/ c cout << ex.getMessage() << endl;6 m) Y4 {/ K' k$ S7 b
cout << "error " << ex.ifail() << endl;
% f: O7 k1 T! G, x5 Y* r; J" \+ N6 x }
! a) L1 w/ u+ M1 ?& r const char* syslog_path;& Y! j: V$ G6 ^7 `9 z9 O9 F5 E" |
syslog_path = EMH_ask_system_log();/ }. P, s0 `0 f
cout << endl << endl;
$ D$ B& e1 Z/ b+ M* _" r: e cout << syslog_path << endl; f( k/ I$ [' B" I2 ^0 ]- z# X1 u
7 K; ]9 Z3 v% X/ o4 R: B
stat = ITK_exit_module(FALSE); + \1 p9 H5 a) E2 Q, R
return ITK_ok;) h, V. U g. W, |6 G8 W
}[/mw_shl_code]
" @( B/ |1 L! u a |
|