|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
! v; z7 w2 F4 B. m. t4 m6 _4 o
Teamcenter ITK二次开发源码分享: Item 创建 createpost操作0 x- B( o. E3 ?5 D- k
- #include <stdarg.h>
1 W0 F3 N4 P+ F! K - #include <stdio.h>
1 x4 E m& ^! V X2 t0 h - #include <stdlib.h>
% Y8 W2 f# J# I' |5 _9 i: d: e) k - #include <string.h>
, t7 u V5 b4 `& M; o - #include <UG_va_copy.h>. M& g' Z" A0 Y8 U
- #include <TC/emh.h>2 t: G2 [3 ^) Q% _: m& r
- #include <ict/ict_userservice.h>
. N5 s& V+ b, w% `" s. F - #include <itk/bmf.h>$ M- A- V: Q0 g2 Y, U
- #include <tc/emh.h>
5 `0 N6 o. B4 j7 W0 f X* B- _$ g! c - #include <tc/tc.h>* z# }7 a" g5 Y4 D6 Z! _
- #include <tccore/item.h>
( q# _( g" G+ d - #include <tccore/method.h>
( U1 |. T$ e2 t+ j4 B8 H2 l - #include <metaframework/CreateInput.hxx>
& M- M! K P. [# ?; \8 {
/ h1 ^) G' l6 H) g2 n S8 ], g, v- extern "C" DLLAPI int A2_gtac_extension_rule(METHOD_message_t *m, va_list args)
5 w/ y- t: y" X1 n( q - {" O, n* b4 f4 p U# m! R
- printf("\n\n A2_gtac_extension_rule \n\n");
: ^$ D: L7 Y; E- R$ g
, X3 q* a$ E8 b- ^; e% _- int ifail = ITK_ok;5 k7 w3 v4 k% B2 }3 W; \
Y( ?% s7 A9 m( o- va_list largs;
9 I7 z2 G% H$ D# ^& y( y5 h! e - va_copy( largs, args );2 v% c( r9 O |' r& ]6 x" q
- Teamcenter::CreateInput *creInput = va_arg(largs, Teamcenter::CreateInput*);
' r( ?, s7 j5 ]0 w - va_end( largs );
% k& `- B9 ~0 {' O) {, ]
& K$ ~$ T' j" B- N' }! ?, U- tag_t new_item = m->object_tag;
5 O" G8 a0 h2 H( w# H" P - char *uid = NULL;4 S: W2 Y4 g. B. d K5 x+ A
- ITK__convert_tag_to_uid(new_item, &uid);: E$ s! U( Q4 ?) H3 ?
- printf(" new_item: %s \n", uid);
7 m) C: i' H- ~2 N( y6 P7 f - MEM_free(uid);. q; S O/ y- R0 k" o7 O( h
1 X; h) |) B" y; l4 Y# Q
( ]' z8 U1 Q& |% q# H- bool isNull = true;, l6 ]* B8 K" k0 l9 S8 N* B. R$ Z
- tag_t new_rev = NULLTAG;
: F+ h5 }& @9 }; C. g* S- X - ifail = creInput->getTag("revision", new_rev, isNull);! X1 D4 h* z6 }- C! l- d# j
- if((isNull == FALSE)&& (ifail == ITK_ok))! [" y2 g, C( m- e- m! {
- {; p* Q2 a. Z7 O2 B' Y* m
- printf(" new_rev: %u \n", new_rev);: f$ i; v0 f& k: P4 S
- }
* X( x! b; s( m. T' h -
2 Q( {& _. u$ D6 i$ E - tag_t master_form = NULLTAG;( E$ w6 P5 \5 ^
- ifail = creInput->getTag("IMAN_master_form", master_form, isNull);
" |7 J4 h" t' l6 ]" D" l" ]- m - if((isNull == FALSE)&& (ifail == ITK_ok)), M0 J* t9 }2 Y0 |" @3 ~3 k
- {, D" {& w; ~! u$ K1 H
- printf(" master_form: %u \n", master_form);
% {* X4 ?4 e$ d+ F$ t - }( C6 P! s, U% n8 U, l
- 2 z" B, \) U0 \$ H2 U* h0 {+ r/ Z
- std::string item_id = "";% f8 v6 C/ A6 T# R; t O
- ifail = creInput->getString("item_id", item_id, isNull);- u, u2 j0 G r1 I* Q
- if((isNull == FALSE)&& (ifail == ITK_ok))" c% m! O+ S5 i6 g0 g* w. I
- {
% ~- E0 r3 ~6 l2 Y1 x - printf(" item_id: %s \n", item_id.c_str());
+ Z- v* c- s- W* v' F - }/ |' r/ u. w* v l& T
# |. i6 }( D, k- ^$ Y( J! h# V- std::string name = "";
T5 p* L# ~1 k - ifail = creInput->getString("object_name", name, isNull);
4 w5 J9 R( ]+ r4 Y+ ] - if((isNull == FALSE)&& (ifail == ITK_ok))4 |! i0 \0 S, N: p
- {
5 W) q! e- h j9 B, s - printf(" object_name: %s \n", name.c_str());6 s$ n4 K. ^, v4 c3 o
- }
/ V" q3 `! T8 y; l5 ~$ W
1 i% K' a7 ]' s- return ifail;;
' s" p1 j1 I; A8 Q4 D - }
; Z3 N" [- w4 n% g, ^
复制代码
& `2 F! C+ ?: {, t4 T7 V
. y" @7 q! r6 t* p" I8 l# J8 g
. o5 ~6 [7 r7 a( V4 \5 K |
|