PLM之家PLMHome-国产软件践行者

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

[复制链接]

2016-4-20 20:54:46 3679 0

admin 发表于 2016-4-20 20:54:46 |阅读模式

admin 楼主

2016-4-20 20:54:46

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

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

x

; P! Q7 S& o- F6 M9 a, E8 gTeamcenter二次开发源码分享:判断对象是否存在在数据库中
; ]2 u7 b. [. J# ~8 r' ?
: b& z9 U5 K" l' |/ f! M#include <TC/tc_startup.h>, W. G, `  M" y$ [+ c6 d3 ]
#include <pom/pom/pom.h>" M/ [9 l1 {8 K& r8 J5 q
#include <ITK/mem.h>
8 J. ^5 V( L' n( k! }#include <tccore/workspaceobject.h>
# [7 n( d7 l2 V/ M1 @. t+ F
1 I3 V* r% R, M. F2 j) B1 G+ \logical is_instance_in_database(char *variable_name, tag_t object)
8 Q* I! w& M9 j* U( ^{" [+ o/ f8 l7 F9 F6 u% H
    logical exists_in_db = FALSE;
: [0 X9 x" J+ p3 I' j5 G    if(object == NULLTAG) ECHO("\t %s: NULLTAG \n", variable_name);) z& L, d1 \6 x' h: c! `; F8 p
    else
4 z/ G4 N3 X3 O1 x# [; G) ~2 U    {0 d8 p: A3 c* J5 r3 X
        char *uid = NULL;% C' A" S  M$ @
        ITK__convert_tag_to_uid(object, &uid);! g- s* S5 Z% x5 A/ f# `: Y5 g
        POM_instance_exists(object, &exists_in_db);- |3 L$ V+ X3 C9 k' R
        if(exists_in_db == TRUE)
$ e  e& x6 K7 D        {
4 x% D5 _3 F1 R, y" W            if(is_WorkspaceObject(object) )
% x8 n8 A* {& w" K            {9 @$ v/ C; _; L- _
                char *object_id = NULL;/ w( U( ^  M4 c! A4 r3 ~) z  v" d
                IFERR_REPORT(WSOM_ask_object_id_string(object, &object_id));" z, i; w$ P( J, R4 i. |. P
                char *object_type   = NULL;
# ~7 S& w& o' ^. n8 `, v8 N                IFERR_REPORT(WSOM_ask_object_type2(object, &object_type));& @$ k. S. p& j3 a" X+ Y- k9 ?
                ECHO("\t %s: %s - POM_instance_exists: true %s (%s)\n", & r$ Q1 z) F& r( Y9 v
                    variable_name, uid, object_id, object_type);
) r1 ?/ M" U2 G+ U: L$ v# H                if(object_id) MEM_free(object_id);  {8 \7 e" u. c, V6 {
                if(object_type) MEM_free(object_type);
8 H6 H/ G9 f. J/ o8 }            }( ~; m; Z: e$ M' @$ |5 i, c
            else ECHO("\t %s:  %s - POM_instance_exists: true\n", ! K- j# r) j1 Z6 p0 b+ X* ?9 O2 W
                variable_name, uid);5 ?6 ]% c4 [8 q* x# Y
        }, @" o* y7 G' H7 Q6 t1 w' X
        else ECHO("\t %s - POM_instance_exists: false \n", variable_name);' I* z( J7 s, \, O( g% z  f  I- d
        if(uid) MEM_free(uid);
  Z) R; [2 d$ Y. ?' l7 C    }
0 G, t. t' k/ V# ?    return (exists_in_db);
- R0 ^8 ?, a  s* s4 t6 k}
  L% Q  }" c" d
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了