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

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

[复制链接]

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

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

admin 楼主

2018-10-9 01:46:46

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

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

x

$ \4 O' }9 ]& Y' W( V* D. pTeamenter SOA开发源码:通过user ID 找 User6 ^) o& r4 p- {
) {& d! [; Q" \  U
[mw_shl_code=applescript,true]import com.Teamcenter.services.strong.query.SavedQueryService;" z* e) C8 }- E( }6 ?1 d
import com.teamcenter.services.strong.query._2006_03.SavedQuery.GetSavedQueriesResponse;
) \0 t; H3 W, _3 U) \& d( timport com.teamcenter.services.strong.query._2007_09.SavedQuery.SavedQueriesResponse;
2 K% V/ j% S* B; ^import com.teamcenter.services.strong.query._2008_06.SavedQuery.QueryInput;
0 A4 m4 p9 X- {! U  z9 v# {import com.teamcenter.services.strong.query._2007_09.SavedQuery.QueryResults;! t  t1 x9 g" g) t- L  w
import com.teamcenter.services.strong.core.DataManagementService;
$ Y& p1 {8 o3 F) X/ y$ vimport com.teamcenter.soa.client.model.ModelObject;, z" D+ b2 O4 G
import com.teamcenter.soa.client.model.ServiceData;
- Q$ J: J& n) [/ [! e, o& zimport com.teamcenter.soa.client.model.strong.ImanQuery;
, o% ]1 V* J6 v6 J' h; x- o+ [& u0 ~& X# g- o# x; ^. d9 G
import com.teamcenter.soa.client.model.strong.User;
3 m! X% l, w$ Y: l2 _9 W+ ]/ i- _, S" f. N: v: |* e
# _" z* D; f& Q; b2 o8 T3 r
    public User findUser(String userId)
8 O8 q% J' D8 u: P' V' k3 f3 h9 @    {
* L2 Z0 f0 n2 A% }6 @0 g6 p  f        ImanQuery query = null;) J# d; g& n7 u) ^% O
        User user = null;
+ R. m2 b* q! b  E! t5 J        & B+ i. U; t) x* c) U* \% l; v
5 Y+ d$ R2 l/ h* Z$ ?" k+ h1 V
        SavedQueryService queryService = SavedQueryService.getService(AppXSession.geTConnection());
* W7 n) V, w: z; A3 k        DataManagementService dmService= DataManagementService.getService(AppXSession.getConnection());& R7 R3 H" T& j7 n, f
        , k8 `2 Q  {1 R  E$ C" }3 L
        try
/ @; E# ?# A; Z+ j; @        {$ `, S; L: ~* C/ `( O
            GetSavedQueriesResponse savedQueries = queryService.getSavedQueries();" ?7 h' q3 f3 e  [
            if (savedQueries.queries.length == 0). [$ G$ A- C) I, n  o
            {3 S( S" c& L7 Z, r  {8 i7 E
                System.out.println("There are no saved queries in the system.");
/ ]) g! _! t9 g% e                return user;
/ m" o% y+ N' V# ]: e  W, A            }
' D- o' I7 `. _* S            ' Q2 _# I( M! t0 M: ?3 j
            for (int i = 0; i < savedQueries.queries.length; i++)
1 x2 t- x! z7 N            {
  I2 M- Z7 a- }) M4 U( ~: j  }% U: ]9 y0 {4 L' R
                if (savedQueries.queries.name.equals("__WEB_find_user"))7 k+ ~: R! W0 \  Z1 }, C  c: O  h
                {
5 V( a; {9 y/ Z                    query = savedQueries.queries.query;$ ~1 Q; r7 i, y% x6 d
                    break;
, m* u  _3 D0 M4 x: `, z                }# E2 E% _: Q2 C# \& Y
            }' A9 R, f  a% J/ C! v2 V
        }
# B% E* {& P: y8 @        catch (ServiceException e)7 ?5 E. V) `. v, u# d, {+ y! u
        {! `5 o5 M8 e+ v4 o
            System.out.println("GetSavedQueries service request failed.");4 q* _& d7 d/ d! n7 I1 ?$ y% L% `
            System.out.println(e.getMessage());
9 m2 J  F' d- d            return user;
0 h  u6 {- Z# \( A1 V$ ]        }2 ~' @* S0 {, u% M; N, t
* y. }3 d0 p+ p
        if (query == null)& J9 }% t; `1 W+ q
        {
/ b' }8 A5 Y- E( M            System.out.println("There is not an '__WEB_find_user' query.");
+ c2 A& @1 i0 u, F            return user;
' e, i) v$ [- I/ F. p1 ~        }9 o1 R2 b) v( z" v  V* Z
) r  V3 m" n' f
        try9 K5 O' d* a9 V8 Y' m3 h- p
        {
9 l8 ]- @* X7 W/ b, ?  n            QueryInput savedQueryInput[] = new QueryInput[1];/ d. b$ U& N" m) b' P. j
            savedQueryInput[0] = new QueryInput();- i$ J1 q. Q4 w4 z; G( ]9 j
            savedQueryInput[0].query = query;. l) q8 ?  N" w
            savedQueryInput[0].entries = new String[1];) i" e$ s6 `. u1 r6 d; F6 H" i+ D
            savedQueryInput[0].values = new String[1];. [9 h! H' A% K$ q
            savedQueryInput[0].entries[0] = "User ID" ;
5 E: N  g2 c8 t8 e  V            savedQueryInput[0].values[0] = userId;7 J& f  I. v* m! v/ d
            savedQueryInput[0].maxNumToReturn = 25;# \9 O- P8 z7 ^: e3 W8 \
            ! d- E" {) u$ b  O
            SavedQueriesResponse savedQueryResult = queryService.executeSavedQueries(savedQueryInput);
. ?5 j3 z4 i& _0 I) N9 C' d5 w            QueryResults found = savedQueryResult.arrayOfResults[0];
1 v6 m" R! W" u5 F7 }& d. r! C, ?7 x/ G2 k; g0 F
            int length = found.objectUIDS.length;
5 Q9 o1 w% K& ]  m            
, a+ r7 ^+ e4 s7 F/ e4 \8 n( r% u            String[] uids = new String[length];/ W: [$ t" h; Z6 A
            for( int ii = 0; ii < length; ii++)
, V, ?# i8 ~$ \6 L            {0 }$ Y6 }3 y- L
                uids[ii]= found.objectUIDS[ii];6 a3 z  U% C; f* ?7 q6 r* X
            }
# y! E7 c. o4 H$ v4 J4 h            ServiceData sd = dmService.loadObjects(uids);
- [  }: {! I* `! p% \1 ^+ i            ModelObject[] foundObjs = new ModelObject[ sd.sizeOfPlainObjects()];
' c0 r8 u# R" p# O* v* d! D            for( int k =0; k< sd.sizeOfPlainObjects(); k++)
' U' a, v& S7 V            {1 K5 O7 T. A& X- p1 s
                foundObjs[k] = sd.getPlainObject(k);5 H# M9 C; A  }3 c( X, w) B/ o
            }
2 s) N3 x3 D9 Y! ?) y8 L4 W8 F; M            user = (User) foundObjs[0];   # b& A  e1 K- ^6 j5 h
        }
2 `/ l3 x. s5 m6 D) c" _% k        catch (Exception e)
6 O( L7 C7 g2 u        {
& `* P6 T& C) O$ ^- Z7 m! s            System.out.println("ExecuteSavedQuery service request failed.");4 I8 u: `. W$ _0 B
            System.out.println(e.getMessage());$ Y" \+ b" B. e* [
        }            , r5 j) v: ~6 o: O1 |9 n  \
        return user;( I0 _8 r) o$ I' d0 L9 Q
    }
- n2 B0 x8 B6 [0 N; h2 ?[/mw_shl_code]; [3 T0 C1 J* g  N( I& y
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了