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

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

[复制链接]

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

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

admin 楼主

2018-10-9 01:46:46

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

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

x
/ v) a+ b! ^' a+ o/ G
Teamenter SOA开发源码:通过user ID 找 User# }! Z3 W, Y$ F) ]. x) |' h$ M
/ O: L: m& u$ I% }" H8 N
[mw_shl_code=applescript,true]import com.Teamcenter.services.strong.query.SavedQueryService;' d' ]# Q  Y5 N- @9 y- [5 p8 @7 t
import com.teamcenter.services.strong.query._2006_03.SavedQuery.GetSavedQueriesResponse;
" k: P: h; X# y* q3 jimport com.teamcenter.services.strong.query._2007_09.SavedQuery.SavedQueriesResponse;
  J( h& s5 p. O3 A' ^: [import com.teamcenter.services.strong.query._2008_06.SavedQuery.QueryInput;% S) y+ U; w" a, O
import com.teamcenter.services.strong.query._2007_09.SavedQuery.QueryResults;
2 a. I0 l* ^- `5 zimport com.teamcenter.services.strong.core.DataManagementService;  Q# \' P# b9 D9 \- H, S* a
import com.teamcenter.soa.client.model.ModelObject;0 s5 l, I  g6 E! ~- Z- q1 {) R
import com.teamcenter.soa.client.model.ServiceData;
; x% ^$ C7 g+ o* P/ ]; `: Eimport com.teamcenter.soa.client.model.strong.ImanQuery;' w/ ]/ L7 {, ^0 T7 Y

7 `3 a% v) o4 I) _import com.teamcenter.soa.client.model.strong.User;
/ T) ?9 D, s6 v5 l9 q& Z+ L, n1 K8 l& }. Q( I

: A& [& K8 ?' z$ H* [    public User findUser(String userId)4 l9 I1 y* d0 l  y2 Q: Y
    {0 b8 {6 ^9 O+ I3 d1 o9 E
        ImanQuery query = null;
( v; G0 C+ `# t" u2 ^9 A        User user = null;
6 }, z% |, t& j4 C- |, l. R, p        3 Q! O) j: w' t% L; g
& h, [/ L7 H7 i! R
        SavedQueryService queryService = SavedQueryService.getService(AppXSession.geTConnection());" q" S- J# e9 I  _& y$ c- e
        DataManagementService dmService= DataManagementService.getService(AppXSession.getConnection());; F% @# D/ K1 d% w7 C2 J
        
& H8 X  Q  P; }        try3 u, K9 @& U% ]9 G( ]
        {
3 \7 E  v3 y+ X. v            GetSavedQueriesResponse savedQueries = queryService.getSavedQueries();
) I1 A  J" i# D. }            if (savedQueries.queries.length == 0)$ T( m( A- e/ a* E
            {9 ~  g- w5 T5 ~  }
                System.out.println("There are no saved queries in the system.");6 s% O+ @. X4 u
                return user;/ B; `! W' H% m
            }
0 Q+ ~) j- [6 G1 ~            7 W4 b9 ^* k0 J6 h8 l
            for (int i = 0; i < savedQueries.queries.length; i++)
; W. ]3 Y; Q: r( r9 X* O4 C            {
) k+ U! p( e6 d! }4 ?* A! C0 m
7 q, g' s4 ^/ E- z" n                if (savedQueries.queries.name.equals("__WEB_find_user"))
& R2 {# h3 F- |9 ^                {
4 s: k- B5 {$ t0 j& C/ z                    query = savedQueries.queries.query;" g! ^: j. c9 N' ~
                    break;& W+ I8 L4 e0 h1 G6 ^
                }* v) F9 R/ N& t! F. \
            }
! c# q. }1 J7 ~, n2 f        }
+ M/ E6 q3 J- [$ ^2 i$ K/ @        catch (ServiceException e)+ J7 g! J* H) G. v9 g" w" M, s
        {
2 H" ]  ]) z* p% |            System.out.println("GetSavedQueries service request failed.");' Z9 w- j! W7 W  w. R7 B
            System.out.println(e.getMessage());
: s& ]$ y  W- g8 K0 z3 S) G            return user;+ s9 {6 x3 B! N6 q" y- g; B; w' r
        }6 R. P# N4 Y9 E& P% E& W& a) N
) n  L6 U% ^+ I6 ]
        if (query == null)8 A9 z/ m! i& M: a1 H; x( A
        {+ g6 E; n! f/ f
            System.out.println("There is not an '__WEB_find_user' query.");, \$ R# _- G8 l% k3 ?
            return user;3 f. i2 K3 ]" H7 j
        }% C, ], S8 m8 H  x( e' I

. N8 O% N3 S& v6 U        try. M( O' H+ }' j$ K; c4 ^5 t& H/ @
        {
7 S; s( t! ?' p- [: r            QueryInput savedQueryInput[] = new QueryInput[1];
! W6 d0 g( J- B1 g% E! Z8 g; v            savedQueryInput[0] = new QueryInput();
- ]$ \  q2 p& |' z' h8 b            savedQueryInput[0].query = query;
6 j0 C1 s. U+ e2 {5 s% Z8 K9 T            savedQueryInput[0].entries = new String[1];. @4 w" j+ X% u
            savedQueryInput[0].values = new String[1];2 h. U# p5 W% d6 i
            savedQueryInput[0].entries[0] = "User ID" ;" `; o& ~3 Q' v
            savedQueryInput[0].values[0] = userId;1 T/ N/ f% Q+ P* I$ E) |8 P
            savedQueryInput[0].maxNumToReturn = 25;
7 Q& C/ l4 \; L" H% _, G- t            ' y  O" F& D! L) d, d1 Y
            SavedQueriesResponse savedQueryResult = queryService.executeSavedQueries(savedQueryInput);
6 T1 g; E) c  i' k- ^            QueryResults found = savedQueryResult.arrayOfResults[0];! s& j  s' G5 ^5 |
% S' V, H( }! R3 r* p% p
            int length = found.objectUIDS.length;/ @2 v" j$ w5 r1 C. w. x
            " ?5 A3 E, t7 U  n$ V
            String[] uids = new String[length];/ o5 Y! a3 \  O7 T
            for( int ii = 0; ii < length; ii++)# R, s* B  K! T1 e- G' \
            {
1 W3 k# a  @& _& ]- n7 ]                uids[ii]= found.objectUIDS[ii];
7 q, w& T& `  M4 S, L5 c            }, P8 M+ E: Y8 I: {4 ]. \) d
            ServiceData sd = dmService.loadObjects(uids);
  {3 R  F% o5 p* k5 g1 O$ O/ G            ModelObject[] foundObjs = new ModelObject[ sd.sizeOfPlainObjects()];
( T% j0 ^; F  X- ~$ u            for( int k =0; k< sd.sizeOfPlainObjects(); k++)7 T3 x/ V8 s1 F
            {
: W: j/ C; C; z4 K* d; ?& j+ w                foundObjs[k] = sd.getPlainObject(k);! x1 O% B0 d( Q  w/ r
            }
4 O% J  E- S4 L            user = (User) foundObjs[0];   # K$ Q, B' _6 v* ^
        }
/ _& }+ M  L, K% k3 j        catch (Exception e): m) y5 u+ e6 c: P
        {. P& ~8 m5 P. X
            System.out.println("ExecuteSavedQuery service request failed.");+ |& N" V+ e1 f- q
            System.out.println(e.getMessage());
9 ?5 H3 ]5 d) ~9 a        }            " I+ y3 i$ Y5 U$ U! K# H1 d3 C
        return user;
( ]! |: c5 b, T: Y    }
! f" p+ p; z, ^6 z5 Q* @$ ^8 z. o[/mw_shl_code]% h$ M* C8 U/ w. B6 D3 C9 e% b
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了