PLM之家PLMHome-工业软件践行者

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

[复制链接]

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

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

admin 楼主

2018-10-9 01:46:46

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

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

x

) ~1 s$ m4 l4 x4 g9 _Teamenter SOA开发源码:通过user ID 找 User3 C" Q5 G  o1 r4 }% k' B2 |

% a6 r6 Y2 I9 n! z[mw_shl_code=applescript,true]import com.Teamcenter.services.strong.query.SavedQueryService;: l' J5 i' j" Q4 L1 V8 r5 K) u
import com.teamcenter.services.strong.query._2006_03.SavedQuery.GetSavedQueriesResponse;- q  k: E2 o. G. v% g/ }
import com.teamcenter.services.strong.query._2007_09.SavedQuery.SavedQueriesResponse;. U: @$ H- _3 n- _3 e9 V
import com.teamcenter.services.strong.query._2008_06.SavedQuery.QueryInput;. ?" v" K+ J% s" Y# f9 ?9 L/ Q% H5 z
import com.teamcenter.services.strong.query._2007_09.SavedQuery.QueryResults;1 u, l, X6 ]/ ~6 S1 d' V
import com.teamcenter.services.strong.core.DataManagementService;: k9 ^1 Q: _# U! A% \1 g  ]7 n# E' U
import com.teamcenter.soa.client.model.ModelObject;7 i" S- N( x" L1 i; i
import com.teamcenter.soa.client.model.ServiceData;
6 F8 ^1 Q+ L% }1 R; Mimport com.teamcenter.soa.client.model.strong.ImanQuery;
3 T  B, |% W- n% {+ A# _4 s/ g9 j1 O, H' M
import com.teamcenter.soa.client.model.strong.User;
0 C. F- L' [" T- S1 _9 p* c. U! P5 z
/ b" z* j  V+ Y  K9 M4 S1 r
    public User findUser(String userId)
4 e' M. ]6 K- t  ?    {
. e# k& j' p5 Q  P2 M        ImanQuery query = null;' y0 x  [  E6 a% y
        User user = null;
. }$ \) h+ J: x+ s) I7 K        ; ^& t4 [' S1 ~) E' U

, U$ n! Q0 X$ F9 c5 A) D        SavedQueryService queryService = SavedQueryService.getService(AppXSession.geTConnection());# E) `# K$ F1 T' |, |7 @
        DataManagementService dmService= DataManagementService.getService(AppXSession.getConnection());
1 B7 _- K' ~( P7 o  \: d$ y. \        , l$ R" z" W5 A0 m3 F
        try4 F) [4 n+ s4 @. [% q  k
        {
& F5 E8 `! e' p# H0 E" ]; l            GetSavedQueriesResponse savedQueries = queryService.getSavedQueries();
3 T0 W+ R2 g/ W9 ?6 ]3 P& s5 H% ^            if (savedQueries.queries.length == 0)
9 y1 K9 e) l' C! M8 o5 d2 ^            {! {8 a$ y6 i( J. _$ E* |* Y
                System.out.println("There are no saved queries in the system.");" C% f6 O: D/ N" D' m6 g/ a
                return user;+ b, D6 S3 E: H2 j
            }
/ ]# Y. C6 R) C9 m' T5 A            3 V* T9 H) S5 m* z- h
            for (int i = 0; i < savedQueries.queries.length; i++)3 S9 i7 m) z% n1 g7 f
            {) ~! |  ^$ S' U  v4 }3 G# H

. u0 d1 e8 @, M. E  [                if (savedQueries.queries.name.equals("__WEB_find_user"))
1 e. U3 q2 J8 q" D  b; a; k/ C8 X                {; Z7 N( N2 C3 k3 V. z
                    query = savedQueries.queries.query;1 a, d% P$ B6 ]# g) v8 y5 y' |
                    break;) E0 m" ?4 i7 G" _, I: w
                }
& w1 m0 @/ Y  a            }! [# v3 e* G' w
        }
8 s2 w0 T6 T' @        catch (ServiceException e)
' a* U3 }* @5 R# v8 a9 d4 U        {( W; C( q/ R$ M- A' {. E. I
            System.out.println("GetSavedQueries service request failed.");
& B4 W3 c2 M$ S% Y            System.out.println(e.getMessage());
* V1 R7 Q$ W9 V& q" F& p            return user;
4 o) o+ m+ F1 K8 R" p  ]        }
4 C! e6 _& W" ]& d6 a
  u2 F4 v. A, u        if (query == null)
1 |* W& `8 p% Y" |7 b. X0 v) s        {% M7 y; q/ u* o# ?" I
            System.out.println("There is not an '__WEB_find_user' query.");
. V- K, W: P5 i2 n$ G& p8 i3 X            return user;
7 c& [0 ~7 m! ?, y) K- Q$ T        }$ E9 o  }$ f. z2 E! U+ C4 C$ l7 B
; i1 S) T$ k2 Y2 s
        try( p3 K; C, J5 T! _! N& o
        {
3 u7 z8 ?2 \' X1 ?  O; U            QueryInput savedQueryInput[] = new QueryInput[1];# E/ Z& r) v$ w* n* ], v
            savedQueryInput[0] = new QueryInput();
, x: A& X  d9 R! Y/ u: s# O/ H0 W            savedQueryInput[0].query = query;& m, D) E2 E$ f
            savedQueryInput[0].entries = new String[1];/ s5 W. L$ J+ W: {0 G7 |
            savedQueryInput[0].values = new String[1];1 s# e8 t+ o  B% z$ L
            savedQueryInput[0].entries[0] = "User ID" ;, u" |+ W  n# n7 e, x/ k% C
            savedQueryInput[0].values[0] = userId;4 ^6 d2 B. t9 [
            savedQueryInput[0].maxNumToReturn = 25;
7 A( t2 {3 M2 X5 ~  R6 y+ c            
4 D: @, g8 O* A+ W4 j+ [( ]- `0 S  N            SavedQueriesResponse savedQueryResult = queryService.executeSavedQueries(savedQueryInput);
5 d: \8 v9 b- Q' ]) k; N) A            QueryResults found = savedQueryResult.arrayOfResults[0];
( Y8 y3 Q& M) H( s7 G
8 m9 y; Z- d  t5 V8 m& ?            int length = found.objectUIDS.length;* Q. ~2 e: s6 J# `, w
            
& n3 G( ]" U  f* o            String[] uids = new String[length];
  K9 J3 b' ~7 O* _            for( int ii = 0; ii < length; ii++)* p& b5 i2 M. W0 s6 O! t
            {* V2 O1 a9 A" k$ T; N
                uids[ii]= found.objectUIDS[ii];
9 k0 Q( \: C/ {! R+ r: R) J$ c$ \$ p# K            }
+ ~) k/ s% r7 K% U  b, ]0 T2 d: `            ServiceData sd = dmService.loadObjects(uids);& r3 p* @1 C' d- U( Q
            ModelObject[] foundObjs = new ModelObject[ sd.sizeOfPlainObjects()];7 W: c6 U$ ?7 s' p4 ?: [/ X
            for( int k =0; k< sd.sizeOfPlainObjects(); k++)7 R$ V* p+ I" S* `
            {
3 n0 Z6 C- s2 |                foundObjs[k] = sd.getPlainObject(k);2 v8 T9 ~0 Y2 r5 D) t& x
            }
3 M1 I& s/ g/ I& S: B            user = (User) foundObjs[0];   3 y) o6 W. _# {( `
        }
2 [* m- }) ], r6 s        catch (Exception e)
4 M& B# H9 _$ U; f: |- Q: b        {, t4 e9 k* _* c/ M8 ^$ a
            System.out.println("ExecuteSavedQuery service request failed.");
3 a$ b% Y' w) U. D, B            System.out.println(e.getMessage());
  u& B) i2 _) ?2 e# i4 w, l( ^        }            
$ P* l, c, v2 {+ j        return user;
1 u9 `) f9 ?, q" s    }3 e1 J, H! O4 y; }9 x! s
[/mw_shl_code]. e4 A5 i) j/ B$ [  q' R
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了