PLM之家PLMHome-工业软件与AI结合践行者

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

[复制链接]

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

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

admin 楼主

2016-4-20 20:54:46

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

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

x
% y/ c) b9 R- I! \9 I
Teamcenter二次开发源码分享:判断对象是否存在在数据库中) C! C8 L, a8 U

' F& H& R1 l( N: Y  W: i% ?6 g#include <TC/tc_startup.h>5 K3 S7 i6 D0 |7 K% o
#include <pom/pom/pom.h>
: K" n% ]/ ~- i/ B# T& E) l#include <ITK/mem.h>8 u1 P% T9 E  j+ W. G
#include <tccore/workspaceobject.h>/ F0 w& P& K7 q( R  L
: U' {6 u1 E6 I0 c  g; h9 J
logical is_instance_in_database(char *variable_name, tag_t object)
) x& T; d* z/ Q8 p7 d5 }8 g{' A* Q+ d7 H1 r4 |4 R/ T- u7 R' P
    logical exists_in_db = FALSE;! k- J3 R  ^* ?& }" a  \' l& {
    if(object == NULLTAG) ECHO("\t %s: NULLTAG \n", variable_name);
: ~* W& E, B9 S    else
! r0 U* @( i3 @$ a/ x    {, f: {. g$ x# L% ]$ {# b8 j) x) r
        char *uid = NULL;% U( e7 A* {1 p
        ITK__convert_tag_to_uid(object, &uid);
" h# {9 r: ~  A2 d1 H        POM_instance_exists(object, &exists_in_db);/ e& j( u* H; i$ s4 Z3 ~5 @
        if(exists_in_db == TRUE)
! E* d0 l3 Q) ]. k( z8 N( K        {
; o" n% D2 b' M. u+ U1 e            if(is_WorkspaceObject(object) ). `! q  {" W, [# z8 p; J- H2 W
            {
/ W" K( c7 U( M1 O3 G                char *object_id = NULL;8 r: r# a- f2 \5 q; X% O7 _! L
                IFERR_REPORT(WSOM_ask_object_id_string(object, &object_id));
  c. ?0 j  L5 |8 m+ i                char *object_type   = NULL;
5 E& t: u% h. _: l$ ?9 I. ^                IFERR_REPORT(WSOM_ask_object_type2(object, &object_type));
3 }2 t7 C  g# B8 ]; y" T: g                ECHO("\t %s: %s - POM_instance_exists: true %s (%s)\n",
! ?* S, y) U9 O2 t) i0 f$ @4 w                    variable_name, uid, object_id, object_type);0 o% K# W) \6 p! G
                if(object_id) MEM_free(object_id);& c7 c: T- v. [8 ]8 V
                if(object_type) MEM_free(object_type);  O8 m) z4 H2 J% n  h1 F/ I4 h
            }0 ?* P( g* E5 L2 t* X  U1 a
            else ECHO("\t %s:  %s - POM_instance_exists: true\n",
& A+ ]2 |9 L# h- _+ T                variable_name, uid);: S5 [* z% e  k* m! s
        }' t+ i* U* }, L6 m4 M( r8 J* J
        else ECHO("\t %s - POM_instance_exists: false \n", variable_name);$ y; l9 I  S0 }" B4 Q: y4 N
        if(uid) MEM_free(uid);
8 [3 G% Z% }) Z* Y" v* h    }- {* b6 F5 g/ {8 l( w8 _, x' A
    return (exists_in_db);
% K% x# K9 D2 l( ^}
* i9 o7 u) Q8 q' X
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了