|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
! ~4 o$ h; L0 _6 wTeamcenter ITK二次开发源码分享: Item 创建 createpost操作
* x5 |3 C/ ?' y, F3 r% `, u- #include <stdarg.h>+ W7 i; \0 F+ u4 Y
- #include <stdio.h>/ h$ O: E$ c6 b( ~% H
- #include <stdlib.h>* g& y2 ]7 Y( A9 A' @% W
- #include <string.h>2 r1 n. g" E) [- }
- #include <UG_va_copy.h>
( ^3 j3 v, P" \9 z - #include <TC/emh.h>
7 \/ F. g ~! r7 Q1 C - #include <ict/ict_userservice.h>- |9 ~6 _: @3 I+ Q) [2 }
- #include <itk/bmf.h>( F C; x+ l6 }% U3 E
- #include <tc/emh.h>/ q3 [+ P7 r( @! j1 S5 g
- #include <tc/tc.h>
& N% Z' z/ P9 t1 r$ d5 @5 B - #include <tccore/item.h>
( X4 B4 |( u G2 X: I2 W) t: W0 I - #include <tccore/method.h>
' n9 e# _. g8 Z8 K( q - #include <metaframework/CreateInput.hxx>
- T$ Q+ {& c% i% Z
) W$ R/ ~. S5 c7 l: b- extern "C" DLLAPI int A2_gtac_extension_rule(METHOD_message_t *m, va_list args)/ R- y# z8 H2 x! G
- {1 t& x$ ]* v+ [* E, A1 C1 D7 p
- printf("\n\n A2_gtac_extension_rule \n\n");
4 n- {( g' I2 `3 F) B& r6 r9 ~ - , S3 f& \2 [0 e2 ?
- int ifail = ITK_ok;
% n: A* S8 m1 @5 W1 C - 9 `5 P5 @" n$ Z/ U% ~
- va_list largs;
, L( K" n; Q1 \7 A% I8 ?3 | - va_copy( largs, args );# n( h' a! E: Z/ x( |
- Teamcenter::CreateInput *creInput = va_arg(largs, Teamcenter::CreateInput*);" e8 T7 ~7 M6 w* U( K" Z
- va_end( largs );
- X) Z) H8 u8 D( e* e
+ \& u+ C4 b7 k$ l1 C) c/ l- tag_t new_item = m->object_tag;
/ J# [0 j3 [5 F, U7 N - char *uid = NULL;4 H( U' _% v- o; S
- ITK__convert_tag_to_uid(new_item, &uid);# q. h1 v7 A1 [. u. a
- printf(" new_item: %s \n", uid);
( Z. o. d9 u! R* _' x - MEM_free(uid);( U) z% N0 {$ U0 ~5 c* @% V2 c8 ^
! x7 d' v6 v7 l* H3 F- " d4 c: j) ^6 c6 I0 O- A
- bool isNull = true;
% L6 K# @/ B; j' T4 [" |, D - tag_t new_rev = NULLTAG;
, M% U. y/ O4 r* D- w - ifail = creInput->getTag("revision", new_rev, isNull);7 ?. a" j3 X4 F' E7 }( H
- if((isNull == FALSE)&& (ifail == ITK_ok))
+ n' B( B- }5 E3 [/ f7 p; W - {
' L. i' o( z8 S% @# R2 k - printf(" new_rev: %u \n", new_rev);
6 O2 {& p, ^* } - }" A, G6 H2 H* z5 W |; E" |% K7 A
-
5 y7 o {: p. d" Q- I - tag_t master_form = NULLTAG;
6 k' c& r0 n( n8 Q3 ]- h8 U; E - ifail = creInput->getTag("IMAN_master_form", master_form, isNull);. v+ _. \# S1 Y+ B
- if((isNull == FALSE)&& (ifail == ITK_ok))
. G% v% l) v4 r5 k; c - {% Q8 z3 u* }6 J) r1 p0 k. r" R5 f
- printf(" master_form: %u \n", master_form);
3 k8 w5 }/ m9 W; g' C( {- J - }
0 H) @2 @ H' O+ p - ( Z3 d7 W5 h5 m! a0 | o# Y
- std::string item_id = "";
6 \3 Q9 q$ m/ H6 L. c - ifail = creInput->getString("item_id", item_id, isNull);. t" V: @7 N" S8 t
- if((isNull == FALSE)&& (ifail == ITK_ok))- x( Z3 q" j! S* r1 M
- {( U: Z+ C. d7 z, y j4 R4 |
- printf(" item_id: %s \n", item_id.c_str());
) m: N* T( h9 o1 y6 H# [ - }( v [) `3 t7 Q- n
9 C/ Y2 Q F3 Q6 k: V/ u- std::string name = "";% g0 V0 E, v/ r3 ?) h8 n9 M7 Z" R, H2 A
- ifail = creInput->getString("object_name", name, isNull);' X1 d% t; L3 N- R
- if((isNull == FALSE)&& (ifail == ITK_ok))
$ W0 E" A7 P( m- C0 t% E - {! u4 b% R) r9 Z
- printf(" object_name: %s \n", name.c_str());
# B/ i L) H% K' {7 m9 r - }7 C; z" M6 p& I7 S6 S
- : z5 o9 L0 D/ F0 d) `+ h- L" D
- return ifail;;! }. x% | \8 G! F: R$ E" m
- }
! P- _& v9 g1 J8 @8 P3 L L& K
复制代码
! \! N' ` \# Y6 a9 I
0 U" K+ X* o, C
7 D2 E9 I) I7 V% }. \ |
|