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

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

[复制链接]

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

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

admin 楼主

2016-4-20 20:54:46

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

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

x
' F) K5 v; U' v2 F: |6 d# u
Teamcenter二次开发源码分享:判断对象是否存在在数据库中
  }, L7 K) x. v4 e/ Q
/ w& R- n' }2 y/ L& P. A7 W( ?#include <TC/tc_startup.h>, ^! s) ?; e$ u' H0 p! i  C
#include <pom/pom/pom.h>2 V" n+ T2 I# T2 |( @
#include <ITK/mem.h>% f7 i$ F% v4 Q) Z! a7 y& O: e
#include <tccore/workspaceobject.h>
7 X& J' f) A- B# E- }3 d
7 o  z8 q3 d" e3 v3 l1 Glogical is_instance_in_database(char *variable_name, tag_t object)2 h/ D$ W' D5 C" }
{; V9 K3 I4 N2 n! r4 \
    logical exists_in_db = FALSE;/ I& I2 V4 c! k& h$ T* C
    if(object == NULLTAG) ECHO("\t %s: NULLTAG \n", variable_name);$ l% p. x0 N+ h; [0 [
    else
1 \; _# O5 e* }+ `/ R% `' ^! p    {
; I" Q+ L& m# p3 g        char *uid = NULL;; u; \* n) i! \- n
        ITK__convert_tag_to_uid(object, &uid);3 m8 H( G4 [9 a% x
        POM_instance_exists(object, &exists_in_db);2 j; U' ^" ]" ?4 b% E/ H; j
        if(exists_in_db == TRUE)2 d4 n4 E+ w9 }7 Z- Q
        {
0 V9 [' B; H9 C" L            if(is_WorkspaceObject(object) )- R0 }( G6 F1 U1 o1 _
            {
/ U% H& E6 t7 \  T) a" ?                char *object_id = NULL;
7 y% ]4 @8 ^: V9 J* M& s  F+ A                IFERR_REPORT(WSOM_ask_object_id_string(object, &object_id));8 J8 M0 G: I% P6 Q! S- X
                char *object_type   = NULL;
; H5 C0 T% o7 H1 q# r* k                IFERR_REPORT(WSOM_ask_object_type2(object, &object_type));6 b: H  X3 {* r4 S4 K5 z- _. F
                ECHO("\t %s: %s - POM_instance_exists: true %s (%s)\n", 8 u' [8 W" a+ b" _  `8 H- {
                    variable_name, uid, object_id, object_type);8 s3 B1 T) Y$ S# D! a
                if(object_id) MEM_free(object_id);
( n) k6 A1 Y* c                if(object_type) MEM_free(object_type);2 K  L% T+ `. P! O1 u( |
            }  N) S4 a# I; Y) \
            else ECHO("\t %s:  %s - POM_instance_exists: true\n",
4 r; n4 L1 W6 w, |6 Y/ J) G+ `                variable_name, uid);
) E6 [7 Z5 b( v  D6 z        }
3 Z; P3 G8 t% l6 H8 `3 v3 f1 z        else ECHO("\t %s - POM_instance_exists: false \n", variable_name);
' |" Y$ C0 x  b3 r- L+ U  X4 r5 {        if(uid) MEM_free(uid);2 \4 [1 O7 x, W  k+ e- u# g& T
    }
, g* b+ U; f2 p" T  r  @; i    return (exists_in_db);+ B9 I! @8 A9 _: b
}
+ w+ m, Q2 d+ I! R( ^* J6 k4 f
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了