|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
, H( J- N9 R( F8 h: Y2 BTeamcenter二次开发源码分享:判断对象是否存在在数据库中! N7 I7 |* W2 ] @- W* e
& ?3 c3 L9 Y0 c( R% T# ?" l* C#include <TC/tc_startup.h>0 ~* _" p/ |0 M$ G% M* n6 C
#include <pom/pom/pom.h>
2 z7 ?5 I6 m9 ?! w% o% j#include <ITK/mem.h>; Z" J8 c3 [ c* i* z3 r
#include <tccore/workspaceobject.h>. ?; e7 T/ ]8 L$ P" @: j
1 k6 s' q8 V8 H. H: z1 G6 \9 S' t) @logical is_instance_in_database(char *variable_name, tag_t object)
% D$ W! v" D8 @+ p3 e{
|' c7 i: O8 J( [4 W. ~ logical exists_in_db = FALSE;" s( M$ [2 F. f: [6 `( c, T
if(object == NULLTAG) ECHO("\t %s: NULLTAG \n", variable_name);
: D- c( h3 |8 o6 y3 W1 r, C else
$ B" U3 k7 M! x! H2 x. Y+ S" _) d {
5 h/ _) c1 D3 l! d9 t char *uid = NULL;
7 t/ W3 w' J8 |: h1 h ITK__convert_tag_to_uid(object, &uid);
' E- m9 ]5 s8 d: r POM_instance_exists(object, &exists_in_db);
& M7 Q. i( C# C# {2 k if(exists_in_db == TRUE)
; g \" I- R z/ B {
, a* o' w+ y* Y& x if(is_WorkspaceObject(object) )8 e) O0 x, X6 N& N
{$ W% h" N9 ?, Q+ P" Y; ]8 i
char *object_id = NULL;
! ?4 B4 l( m; q" K) L7 t% x IFERR_REPORT(WSOM_ask_object_id_string(object, &object_id));- N. V! J$ C5 ~0 S, k
char *object_type = NULL;% s. P. J! h: Z4 z0 v0 J
IFERR_REPORT(WSOM_ask_object_type2(object, &object_type));" v5 C2 d7 e) R3 c+ q6 x
ECHO("\t %s: %s - POM_instance_exists: true %s (%s)\n", - Q7 h1 N: V0 C% u6 M
variable_name, uid, object_id, object_type);
# t8 g, X! }& J- ^ if(object_id) MEM_free(object_id);0 Z' Y1 ]& y( U1 k* D. S
if(object_type) MEM_free(object_type);8 d5 D/ o9 a# }5 v3 \( j( P' h
}
7 n4 \6 J: v, B% `8 [ else ECHO("\t %s: %s - POM_instance_exists: true\n", 0 a; A+ \, d7 `
variable_name, uid);* z( S5 d/ @/ }: |5 A+ }" x; v
} R: A4 K+ V- C7 C$ c7 X% `& J
else ECHO("\t %s - POM_instance_exists: false \n", variable_name);
. _ q: x% P0 O if(uid) MEM_free(uid);& j0 F4 L1 _# ~- v: b- F
}) M9 V" @. ?" m# C8 z: Y
return (exists_in_db);* Q8 B1 B3 r: T+ X) \ t3 }
}% f" k9 z! z: H' [4 S
|
|