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

Teamcenter二次开发源码分享:获取下一个Item ID的方法

[复制链接]

2020-2-8 09:29:34 2312 0

admin 发表于 2020-2-8 09:29:34 |阅读模式

admin 楼主

2020-2-8 09:29:34

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

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

x

) v% ?: O7 S9 _Teamcenter二次开发源码分享:获取下一个Item ID的方法; D9 I) [* K# C! t) Y
3 ^6 I% H+ w7 I( P( c: k
[mw_shl_code=cpp,true]#include <iostream>% a0 @* o$ b8 [& q: {- g' X7 b% {

# j9 k0 d8 R/ ?& P1 n2 {7 m6 A5 D#include <property/nr.h>
& t% x/ x1 i: \#include <TC/tc.h>
, x/ C! Y; o( A$ K; }#include <tc/tc_startup.h>* S: @! h, R, D* g( |
#include <tccore/item.h>
' ^, H0 D$ n4 z" v9 l+ ^. d#include <tccore/tctype.h>
+ R; H6 w, m5 o#include <base_utils/IFail.hxx>7 O+ b: w/ {: h9 [" S
#include <base_utils/TcResultStatus.hxx>8 p( l5 K% s% K7 h: B- |; c1 T1 {+ A2 H
#include <mld/logging/TcMainLogger.hxx>8 }1 z9 r( x" M8 [
- _2 S6 w+ O( ^( m' L& O9 C
using namespace std;  R8 Q. |9 M3 n8 T) V' i' Z
using Teamcenter::Main::logger;
1 [5 Y+ d* `$ r: l$ a
; [2 m7 E5 P, P" e. s& O: b& t4 ?int get_naming_rule_next_rev_id(tag_t item_tag, char **next_rev_id)
% L2 v; _5 c# W{5 }# s  F. X! p0 r, F( l+ y; S
    int ifail = ITK_ok;) b$ T4 E5 E- T6 O# ~! }
    ResultStatus stat;
9 }. T/ }& i; v! l# m1 o+ i% Q    try" p, R* c. a0 @1 `% w3 A1 m* w3 T
    {
7 R: H7 ]1 o5 l6 k: V        tag_t item_type_tag = NULLTAG;
/ [. q" d" o) H, o! a% k        stat = TCTYPE_ask_object_type(item_tag, &item_type_tag);
  A: ]8 G3 P, n: Z. e- P3 S' \
$ m/ v5 a  I% @        char *item_type_name = NULL;# L: g# n: O9 m, X1 N5 j4 n
        stat = TCTYPE_ask_name2(item_type_tag, &item_type_name);
1 @' w# o* a! a9 j: _( z: n( e3 ^9 d1 n
        stat = NR_next_value(item_type_name, "item_revision_id", item_tag, "", "", "", NULLTAG, "", "", next_rev_id);
/ ^) M  L, p4 {4 C* v: O7 B% ^, O' h" J        if (item_type_name)  MEM_free(item_type_name);& N$ e! f/ G+ F8 b5 j5 A9 E
    }
  @. G: g' J3 d    catch (const IFail &ex)7 g" m8 @  y% C. `, x
    {6 v% w) Q2 @7 n9 d
        logger()->error(ex.ifail(), ex.getMessage());: T2 T" G& f+ j9 A& A1 I# G
        cout << ex.getMessage() << endl;
) C6 m9 r  B% J, l        cout << "error " << ex.ifail() << endl;$ I: [  p! _% a4 r
    }; h; ~* P3 m; O9 I! k+ L
    return ITK_ok;
2 j* E; j1 L: s! h+ k, D3 X# J}[/mw_shl_code]
3 k( E1 k# R& x- G+ a3 s4 {6 K
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了