|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
/ e1 o" b7 N6 q6 C+ E Q; h4 E2 i- [Teamcenter二次开发源码分享: 创建Item Create Item方法) C7 y' `& r1 D2 w8 Z
0 e( K; l* z. ?/ o) x" s[mw_shl_code=cpp,true]#include <TC/emh.h>5 k+ X- K: ~; S8 g& ?: ~, {
#include <tc/tc.h>
3 v6 @- U# i) |' t; A#include <tc/tc_startup.h>3 W7 o1 u2 q: g! y) D1 x( D, }$ n
#include <tccore/aom.h>0 J: E: i/ a l+ w/ Q3 G9 I% z
* \( I* o* c0 x2 i& z) ?#include <iostream>. b3 V8 l, Z# |4 F1 `- O* P
#include <base_utils/IFail.hxx>
+ {: G# G5 t# e! Z#include <base_utils/TcResultStatus.hxx>" L3 m0 j" ?3 J1 S6 ?1 {
#include <metaframework/BusinessObjectRegistry.hxx>
9 {( l' j- V" {. E }9 P4 e! L; ~#include <metaframework/CreateInput.hxx>
8 U8 M' ]& p7 \$ [#include <mld/logging/TcMainLogger.hxx>' Z$ b F+ T2 M5 f' L
#include <tccore/Item.hxx>5 v6 K9 x' F- I% \) \5 X
: k$ ^* s y* F% x' pusing namespace std;4 |* `6 W+ V1 h/ m; ~) ?" T% N. m
using namespace Teamcenter;
! U! `, ^0 J; ~) s2 I. N! Lusing Teamcenter::Main::logger;
8 J8 p) z8 r7 {) D! a3 B
- z$ E! w9 f+ E: ?1 q% j1 Jint ITK_user_main(int argc, char* argv[])( j7 o: O( \5 S) n
{; x$ q; w' S c, ^- A
int ifail = ITK_ok;% W- D' n* s+ L6 O6 z! _0 _
ResultStatus stat;
" n) A! c, j! U! F8 @2 U try
, S" b# K0 g/ R( B { ~3 T1 W% f O1 D3 F3 ]
stat = ITK_initialize_text_services(ITK_BATCH_TEXT_MODE); 8 O% H! q$ W; G- q8 ^3 @
stat = ITK_auto_login(); . s: N: a2 ~# [( n0 e
stat = ITK_set_journalling(TRUE);# ]9 J/ j+ J& j/ @( X/ q! \, J
/ y0 h7 Q' J! W5 I& p, d
; G% ?9 H2 Z1 N) l' l$ q) J BusinessObjectRegistry& boReg = BusinessObjectRegistry::instance();1 Y E( s5 `2 ]' T7 u3 i7 T
CreateInput* pCreateInput = , U- K4 q# j( T- h/ M4 T; V
dynamic_cast<CreateInput*>(boReg.createInputObject("Item", "Create"));
3 ]! ]4 j: d% s4 r' p* K7 i5 |! F; l( A, o X* @4 m4 Q) i; Y
Item *pItem = dynamic_cast<Item *>(boReg.createBusinessObject(pCreateInput));! c: A1 V- A' V2 s$ F4 \) U0 o" e' L
6 F6 e C' m8 R! _& L* p
tag_t tItem = pItem->getTag();
6 t% l9 g, p" o6 j" Q4 Q) h
! F- i3 n4 P' K- Q string sId;
/ A$ }4 E0 M7 Q9 C) Z bool isNull = false;
! w, `3 N+ _; _7 `. `# h5 e pItem->getItem_id(sId, isNull);: N- i3 k3 ^8 I/ o
0 u+ G' A+ }5 p) I5 U7 H0 n pItem->setObject_name(sId, isNull);$ Z9 n7 v" r0 q0 y
0 L0 J2 y! [( Z. N/ G1 L stat = AOM_save_with_extensions(pItem->getTag());9 R" Q+ D1 X7 t
+ v0 G" s5 W" s* v/ y* G2 S5 D cout << endl << " ID: " << sId << endl << endl;) \ N* ? r1 \+ J
}$ ]& ^* n8 B( C9 O* U0 s6 J& l) \
catch( const IFail &ex )
6 x; Y* V/ ?$ v: h. C0 F {( K; \0 H' {! ?: J
logger()->error( ex.ifail(), ex.getMessage());# s# b9 I# E) s4 T* @8 P
cout << ex.getMessage() << endl;' \" u( f/ S2 Z$ U" p% L8 I+ t
cout << "error " << ex.ifail() << endl; * j$ t4 J% n! c6 z+ \
}
' F( B# \% y$ H" j const char* syslog_path;
" E# m; B# S. X! a syslog_path = EMH_ask_system_log();$ s' T: n2 g! r! Y3 Q
cout << endl << endl;. E2 J3 W$ a: ?+ q# @
cout << syslog_path << endl;
! w" E. {1 p1 ~( ~) ]$ N. g" }9 H
4 h3 r* U* y% e# I2 X stat = ITK_exit_module(FALSE);
- ]5 \ c& {2 k( v! _+ e4 u+ x& e& i; w return ITK_ok;) k; x% O, C& g
}[/mw_shl_code]. J( k8 D5 q$ k+ O) L- I$ b
|
|