|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
. u0 m0 {9 L6 k" K: E
Teamcenter ITK二次开发源码分享: Item 创建 createpost操作, l, t0 I4 Y, U: u' @# N- h
- #include <stdarg.h>) O, c( x+ [0 p: N6 q) u
- #include <stdio.h>/ `2 |/ Q4 V8 T5 w
- #include <stdlib.h>
7 l# c; ~2 E! b4 }" C* K - #include <string.h>
" O* y/ m7 P: o' ~$ m - #include <UG_va_copy.h>- u6 J. h. s$ [2 H* F( {
- #include <TC/emh.h>
* q+ c4 H4 |' @1 j5 A8 L2 c+ C - #include <ict/ict_userservice.h>$ n) i2 g5 u& w
- #include <itk/bmf.h>- \7 F; I; ? l4 ~5 I, j8 J
- #include <tc/emh.h>
! U9 R0 _6 A- r: w" A4 I - #include <tc/tc.h>
/ Q) U* i* k" Y! ?* ? - #include <tccore/item.h>6 ^) C& X/ B2 |* t4 b$ v8 i
- #include <tccore/method.h>
5 D. L3 q+ A) j* A4 l e - #include <metaframework/CreateInput.hxx>: w$ }9 `% t1 a
- * G" y. }. c% E" N8 ` w5 e
- extern "C" DLLAPI int A2_gtac_extension_rule(METHOD_message_t *m, va_list args)
+ j8 v, R7 X8 q/ ` - {* K" N$ t( c$ v, B5 Q4 H
- printf("\n\n A2_gtac_extension_rule \n\n");2 \6 \+ W Y0 b
- " p) {6 D0 D, q
- int ifail = ITK_ok;$ m$ }0 Q' ^+ v! x0 Q6 ^* {" W' d. b
9 }+ I4 H9 |2 M# r$ d4 W" s- va_list largs;
3 H2 W% d7 U* |& H; |# L - va_copy( largs, args );
$ u! I* R) y; y0 P - Teamcenter::CreateInput *creInput = va_arg(largs, Teamcenter::CreateInput*);8 ]8 E7 l% c: k& Q4 W% n
- va_end( largs );
7 f% W$ A9 u! U! E" U/ `# m b
, S4 _3 L6 F2 u* J+ R- tag_t new_item = m->object_tag;
! Y% Z7 X, p' b" M - char *uid = NULL;
1 I. L+ _% e7 o7 Q9 V; g% r - ITK__convert_tag_to_uid(new_item, &uid);
7 p9 d! C. e5 a( c - printf(" new_item: %s \n", uid);1 b6 M @+ p. L1 t$ I
- MEM_free(uid);5 l8 L, b: [2 R3 f
0 Z$ Y5 d7 D5 V
; r v* s" i z7 C- E- f; E- bool isNull = true;
, i; Z$ f# K Q2 d - tag_t new_rev = NULLTAG;4 ~9 d- ~" h% u6 h% \3 {- w
- ifail = creInput->getTag("revision", new_rev, isNull);
* ? J, k4 C( a# M2 ] - if((isNull == FALSE)&& (ifail == ITK_ok))
* n9 H( M& I: s4 k. I - {6 r- z4 F& t4 e1 _6 y6 L' S
- printf(" new_rev: %u \n", new_rev);
+ M/ `0 o H1 ?+ L - }
2 i2 S2 m# t- n -
. n9 _; |7 ]0 A+ u - tag_t master_form = NULLTAG;& N/ b) A: y4 L6 C% C
- ifail = creInput->getTag("IMAN_master_form", master_form, isNull);0 \- {0 {8 c" ~0 i
- if((isNull == FALSE)&& (ifail == ITK_ok))
6 s. J e0 A5 [: Y1 z - {
9 k0 q" E# w. @$ n; m" n - printf(" master_form: %u \n", master_form);
8 d1 E. J. y0 [! r - } p5 ^* j1 k+ n3 ^
- & K: T, I4 R% a) O& s- k0 V
- std::string item_id = "";! B2 C/ h1 F: S! R9 ^
- ifail = creInput->getString("item_id", item_id, isNull);* n4 }6 M; `) q6 f1 A
- if((isNull == FALSE)&& (ifail == ITK_ok))
* h1 {, p& U9 C - {
/ ]% M" o3 q( I, i# ?3 O - printf(" item_id: %s \n", item_id.c_str());0 ~. o5 K2 N0 z; B8 i# k& Z
- }% O) Z$ {) ^4 ~5 t% K
- ; O5 A2 l# |; W c0 X( {5 J
- std::string name = "";+ b2 h8 V6 }6 p( A- h
- ifail = creInput->getString("object_name", name, isNull);; ? Y$ m0 R: H X: M4 z4 I! k3 D
- if((isNull == FALSE)&& (ifail == ITK_ok))
3 [: U. P4 }1 A( A, ]* \" t - {
! M. o$ y& ^" S D! T2 B - printf(" object_name: %s \n", name.c_str());$ m! S e) J, T7 F/ M5 L
- }
0 n( j* I* l, U: L, l
( W3 X% n' {) A) X! K- return ifail;;( N7 M" O% X* Z
- }
& ~8 o0 ? q, a" A7 l4 P N! f
复制代码 1 K! ^) q4 I9 W9 W! F% m
9 l! m) `% j) W: {8 `, u$ }% e$ J* g* t) \) n, b
|
|