|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
8 l% w: }2 R7 T
Teamenter SOA开发源码:通过user ID 找 User
* o1 C( _/ x; |1 Y/ m/ ^$ U
' H# O. B8 u% w" O[mw_shl_code=applescript,true]import com.Teamcenter.services.strong.query.SavedQueryService;
" V" m" F! K# ~# ]import com.teamcenter.services.strong.query._2006_03.SavedQuery.GetSavedQueriesResponse;
5 v5 z! p7 o, J/ Pimport com.teamcenter.services.strong.query._2007_09.SavedQuery.SavedQueriesResponse;
+ D( L) P* i) B) ]0 R& K' z: rimport com.teamcenter.services.strong.query._2008_06.SavedQuery.QueryInput;) g) o" q7 Y$ @
import com.teamcenter.services.strong.query._2007_09.SavedQuery.QueryResults;4 x9 y" c6 d! G W& y4 i# i
import com.teamcenter.services.strong.core.DataManagementService;
! U- u) J0 c5 p( @import com.teamcenter.soa.client.model.ModelObject;
# N5 K7 Z7 S6 v6 j' r# J$ `import com.teamcenter.soa.client.model.ServiceData;0 S' n; ]* `' H# o; g& c
import com.teamcenter.soa.client.model.strong.ImanQuery;
: Y- G/ V9 A9 |! y3 a5 |5 h
' ?4 x4 |5 j: u n5 R5 @7 uimport com.teamcenter.soa.client.model.strong.User;
0 R5 b& a0 L( j% s
$ b; `- l0 K4 s- ]
" v( b2 T" K$ @0 X& Y: W public User findUser(String userId)
) C4 x3 R( B% _9 ~% i2 K. C {0 l- R7 V$ k s) n; E4 c0 B% p
ImanQuery query = null;
8 \/ y- k; B5 E* e User user = null;3 f7 |! e( e1 j( u' v" g7 g7 d
" Q% h! h9 Q4 h
9 f! _5 e6 L8 {* X; a SavedQueryService queryService = SavedQueryService.getService(AppXSession.geTConnection());! V" R, d& E# |) V9 N, J% |% G
DataManagementService dmService= DataManagementService.getService(AppXSession.getConnection());
' }0 X3 _2 ?1 e( K. P
+ V- Y7 I r0 y- y9 L* X& ? try
( y" @1 n, M. e( R {
; W' T4 F5 N0 s6 j7 [. t GetSavedQueriesResponse savedQueries = queryService.getSavedQueries();4 R6 n! R" |: E
if (savedQueries.queries.length == 0)
+ S m" F/ \1 F: ]- n; H {' x' L0 v, Z* H3 g8 z
System.out.println("There are no saved queries in the system.");
( S+ Y. i" \" ?# h n. J return user;
% N" r: ~% `- q0 o# O }5 d6 z& B* V! V6 c0 D
_; Y; U9 a3 Z) {1 L2 W for (int i = 0; i < savedQueries.queries.length; i++)
3 ~9 y2 A# W5 _/ L' E {5 g! A/ {- w6 p7 w# P1 r) o3 ~# R
9 M" L& _# y9 C if (savedQueries.queries.name.equals("__WEB_find_user"))$ q2 O" `: A# Y! M" v2 c
{) Z, B s! ]8 E& Y( W7 g E
query = savedQueries.queries.query;( i, ?- f& b$ l" }4 x
break;0 G" a: }" M+ c6 o
}
# {% [- k! A7 I/ } }
+ J+ \8 Z' A" r: e$ e c9 }* v }, T8 V3 d; A+ Z6 B8 C7 r
catch (ServiceException e)
& A( v0 W) m. U$ f {' G2 c3 \ j" z0 m& o, J+ |& ^# k* P
System.out.println("GetSavedQueries service request failed.");- t5 t% U% i) j, Y8 `/ t
System.out.println(e.getMessage());
0 m. j F+ z7 I A2 Y return user;3 F+ T! r; G5 c
}2 {3 s, M% y$ A( J
6 ^ [5 @. E& X
if (query == null)6 X. |7 t2 Q& K8 O
{& E C, q' e. ^$ n" f
System.out.println("There is not an '__WEB_find_user' query.");
. f y4 _% Y3 ?4 W5 \4 R# I return user;
# P' Q" m" S/ h }
4 X: d& P& ?0 I& `5 O5 ?& g h7 c2 i
$ p6 ?- J2 c2 O0 | try
0 H% `& |8 F1 P% w6 c {2 l, |& o# Y3 [7 h/ u" e
QueryInput savedQueryInput[] = new QueryInput[1];. j m- o( c$ P) y0 Z) u
savedQueryInput[0] = new QueryInput();
: r6 _1 M: D" V0 r6 s savedQueryInput[0].query = query;
3 C# ?$ i2 L \8 d1 w, h! G( S8 t savedQueryInput[0].entries = new String[1];; R) I% E* ~3 N. `* ?1 a% l, W
savedQueryInput[0].values = new String[1];
+ Z6 }3 v: u9 u3 v4 ` savedQueryInput[0].entries[0] = "User ID" ; k$ C$ C2 I3 V9 {. l" Z
savedQueryInput[0].values[0] = userId;" j& v! ?# A# j1 I& I$ j
savedQueryInput[0].maxNumToReturn = 25;: A# V" }) T0 |% r7 W+ z) i2 r
; N: [! p% {3 f! L' B% h) j
SavedQueriesResponse savedQueryResult = queryService.executeSavedQueries(savedQueryInput);6 p3 ~: n' f& a: v6 Z. F' K
QueryResults found = savedQueryResult.arrayOfResults[0];; F0 V, p7 \/ Q+ q2 r# q9 E5 G
/ Y: C2 m7 I, c- c# B; f
int length = found.objectUIDS.length;, l2 b; V& t$ J+ e/ x% a& b
) y5 P* ]) U) g/ o String[] uids = new String[length];
/ s1 m0 ]( t* y4 w/ r for( int ii = 0; ii < length; ii++)
3 S( c# U9 O% i- m0 h' g- N {
( p Y' H6 t# I c- Z4 E0 M uids[ii]= found.objectUIDS[ii];- E# i/ V" Z4 K$ ?
}
7 v! v' _, P: k E1 S' Z8 H4 \ ServiceData sd = dmService.loadObjects(uids);
0 f4 r- A! ~& P3 U# S/ }6 m0 t. q* z4 C ModelObject[] foundObjs = new ModelObject[ sd.sizeOfPlainObjects()];
7 `, i) M" x5 Y+ f, ]: `$ c4 K for( int k =0; k< sd.sizeOfPlainObjects(); k++)& g0 S+ X3 O( t% S/ `8 B0 m
{+ z9 T" w* l* q$ s. J, E, C p& z# v% B
foundObjs[k] = sd.getPlainObject(k);5 t+ }; ~% G- u( }
}
- x8 i! A; c8 q7 r* f: Q- L user = (User) foundObjs[0]; ' L1 [5 V6 o% t3 u# y; @6 C
}3 `+ x, K, A+ @# t, ?' {1 g
catch (Exception e)
* P+ F V% U( s1 c1 t2 M1 v {3 U5 d9 q/ ^) c9 P1 |9 d7 u
System.out.println("ExecuteSavedQuery service request failed.");! C( }- i9 D1 I; B% m7 F2 y, N- V0 O, W3 E
System.out.println(e.getMessage());6 C4 Q. ~, L1 \; A1 K
} 6 m% k7 a1 c: F: v1 b9 I
return user;
% u8 d' d& T l% |. L# R, @ }
C, p E7 c U# }( P3 J[/mw_shl_code], i3 d P& q U/ H4 V
|
|