查看: 4040|回复: 0

teamcenter二次开发源码分享:判断对象是否存在在数据库中

[复制链接]

2477

主题

1280

回帖

8万

积分

管理员

PLM之家站长

积分
82265
QQ
发表于 2016-4-20 20:54:46 | 显示全部楼层 |阅读模式

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

×

; R) h- `8 {5 Y& hTeamcenter二次开发源码分享:判断对象是否存在在数据库中) r+ L9 n6 J+ v; u' M) p. r: @

, C( p- ]1 I# e' Q' f* P/ u#include <TC/tc_startup.h>
( r) _7 w$ u, j* n% w' f9 R& U#include <pom/pom/pom.h>
7 a, \5 ]% M* z8 \9 L6 {0 A3 Z/ U% R#include <ITK/mem.h>
: ^; o( C2 ?; ~  E* ]#include <tccore/workspaceobject.h>
; L3 M$ b: ^1 Z" p- U) Q2 R; S$ E
2 C9 Y1 M  D! k1 jlogical is_instance_in_database(char *variable_name, tag_t object). e6 p2 `7 w6 A
{
0 l& l! G& R9 H; a) p8 G( a    logical exists_in_db = FALSE;; E! l: ^/ t7 {7 I, e4 ]3 x* i
    if(object == NULLTAG) ECHO("\t %s: NULLTAG \n", variable_name);( ?, a' G3 S' k0 s7 X
    else
; Q( K' x0 V* ^( Z    {
9 [" T4 f& f5 ?, O# w        char *uid = NULL;* I" G9 |4 i4 ^) L4 @: R* h5 x, t
        ITK__convert_tag_to_uid(object, &uid);, j6 b* e  e( n9 b+ U9 \( ~
        POM_instance_exists(object, &exists_in_db);0 b( x" c4 A/ g* d( P: V9 E
        if(exists_in_db == TRUE)1 z5 R, |: `; R; ?9 P2 T& ]
        {
. Y9 B9 i! t" G) w6 W/ P2 F0 t# E            if(is_WorkspaceObject(object) )
9 u( H' @$ H; F. H9 h+ Z( P            {+ G! c. J: i9 r* G7 M& g
                char *object_id = NULL;
8 s4 i1 h, F% c1 }  E" m& }- q                IFERR_REPORT(WSOM_ask_object_id_string(object, &object_id));1 ], D( y3 r: h( @) ^
                char *object_type   = NULL;
6 F+ E, u  d. _; ]1 Y( H# k                IFERR_REPORT(WSOM_ask_object_type2(object, &object_type));
* p& b1 P# _% W% i- ]; D                ECHO("\t %s: %s - POM_instance_exists: true %s (%s)\n", ) }! \2 H- g6 B6 h7 J
                    variable_name, uid, object_id, object_type);6 T4 m* F' e9 P) C, P0 L  Y4 ?8 Y8 p
                if(object_id) MEM_free(object_id);
5 B1 p6 j" V) t! U                if(object_type) MEM_free(object_type);& k8 T8 f* @6 |$ Q0 k( v
            }
' r) Y. }" _: }7 j, g            else ECHO("\t %s:  %s - POM_instance_exists: true\n", 6 c. x4 Z! Q- V  p& {
                variable_name, uid);
9 x3 @6 {5 C9 r1 p( N5 S: d        }+ W4 `1 H8 k/ L
        else ECHO("\t %s - POM_instance_exists: false \n", variable_name);
  j4 r5 B( R+ \* H( m' O        if(uid) MEM_free(uid);; `/ f1 m5 _- _& v# Y, Y6 i: |4 s2 T
    }% F) ~% y: b  |9 A8 K3 b) @( g
    return (exists_in_db);
! Y8 X6 f; t) `}
8 R% V2 f0 H9 j
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

在本版发帖
关注公众号
QQ客服返回顶部