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

Teamenter SOA开发源码:通过user ID 找 User

[复制链接]

2018-10-9 01:46:46 3313 0

admin 发表于 2018-10-9 01:46:46 |阅读模式

admin 楼主

2018-10-9 01:46:46

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

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

x
9 Q, d2 s5 ^+ Q: N2 m/ Z* ^8 }
Teamenter SOA开发源码:通过user ID 找 User
8 ^/ @6 l2 i5 o  r& I7 H3 Y# ^5 A& J5 x' j7 _$ J
[mw_shl_code=applescript,true]import com.Teamcenter.services.strong.query.SavedQueryService;
* z0 O4 ]! M+ H$ iimport com.teamcenter.services.strong.query._2006_03.SavedQuery.GetSavedQueriesResponse;
: @! z: _# c" N" vimport com.teamcenter.services.strong.query._2007_09.SavedQuery.SavedQueriesResponse;+ \+ X, Z" R% K. {
import com.teamcenter.services.strong.query._2008_06.SavedQuery.QueryInput;! \8 D6 x% n- m- N0 {) C
import com.teamcenter.services.strong.query._2007_09.SavedQuery.QueryResults;
; _2 S. _7 w; t2 q% Q- b, kimport com.teamcenter.services.strong.core.DataManagementService;  x; K$ @9 A3 N8 K- q7 D. ^4 N
import com.teamcenter.soa.client.model.ModelObject;; s5 _: ^3 B/ z
import com.teamcenter.soa.client.model.ServiceData;& p) Q& t" [' o! e5 o/ `$ A6 ]
import com.teamcenter.soa.client.model.strong.ImanQuery;
: e4 G- j8 V3 C2 R9 f; C" S8 U; e3 V' W- E8 `' b: q- h
import com.teamcenter.soa.client.model.strong.User;
+ |& k! n) z8 Q$ k/ ?  h( }% G. x& K/ y; N

4 `, }' t% h6 _  ]3 G, J    public User findUser(String userId)
# H* G3 J% @1 d, O) I6 n& x    {
7 d  @3 D6 v4 x5 f: c: \# a; F        ImanQuery query = null;
& a% n9 O. }! G$ W        User user = null;( T1 l7 u( B; t4 n/ e: k
        
% ~( K- n# O  N$ M1 J6 F5 E& D1 t4 H- h2 Y# {; S
        SavedQueryService queryService = SavedQueryService.getService(AppXSession.geTConnection());
  J# Z, K% V- G8 u, m+ d3 Q) Q9 S- {        DataManagementService dmService= DataManagementService.getService(AppXSession.getConnection());6 i0 ^) u) m% ~" T
        0 y, p* u# `# @  `7 u7 t
        try) Y% o  G& ^$ U3 I: K( f5 J; k$ M
        {; E# l' j; \3 K0 X, f: ?
            GetSavedQueriesResponse savedQueries = queryService.getSavedQueries();
4 k6 }6 }' _( ]# J2 G! x            if (savedQueries.queries.length == 0)4 k9 _' U) c, U5 _
            {
6 h. i3 h* R9 @4 W/ C) \- {/ [                System.out.println("There are no saved queries in the system.");: l! {. O2 X, ?; j+ U, Z9 X  \1 J
                return user;7 l, X% V! Z6 N
            }
" ~- K& Q# M4 t. x: l8 p" k            6 Y1 U) _& U  z4 ^$ r3 x
            for (int i = 0; i < savedQueries.queries.length; i++): U9 |; l/ M$ N4 j' H0 |
            {0 i# @/ T1 D. W) r! o/ o

' Z; f, u8 n: A7 X9 R& C! @                if (savedQueries.queries.name.equals("__WEB_find_user"))( _& n' g  e* G- [/ ]7 I# r
                {! _1 T' ^( V7 r2 }+ E5 R. j  N
                    query = savedQueries.queries.query;
/ E' f5 {) Y5 B+ q/ Z' p                    break;
) B4 D! G& t9 [# C8 I( Z                }
# z8 N* q3 Y6 W3 r$ |8 U            }8 U: m8 Q5 D; j3 N- ~
        }' }6 o+ }+ d0 H5 w. v  u
        catch (ServiceException e)
  i2 G! [2 O# F        {
3 A6 t, i8 z( Y            System.out.println("GetSavedQueries service request failed.");4 q' W+ t; h( b7 O5 N
            System.out.println(e.getMessage());% M' [$ y  S; O1 [
            return user;
' |; b5 z0 N4 I* C5 z# _$ Z        }
" i3 z3 T3 Y; d2 {! W3 D7 P8 ]3 h7 z! f9 e, n" J
        if (query == null)  |1 x% S+ P6 ?+ o# W: _
        {! L1 u) U  v; @: c
            System.out.println("There is not an '__WEB_find_user' query.");7 M9 n/ V( P( r- N3 G
            return user;
+ q3 T6 ]  R5 l* x4 Q* ?+ e+ I5 R        }
5 p7 u  \& t1 X( d+ _% y$ l# ?4 j
  {9 d- R7 f9 ]5 @1 Z0 c        try
: ]9 u1 \7 O+ x9 E  M2 d# O6 y: X        {# M0 r2 C- t3 H( \' K
            QueryInput savedQueryInput[] = new QueryInput[1];' A: U$ a" g' g. k/ g
            savedQueryInput[0] = new QueryInput();
0 m" _+ o. r8 v4 D. C, @. O            savedQueryInput[0].query = query;8 y% [1 f, T$ {% B  k
            savedQueryInput[0].entries = new String[1];
1 R. K0 i/ v: T; w            savedQueryInput[0].values = new String[1];# h) N$ ^2 P6 I1 v5 F1 c
            savedQueryInput[0].entries[0] = "User ID" ;
  j$ i& y& e' }0 h  j& ^            savedQueryInput[0].values[0] = userId;
" p" Q& s( S/ J9 \) y" ?: a" F4 d            savedQueryInput[0].maxNumToReturn = 25;& l0 s+ U/ V: F" H- h
            
2 M, g6 \. p, B) P8 g; a            SavedQueriesResponse savedQueryResult = queryService.executeSavedQueries(savedQueryInput);
* i: U" P, M( v5 y/ q( B            QueryResults found = savedQueryResult.arrayOfResults[0];
3 D: V  `) m9 p/ [  H/ G3 T0 c1 b) J3 N
            int length = found.objectUIDS.length;
* z5 |5 k/ r5 F) f# H            . s/ d2 b# o3 ]8 D, z& B
            String[] uids = new String[length];
  p9 z! Z# A+ l  f: B2 |6 O            for( int ii = 0; ii < length; ii++)6 u8 e, ]/ [1 x7 C+ I0 N0 ]! v
            {
2 P% ~5 D: K  @9 k5 N* G                uids[ii]= found.objectUIDS[ii];6 |5 D8 f4 d" }. B! L# m5 G7 H' C
            }4 H* x( T8 L* r% E
            ServiceData sd = dmService.loadObjects(uids);) ~+ s  `& f4 t8 n
            ModelObject[] foundObjs = new ModelObject[ sd.sizeOfPlainObjects()];
  A6 j- J/ l$ B" z1 l% [* k- U            for( int k =0; k< sd.sizeOfPlainObjects(); k++)& ^% \( O* a: q$ g; v
            {4 \+ l" d! J7 a$ o! O2 d$ p" z+ ?
                foundObjs[k] = sd.getPlainObject(k);
, s' i: Z* }% j. x4 r0 P4 v8 h1 n            }
5 L+ Q. H8 G/ ^- N" O& }9 t5 b            user = (User) foundObjs[0];   . w& R. n" ]) J7 J
        }; p! }9 X7 `7 F  d# I) L
        catch (Exception e)/ V4 @- M( u' n
        {6 E" X+ [8 @9 m4 B0 V$ n, |4 e
            System.out.println("ExecuteSavedQuery service request failed.");7 ~- U; h0 A5 p/ A% }) E
            System.out.println(e.getMessage());
2 K6 z, W  Y* U+ r+ ?2 Z        }            6 O* X4 e; K: E* T+ W
        return user;
- b7 }% r, g6 p- v* ?9 q5 @: R    }9 `9 B4 m; w) T) i! K$ X2 F
[/mw_shl_code]% D& P7 N. {8 e0 R5 e# P0 |
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了