|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
8 Q6 e: ~3 O" a8 X& LTeamcenter ITK二次开发源码分享: Item 创建 createpost操作) k. ~- X K; q2 [
- #include <stdarg.h>- ~8 A5 P3 z# n) z
- #include <stdio.h>
4 r. \0 ^" W/ u% \) M$ B - #include <stdlib.h>
; p/ q# c6 d/ w3 H6 m8 Z2 ?2 \ - #include <string.h>
9 D. p2 N8 J( e* [+ E% D - #include <UG_va_copy.h>
. ^9 C* I4 V3 `% Y) o! D - #include <TC/emh.h># b D5 h' v# l. k
- #include <ict/ict_userservice.h>: E$ O+ ~. W7 {8 z
- #include <itk/bmf.h>2 j( |/ c4 K. R! ?$ X6 Q
- #include <tc/emh.h>
5 G* u1 g/ R- g2 Z; W - #include <tc/tc.h>
0 @/ C' v# \" d$ m3 e7 F - #include <tccore/item.h> G2 G* c: g6 X4 O; r' l* a
- #include <tccore/method.h>
* t" x5 f, e3 } - #include <metaframework/CreateInput.hxx>
, _- H2 p5 J7 k7 ^ - 5 {- ~, F* `, }7 ~( R5 s7 Q
- extern "C" DLLAPI int A2_gtac_extension_rule(METHOD_message_t *m, va_list args); e6 i6 Q7 J j6 P) I
- {: z3 J4 A! o' A
- printf("\n\n A2_gtac_extension_rule \n\n");
9 z r2 \/ m n$ L- [
, Q, @# l7 s( Y$ ]. K. U- int ifail = ITK_ok;$ O+ K7 Y; r S. W
/ P9 |8 S& [6 T% @! h0 l( L- va_list largs;
) z( C" {' f: J* T0 I3 ?# U6 b) }5 C - va_copy( largs, args );1 C' X* ^6 d0 f* Q
- Teamcenter::CreateInput *creInput = va_arg(largs, Teamcenter::CreateInput*);
8 Q! P, d9 _; U0 h! ? - va_end( largs );
% Q2 [ S3 q1 R) D" t8 q6 @' p2 ?
0 F3 P5 @3 ^7 e9 k7 s- tag_t new_item = m->object_tag;
' h1 p0 `7 i: X$ u - char *uid = NULL;
4 v9 G2 Q# R# u% K, o& M& y1 } - ITK__convert_tag_to_uid(new_item, &uid);
3 u+ _! Z+ @& l- Q i! ~ - printf(" new_item: %s \n", uid);/ i8 @! s+ G; T8 O y& @
- MEM_free(uid);! R6 _! Z) p9 J% Q" g4 `0 V
1 {, X# o" B0 q. \9 Z5 |: {- 1 T2 \0 Q* Y1 z( l0 I
- bool isNull = true;
{5 |" _. `, A/ R; ?$ T& o2 y - tag_t new_rev = NULLTAG;/ |+ k |8 a, `2 k8 `9 {
- ifail = creInput->getTag("revision", new_rev, isNull);! r9 ^- x5 F. l- B
- if((isNull == FALSE)&& (ifail == ITK_ok))
, n2 K5 B! b! R _ - {
( W, O# j8 r5 W' V4 @- O# S - printf(" new_rev: %u \n", new_rev);9 {. E9 v7 c/ B& b: x
- }9 x4 }1 ~; |6 v) a3 @
- 7 X5 @- U) N1 w6 f+ L* b
- tag_t master_form = NULLTAG;
* R0 E7 w, f: w( I2 m* J - ifail = creInput->getTag("IMAN_master_form", master_form, isNull);
) G3 `/ f0 y' Q% r& |# R( b - if((isNull == FALSE)&& (ifail == ITK_ok))2 v; ~9 {3 ~5 \1 Z$ P+ t, d4 S7 G
- {9 X; a1 g! g, K' u5 s
- printf(" master_form: %u \n", master_form);
2 x. @0 m; U( ~ - }+ }9 n0 h" X1 A! C
$ H' Q( Z/ g9 A- Q( Y$ O( S! ^9 T- std::string item_id = "";) u/ a' B( X3 b# T1 o2 S
- ifail = creInput->getString("item_id", item_id, isNull);
5 r4 B5 N M0 L; J" f - if((isNull == FALSE)&& (ifail == ITK_ok))3 a; K0 B. `& Z$ Q3 b- H/ ^6 I" d
- {7 C/ n; R- j- n# j$ p$ W
- printf(" item_id: %s \n", item_id.c_str());8 y# R; B3 a2 ~. U% e* o
- }
/ Y8 r6 v4 q* `" _; n% `) ? - " f% ^4 h6 I) o% M/ e
- std::string name = "";: M/ z; f( ~9 g8 M" f
- ifail = creInput->getString("object_name", name, isNull);9 O ~1 H3 [3 |3 E! ?9 G
- if((isNull == FALSE)&& (ifail == ITK_ok))
6 u0 m+ i7 C3 v7 f) k7 S; x; u8 H; z - {
( i% n4 p" D. a3 U. S$ X9 P - printf(" object_name: %s \n", name.c_str());
k5 D! M2 \9 }. R - }( ~) J* }- z; M5 z+ C. B
- 2 ^% l: x: W. C
- return ifail;; f& v* r* v/ C) X2 H$ a6 _
- }
. G* w0 y9 n& e: w8 \8 R
复制代码 ' k4 A: O' n" w. v6 K: e. q+ e
) ~: f# ^- D4 q" X& K) z5 M. w: }7 S" l; w2 H3 y. B
|
|