|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
$ p0 Z* T# T+ y" z! s" |8 z
Teamcenter ITK二次开发源码分享: Item 创建 createpost操作# Y6 r! ]9 q4 O2 Z' @
- #include <stdarg.h>+ L2 e. R, z7 P
- #include <stdio.h>
) r0 r9 I# ^* I$ P - #include <stdlib.h>
5 A3 q2 z: E4 K' }4 D1 Y% R - #include <string.h>
" s6 k0 U, s4 ]; M' A* O - #include <UG_va_copy.h>: s# E- f( x, `- T
- #include <TC/emh.h>
" C! _ C& @ T4 D8 |4 ~& ^' t - #include <ict/ict_userservice.h>& G5 I% x _# A; B
- #include <itk/bmf.h>: a( U2 v4 I0 _3 w+ K) K
- #include <tc/emh.h>& W; U9 M+ j: S, i- k
- #include <tc/tc.h>, ~7 e/ X D* [7 O0 o8 U( K& X1 o
- #include <tccore/item.h>9 C" D+ q8 `& r( F: A
- #include <tccore/method.h>6 ~+ D* O+ s# H4 w
- #include <metaframework/CreateInput.hxx>
! I- ~" _4 d1 B: j2 t% v+ W/ J
( t9 p9 p( G' r! C- extern "C" DLLAPI int A2_gtac_extension_rule(METHOD_message_t *m, va_list args)
% ^7 M+ P$ I- f - {
9 w, ^5 b& T& K+ v1 V - printf("\n\n A2_gtac_extension_rule \n\n");
( x% d& R4 ~* V+ q, b
6 q$ r% E$ I: _, {* x- int ifail = ITK_ok;& B: A9 K1 D" [2 A( N2 J; k
# }+ ^: ^, c" R3 l: e) i: I- va_list largs;
3 f' x' ]4 j H; F9 } - va_copy( largs, args );
6 A+ M: @5 r5 {6 _) F& e - Teamcenter::CreateInput *creInput = va_arg(largs, Teamcenter::CreateInput*);3 ^. C$ C1 k. F. x9 ?
- va_end( largs );( f+ D0 Z$ a* f/ |/ j, i2 X
- {4 u7 q4 M, J2 ?- tag_t new_item = m->object_tag;
1 ~$ M( ~1 f; [+ C0 O- w# l) X9 l0 u- Q - char *uid = NULL;
* f( T2 O9 Q' S) C# k# m - ITK__convert_tag_to_uid(new_item, &uid);7 A3 I; w1 b5 y, y' k; ~
- printf(" new_item: %s \n", uid);$ L# n7 _+ X7 a$ r7 j- n
- MEM_free(uid);
% I8 i! G4 j; @2 C. K$ m - - \4 Y$ S' _, Y1 F& I" J
( U& x& P$ H4 x( k0 g- bool isNull = true;) A8 k2 S" E# D$ n8 G; K
- tag_t new_rev = NULLTAG;7 c* J1 c. w- E, Z( U
- ifail = creInput->getTag("revision", new_rev, isNull);4 ~2 l9 p5 S/ \1 T2 z* v
- if((isNull == FALSE)&& (ifail == ITK_ok))0 t% o* I8 y, [) y: |& @6 J! C
- {) u; T T$ @% H; N" w2 J
- printf(" new_rev: %u \n", new_rev);9 N. R5 i# j# ~+ t4 ]7 p; h# \
- }8 N" g/ w+ j' G' i6 R
-
) t- y, V+ b5 j+ o- | - tag_t master_form = NULLTAG;
/ F9 o0 `# D E: o, R - ifail = creInput->getTag("IMAN_master_form", master_form, isNull);0 N4 y3 s$ k# C* H- v6 k
- if((isNull == FALSE)&& (ifail == ITK_ok))- O' ~2 Y9 g S9 M _
- {0 F9 Y! V7 ^7 z0 n6 `! d
- printf(" master_form: %u \n", master_form);
! W, w" i) }3 R. t' T6 b - }, _+ X1 G3 Y+ T& ?8 Z: a) v% |6 u
- " P7 y$ c9 B; @; p" H+ K
- std::string item_id = "";+ b; O: i. E/ o! {) v
- ifail = creInput->getString("item_id", item_id, isNull);7 C8 L3 c+ A# g5 l) `" y7 }" _7 z3 |
- if((isNull == FALSE)&& (ifail == ITK_ok))2 M e( T. n: p- s, K a
- {
, W( H5 E& ?" H - printf(" item_id: %s \n", item_id.c_str());
- @3 r# [ r& F2 p w5 q1 x - }+ W' _$ R- A% k! Y8 h4 a
- . ~4 |( w d# S5 M% a) }# _
- std::string name = "";
1 J' Y, e! n' W- ~ - ifail = creInput->getString("object_name", name, isNull);6 Z- F9 [" m' s- B+ p) [
- if((isNull == FALSE)&& (ifail == ITK_ok))
% ^0 H& m( }: [1 D, G! z% y$ t7 G4 N - {- q* W8 A7 Y- w. ^
- printf(" object_name: %s \n", name.c_str());' e9 |6 ]& B3 H* U8 t$ r6 D
- }, v# z& R. o) L, c, Z% b% n' H
2 ?7 b" w7 Y- S6 C- return ifail;;
! o8 B n, x$ J9 a, W2 [! J - }8 e7 u' m$ @# S; W6 D* s# n
复制代码
$ X7 d: \1 D: ~2 p& w
. R1 A* i! _! W3 k, ]' {
+ z$ a8 s. n2 b7 W( S |
|