PLM之家PLMHome-工业软件践行者

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

[复制链接]

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

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

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

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

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

x

% r+ G1 a: y" }Teamcenter二次开发源码分享:判断对象是否存在在数据库中
; L# c/ A& [4 u) Z# B- ?! z/ [
5 D) N. O& T4 i5 e- K' Y+ o#include <TC/tc_startup.h>- N" g3 |' [8 U; ^- n8 m8 r
#include <pom/pom/pom.h>
; s" {; S! l: ?% o#include <ITK/mem.h>
2 Z2 E) H/ F& p#include <tccore/workspaceobject.h>$ y5 R1 G( \0 C% `4 L

# P0 c0 F! }4 Hlogical is_instance_in_database(char *variable_name, tag_t object)) y$ D  L3 s; w8 b. I& _
{- u5 P% o( g% T7 v
    logical exists_in_db = FALSE;9 N& K: x9 w6 j7 S8 B5 o+ m
    if(object == NULLTAG) ECHO("\t %s: NULLTAG \n", variable_name);6 y$ M/ {' H/ ]2 Q7 O, R: G( h! Y
    else
2 g& R) }; ^5 e# g9 H4 ?    {1 ?  }& O8 N+ q+ }4 f# t
        char *uid = NULL;3 U3 o" _, A1 x7 ]" N8 E
        ITK__convert_tag_to_uid(object, &uid);
7 Y+ ~# Y$ o0 O8 v0 D4 e+ P        POM_instance_exists(object, &exists_in_db);  ]# w# E2 Z- }& e6 Q
        if(exists_in_db == TRUE)4 u$ V* j7 Z2 M4 x: l3 K# V% j
        {
# @2 ^4 |8 M. W- D            if(is_WorkspaceObject(object) )
+ n5 q: @6 l, S$ e  l9 E            {
: g( O- ^( W) S" G                char *object_id = NULL;/ e* ?+ ~4 o2 _0 x' r6 U6 A; ~1 O+ z
                IFERR_REPORT(WSOM_ask_object_id_string(object, &object_id));
9 i& }! x; p4 W9 S1 _5 D                char *object_type   = NULL;, i4 H  v2 Y; C6 `
                IFERR_REPORT(WSOM_ask_object_type2(object, &object_type));
7 V, b: W6 j& n. j; a2 N- e9 Q" K5 k                ECHO("\t %s: %s - POM_instance_exists: true %s (%s)\n", " d3 B  m1 w6 U" O) l
                    variable_name, uid, object_id, object_type);) s" Q1 A4 ^1 w$ S# g! l2 k: l) x7 w
                if(object_id) MEM_free(object_id);
3 _+ ~+ M2 C( U2 k# o/ Y! {0 c                if(object_type) MEM_free(object_type);
1 G" ?9 ^" W0 k' O9 Z            }  J* F; ^7 j9 Y0 @7 h* o2 n4 b. L" {" Z
            else ECHO("\t %s:  %s - POM_instance_exists: true\n", 3 c; D) y" X9 G8 T
                variable_name, uid);
, E$ X- Y8 i: Y$ q4 y        }% M8 G. h$ }) v" D; t7 o4 O# t
        else ECHO("\t %s - POM_instance_exists: false \n", variable_name);) [2 _2 _6 u- T/ c& e
        if(uid) MEM_free(uid);+ e& F& I% H0 @* G
    }
2 @$ o& g6 \  q2 u    return (exists_in_db);" M  R. v8 X% o$ I6 [4 c4 }
}
. }' K, T( U' U4 X& D6 H  Z
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了