|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
3 J. X" X2 L1 u ~1 k8 R: sTeamcenter二次开发源码分享:判断对象是否存在在数据库中5 u9 ?1 W* E+ b7 {0 T
9 \ K3 z7 ]; y0 e4 S! ~#include <TC/tc_startup.h>' Y. J1 u: t/ d# \! {: e
#include <pom/pom/pom.h> A7 x: _: n4 m8 y! {
#include <ITK/mem.h>" k) `4 m* p* t5 _' H# }( t
#include <tccore/workspaceobject.h>
4 l; I1 Z" V6 J
; f* A: h) m/ S. wlogical is_instance_in_database(char *variable_name, tag_t object)( [ `4 G! E* y/ e) y( k \9 t
{
n3 ^8 F/ W! r2 s logical exists_in_db = FALSE;2 K- T! i7 P; v: g8 z" C- s% d
if(object == NULLTAG) ECHO("\t %s: NULLTAG \n", variable_name);5 p7 C# b, d- o! C; H6 X$ n
else7 L6 W$ V5 C) {, C4 a
{
+ z: @4 p* w+ K, c- n. z char *uid = NULL;
: k% |' G0 Z4 O: u* g' ? ITK__convert_tag_to_uid(object, &uid);
3 J+ |: C3 }% z. z& ~& ?1 y7 [ POM_instance_exists(object, &exists_in_db);; i) a( e1 T4 O4 p
if(exists_in_db == TRUE)1 q! a! s7 E4 g0 \% d# i
{
5 _9 w8 k5 `9 }) u2 [$ H* F7 w if(is_WorkspaceObject(object) )
1 p% j) ^) t% r2 d2 P3 V' c {+ V. A5 d# b4 p3 s2 |. s
char *object_id = NULL;
+ v' Q" c1 N# o IFERR_REPORT(WSOM_ask_object_id_string(object, &object_id));3 j, |5 i$ M) F f4 X* L5 ?
char *object_type = NULL;+ {7 B0 |* h: Q$ U9 U c
IFERR_REPORT(WSOM_ask_object_type2(object, &object_type));! d! }9 F' N- J& F6 ^+ j
ECHO("\t %s: %s - POM_instance_exists: true %s (%s)\n", 9 O+ T" F' l1 W/ L
variable_name, uid, object_id, object_type);
; `* L/ b! o4 b& P) q7 W if(object_id) MEM_free(object_id);
( G+ \$ ]# a) C' R0 U if(object_type) MEM_free(object_type);2 K3 R; n( |9 N& p( X" W+ h. j7 \
}5 J- ^9 j/ c% z/ t$ Y+ z0 Q, a( c2 z
else ECHO("\t %s: %s - POM_instance_exists: true\n", 7 c7 ]* h- P6 S' ~4 ~" w8 G
variable_name, uid);1 N t- K9 f+ @5 c) ^! @: F. \
}
$ e" R6 U7 D* ~! K t; p! T else ECHO("\t %s - POM_instance_exists: false \n", variable_name);4 g, C" k7 k' Q1 i) M
if(uid) MEM_free(uid);
* F9 _4 s+ [4 F" c }% m! h! p7 z4 w- l2 o
return (exists_in_db);! n3 L; m0 Y, j2 ^
}
6 \' {0 X' N' O# Q$ j. u/ t |
|