|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
, m7 P# s. @# M5 \/ H
- J$ u# U1 z2 u: h7 m; X. U3 U
$ o5 a/ r0 a0 |: }; m, i w' H t1 x7 Y1 c7 w! r
Technique 6 T6 A$ ^& R) a- W9 g' g7 X
There is no difference in setting up a query for a single Item or for many. Only the
) W6 U3 k1 B6 Q4 |+ pcriteria define the set size returned. In this recipe you create an Item and populate . G6 {; H7 _' H% K& y5 r
the query criteria, apply it, and iterating over the Items returned producing a HTML 8 | W: u% N0 C! H: ]
<TABLE> fragment. 4 n; C1 f, Q3 A3 P( Q7 M% T6 v) z) l
1 w. R# `$ N% b
5 j, ^4 |# G* |" n5 u& H# z% Q/ AJavaScript
0 b4 |5 P" t& w- Uvar qryItem = this.newItem("Part","get"); % ^6 K* ~: C" @6 ~ U% N- ]2 r; M
qryItem.setAttribute("select","item_number,description,cost");
0 [. {1 d; z5 b5 A8 C: [! kqryItem.setProperty("cost", "100", "gt");
8 E) n( R- X: fvar results = qryItem.apply();
- W' m0 D) O/ x- [ yvar count = results.getItemCount();
" y3 v+ X3 [) G) K8 L% Hvar content = "<table>";
6 T; S4 s" A7 v# t8 c2 Ofor (var i=0; i<count; ++i) % y4 v9 [" C4 \& U6 Q
{ ( W$ i/ X2 l2 S: P4 Q
var item = results.getItemByIndex(i);
7 N! Y7 H* N: B3 G. ] content += "" +
$ U, \3 i3 p& e9 {; q. f) d3 K "<tr>" + . _/ M' ]# v5 Y+ g2 E
"<td>" + item.getProperty("item_number") + "</td>" +
8 E$ {) R# c' L1 d( h: C) ]+ N "<td>" + item.getProperty("description") + "</td>" +
~" O% M- z6 |: A" i/ v) B$ D' R "<td>" + item.getProperty("cost") + "</td>" +
2 Q5 b6 b5 z5 E+ C0 B "</tr>"; ) L+ J1 |- }& C H* X, h3 y. l: m" N
} 6 N3 O( b" Z8 P6 V7 q; S( D& y0 b
content += "</table>";
: X: y6 ~. ?1 X$ b) i7 Kreturn content;
+ z, n$ m8 D# Q* B$ W! }
. L2 f: ~( h* ?! K) F3 p+ w6 n' ~C# ( ]' {% f% _ ]9 I$ `+ o: v! r
Item qryItem = this.newItem("Part","get"); 2 v$ U! X( X! B* ]2 V# R
qryItem.setAttribute("select","item_number,description,cost"); 5 I2 D5 k& j& I6 H, s% l
qryItem.setProperty("cost", "100", "gt"); + Y* i+ \/ K) v; A9 i
Item results = qryItem.apply();
; v% m' Q8 p" Vint count = results.getItemCount();
8 v' w! V/ S% u4 lint i; $ h* R6 h4 ]5 r( Q' D
string content = "<table>";
2 Y( _. f5 ?6 @6 x: r$ q5 xfor (i=0; i<count; ++i) 5 W: J9 W$ A5 g8 S) z0 S
{ , H$ ]! c5 Q! \6 V2 w
Item item = results.getItemByIndex(i);
v: o( e) E( E. S$ [' B; G+ ?9 f content += "" +
& O! h) q* @( r$ l: i "<tr>" +
5 _# h, H2 c" F# t) } "<td>" + item.getProperty("item_number") + "</td>" + ; s* V4 x" M- p' M7 c
"<td>" + item.getProperty("description") + "</td>" + , r7 Z$ P! I- X5 _, l! P$ a5 `+ F
"<td>" + item.getProperty("cost") + "</td>" + - O, k" n& b5 B5 ?2 h8 A& l
"</tr>";
6 z. k: x4 c) I9 |}
1 W: [! W) I- ]7 R* i' \content += "</table>"; 4 B) N5 D' C6 p! W( w6 C
Innovator innovator = this.newInnovator();
, m4 C1 T B0 f# e( qreturn innovator.newResult(content);
( S- v% Y* {( ]* t5 ]
8 { r, r' D. h+ C$ H; K) \# MVB.Net
7 u7 i5 D; k8 `/ ^: E4 [7 J8 r/ fDim qryItem As Item = Me.NewItem("Part","get")
8 n( Q5 X8 r+ ~+ U" tqryItem.SetAttribute("select","item_number,description,cost")
7 R4 o# G9 `- N" v5 [qryItem.SetProperty("cost", "100", "gt") ; v2 c/ g! c+ n L% `9 j
Dim results As Item = qryItem.Apply() ' ^) i5 p* s$ h* w6 m7 c/ i4 K7 Y' a
Dim count As Integer = results.GetItemCount() / J9 n, |+ @# a) Y- e" M
Dim i As Integer ; C& A3 k# S, p# D7 m& j
Dim content As String = "<table>" % I; F& o( N5 V. Z0 O" ~
For i=0 to count - 1
. F2 o! @: L% q Dim item As Item = results.GetItemByIndex(i)
9 }. U- i5 F# W. }7 w3 a/ o# j content += "" + _ ! C1 z2 C% _! h
"<tr>" + _ ' N* ]3 s. X" R4 O/ _, e
"<td>" + item.GetProperty("item_number") + "</td>" + _
2 t7 B- v4 Z0 `; X6 w2 d5 V "<td>" + item.GetProperty("description") + "</td>" + _ & ~& d' Z6 w7 O& t: C
"<td>" + item.GetProperty("cost") + "</td>" + _ ) O. _9 ?3 c7 i) O; C/ G
"</tr>"
8 ~3 @1 z+ G5 K7 G" M2 C1 p0 DNext : r- E* I, u) @: E: W! P- [
content += "</table>" . O, D. k& H9 g- v' E9 I
6 Y Z! y) C6 K: [$ Z6 pDim innovator As Innovator = Me.NewInnovator() ' f+ V: L) ~3 N7 @ \
return innovator.NewResult(content)
8 n+ i+ i: m7 Q8 a6 f- m+ A% Y( D6 r [' }) I
9 ^& S7 b% i+ j c' l9 s2 j4 P
|
|