|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示) F3 C. r1 S6 t- y( [, g' J
结果如下,点击Change Management标签,自动弹出统计界面
0 y7 o$ P, x3 a+ I7 W4 ^1 r3 f, x
- O0 K4 O1 d) B5 W& O6 |8 Q
5 \* a) \3 `$ N. t; r" p3 f9 J8 h* M9 g$ Z' F# l5 I/ E0 g
' k( w5 {6 J/ X$ u. B
' D* U: u a: C* q5 c0 Q- I(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名
4 L5 N! i4 L( f2 A# p5 I$ R' v' J4 Q( D' O
( w; ~8 i7 ~: z( Z( [(2)关联一个 on load的事件,使用 JavaScript 的方式
: Z. e; ^" c- }5 i7 [( a
6 e+ A0 W+ _. B3 h4 V% A$ J- h" h9 f+ m: \0 I/ W
(3)对整个事件进行代码. C4 I3 o3 b5 U2 s' G0 p( H* x
3 {6 w7 o8 k+ ?; @$ |% ~1 T
+ I, j5 W$ E6 {% |! ^: o完成后即可看到相关效果。: l F9 T( E# \" A/ P: j
3 A7 K% r5 K, \7 s% M
代码如下:2 b7 {# B3 ?; Q6 B5 ^5 A( w: s
# T5 q7 s! }& Y% d# Z7 z//get the ECR Collection
. i$ r) u! m2 L. I$ t, c$ c$ y, \* kvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;$ p* @: @/ F- ~, C' H
var currentItem = null;
% b& [3 r( m) C1 o! f3 |! ~; K; Xvar currentState ="";' \! c' z+ g$ g6 t1 w
var innovator = aras.newIOMInnovator();
1 y/ d1 y- n8 B$ d1 \$ pvar item = innovator.newItem("ECR","get");: g' u0 X2 M( }. W) Y+ d$ }
item.setAttribute("select","state");
( k5 F6 \7 C1 zvar ecr_items = item.apply();
- K) |. O1 A" Kvar totalCount = ecr_items.GetItemCount();
3 H2 K' i4 c( Z1 ~( Y/ w4 cfor( i=0; i<totalCount; i++) x0 q+ e: L/ R! J; ~. x( s
{ 0 N% D2 k: H5 [3 ]$ @+ B1 S. }3 ^
current_item = ecr_items.getItemByIndex(i); & ^2 i, G! I5 ]/ V* y, O
current_state = current_item.getProperty("state"); 8 P1 F! H7 Z5 i- O( F# z
swiTCh(current_state)
$ M- y2 x j$ P9 y { 6 k: U$ Y9 S1 C& o
case "New":6 G! i9 H6 P+ C6 ?2 ~' ~( X9 ?4 }/ ~
newCount++;
- x4 { w/ y' @9 n4 z1 [7 \ break;) a6 [% E" b8 j! M( e
case "Submitted":
3 n# i( ]; z" X$ w9 u submittedCount++;
4 d/ Z* u1 {0 {: p4 ? break; 5 e3 I i% Q1 W! R! e/ e! Q5 c
case "In Review":
4 r% P/ l5 f5 d- w& b. x7 L reviewedCount++;
' C Y: Y1 v' w' i: ^ break; , I" `, I: a* N
case "Released":
% E4 `9 F5 U" D. f releasedCount++; ' N! f5 [8 T( J; }* L( l0 c
break; . H; @ t- E& s# m0 T- [
case "Cancelled":
. P) Y: C; x6 ] cancelCount++;
* E( x& W4 q3 f% m$ m break; 2 ?) d$ j% |: b8 q
}; R/ T5 z+ z M: e5 v6 _
}
4 ]6 _2 ]* y. q- V7 l- s. xdocument.getElementById("MainDataForm").textNew.value=newCount;
' ]# v0 W* t$ L1 X+ G, gdocument.getElementById("MainDataForm").textSubmitted.value=submittedCount;
% h4 Y2 @* Z4 Z8 F) d1 vdocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;
) O* s2 n9 }7 N6 o$ w! G6 g3 Z* rdocument.getElementById("MainDataForm").textReleased.value=releasedCount;
( Q- l s2 n9 ~4 i: @) s4 Zdocument.getElementById("MainDataForm").textCancelled.value=cancelCount;
: u3 y0 n6 S( r9 Y9 Z, ldocument.getElementById("MainDataForm").textTotal.value=totalCount;; O$ ^/ P d, H% e
$ _/ ~$ @0 `) j6 D) I9 B" B
|
|