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

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

[复制链接]

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

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

admin 楼主

2016-4-20 20:54:46

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

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

x

, H( J- N9 R( F8 h: Y2 BTeamcenter二次开发源码分享:判断对象是否存在在数据库中! N7 I7 |* W2 ]  @- W* e

& ?3 c3 L9 Y0 c( R% T# ?" l* C#include <TC/tc_startup.h>0 ~* _" p/ |0 M$ G% M* n6 C
#include <pom/pom/pom.h>
2 z7 ?5 I6 m9 ?! w% o% j#include <ITK/mem.h>; Z" J8 c3 [  c* i* z3 r
#include <tccore/workspaceobject.h>. ?; e7 T/ ]8 L$ P" @: j

1 k6 s' q8 V8 H. H: z1 G6 \9 S' t) @logical is_instance_in_database(char *variable_name, tag_t object)
% D$ W! v" D8 @+ p3 e{
  |' c7 i: O8 J( [4 W. ~    logical exists_in_db = FALSE;" s( M$ [2 F. f: [6 `( c, T
    if(object == NULLTAG) ECHO("\t %s: NULLTAG \n", variable_name);
: D- c( h3 |8 o6 y3 W1 r, C    else
$ B" U3 k7 M! x! H2 x. Y+ S" _) d    {
5 h/ _) c1 D3 l! d9 t        char *uid = NULL;
7 t/ W3 w' J8 |: h1 h        ITK__convert_tag_to_uid(object, &uid);
' E- m9 ]5 s8 d: r        POM_instance_exists(object, &exists_in_db);
& M7 Q. i( C# C# {2 k        if(exists_in_db == TRUE)
; g  \" I- R  z/ B        {
, a* o' w+ y* Y& x            if(is_WorkspaceObject(object) )8 e) O0 x, X6 N& N
            {$ W% h" N9 ?, Q+ P" Y; ]8 i
                char *object_id = NULL;
! ?4 B4 l( m; q" K) L7 t% x                IFERR_REPORT(WSOM_ask_object_id_string(object, &object_id));- N. V! J$ C5 ~0 S, k
                char *object_type   = NULL;% s. P. J! h: Z4 z0 v0 J
                IFERR_REPORT(WSOM_ask_object_type2(object, &object_type));" v5 C2 d7 e) R3 c+ q6 x
                ECHO("\t %s: %s - POM_instance_exists: true %s (%s)\n", - Q7 h1 N: V0 C% u6 M
                    variable_name, uid, object_id, object_type);
# t8 g, X! }& J- ^                if(object_id) MEM_free(object_id);0 Z' Y1 ]& y( U1 k* D. S
                if(object_type) MEM_free(object_type);8 d5 D/ o9 a# }5 v3 \( j( P' h
            }
7 n4 \6 J: v, B% `8 [            else ECHO("\t %s:  %s - POM_instance_exists: true\n", 0 a; A+ \, d7 `
                variable_name, uid);* z( S5 d/ @/ }: |5 A+ }" x; v
        }  R: A4 K+ V- C7 C$ c7 X% `& J
        else ECHO("\t %s - POM_instance_exists: false \n", variable_name);
. _  q: x% P0 O        if(uid) MEM_free(uid);& j0 F4 L1 _# ~- v: b- F
    }) M9 V" @. ?" m# C8 z: Y
    return (exists_in_db);* Q8 B1 B3 r: T+ X) \  t3 }
}% f" k9 z! z: H' [4 S
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了