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

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

[复制链接]

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

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

admin 楼主

2016-4-20 20:54:46

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

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

x
5 B+ R- m- g9 ]8 K0 t
Teamcenter二次开发源码分享:判断对象是否存在在数据库中3 r5 ?# J: f( R* M' ^
7 S" [' B8 o7 Y/ ?$ Y" _
#include <TC/tc_startup.h>
7 r1 ~1 a4 g4 z+ ~! ^1 {. E3 S7 t: |#include <pom/pom/pom.h>
+ H" _: W( K6 P* Q6 y5 L" O#include <ITK/mem.h>5 S* c( J4 Z3 |7 c$ i" E
#include <tccore/workspaceobject.h>; s3 Y* B4 K& Z0 A7 ~

3 z' {( Y0 J4 Q$ |1 [logical is_instance_in_database(char *variable_name, tag_t object)# f( K' _# A4 O- b2 b5 p; Y$ t
{& q; w- Z$ W1 I, m& n
    logical exists_in_db = FALSE;- G- c" N5 d" d0 u0 z: @
    if(object == NULLTAG) ECHO("\t %s: NULLTAG \n", variable_name);/ X0 v, W$ B8 N' l
    else4 I! P9 c/ ]( j% W
    {5 `5 T/ S" u1 o; }2 i) ]
        char *uid = NULL;
$ D2 P' H. c/ F' Y' Y" e, Z        ITK__convert_tag_to_uid(object, &uid);6 U* D7 C! T7 k* }. c
        POM_instance_exists(object, &exists_in_db);
8 p* V7 T. p0 S8 c7 I8 E        if(exists_in_db == TRUE)
7 r3 E& B0 _. t& q4 I- S        {
* m" g4 e; p# @( G% T6 `2 v            if(is_WorkspaceObject(object) ), m9 o# l4 B1 P, z2 O
            {
) G. X0 ?6 x3 k& O! Z0 p                char *object_id = NULL;* ~6 C# b' @3 J* R- Z& `
                IFERR_REPORT(WSOM_ask_object_id_string(object, &object_id));
9 a1 t/ f9 D, [' v; V0 k' O                char *object_type   = NULL;$ O0 p5 M/ [& f7 H$ v2 [
                IFERR_REPORT(WSOM_ask_object_type2(object, &object_type));, I* l8 A- P4 r+ P: c% s
                ECHO("\t %s: %s - POM_instance_exists: true %s (%s)\n",
) @$ J2 p( x8 }5 }+ B                    variable_name, uid, object_id, object_type);$ }+ K4 V) N! U
                if(object_id) MEM_free(object_id);
; J) l8 v2 u5 j+ L6 D$ h                if(object_type) MEM_free(object_type);; f6 \4 J* |' k
            }
! w# i% ^. i9 H0 {            else ECHO("\t %s:  %s - POM_instance_exists: true\n",
! C. _( c% o- P: `                variable_name, uid);
, |+ h' h1 A( b, V        }: Q! o. K6 c  E4 ]2 v8 w8 X
        else ECHO("\t %s - POM_instance_exists: false \n", variable_name);
7 M% w2 A# k# w8 k; C; F. L        if(uid) MEM_free(uid);# c3 i% O% h. y+ v! w
    }
. F2 Z( L7 y4 i" N2 e+ ?5 f    return (exists_in_db);
1 P5 T1 E# i- [  w# \* H2 f}4 P# K/ n' j4 B' w8 e
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了