|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
$ B( H1 @7 S8 A2 S& z6 M: i4 I结果如下,点击Change Management标签,自动弹出统计界面1 d5 d& ]& u" y
* A O# {9 n. y: {9 o, {
; V+ ?' ], I( ]/ h5 H/ I% C. h4 Q
0 Z6 s* Q" i' z* n% i& ]1 y9 A7 H9 `1 ~% T
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名. u$ ~, x' {4 Y1 p+ j: O% F7 {
) i2 W5 n5 m+ R5 z
9 e+ h. N' u+ d& L(2)关联一个 on load的事件,使用 JavaScript 的方式. B% p. Z1 G4 f. ^
) e, l: {7 ?$ h% M$ F1 N0 T: M; _' y# e4 g6 l
(3)对整个事件进行代码. t0 N. T5 u& t" l/ S
. G, K Z' U! U* ?* w
: b' h# @1 V, O2 G完成后即可看到相关效果。: Z7 t" r/ a; e. b0 Y( c, ?
0 G- m& ?/ a) ]2 }代码如下:& V0 j/ G! m/ [! w' Q1 x Q
+ R+ r q4 E t9 D! v2 }$ w
//get the ECR Collection
6 L: { ]; x. D6 A# e3 cvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;6 _: A* z) k. r8 E
var currentItem = null;
& D) B! x7 X3 {. e' V, Zvar currentState ="";
* E( X* x- J9 c, G& Uvar innovator = aras.newIOMInnovator();
) S3 k" X W c; W$ O- Q8 _var item = innovator.newItem("ECR","get");% g* c6 ^# y3 u0 S$ q
item.setAttribute("select","state");
' X% V* X/ [+ }, G! t5 F) wvar ecr_items = item.apply();* }8 t/ F- J! R8 ~
var totalCount = ecr_items.GetItemCount();
( R$ J2 T# \4 L! Tfor( i=0; i<totalCount; i++)
! z' j! L/ u1 Z: e3 T# M c: H6 Y{ ) T/ D* W- N7 H
current_item = ecr_items.getItemByIndex(i);
5 F7 [5 |; _) o( e/ T current_state = current_item.getProperty("state"); " y. p7 r/ V5 ~7 _3 d& @
swiTCh(current_state)
; F7 `/ Y5 u r+ ^: }& \. j! r {
1 f& l& i& J& q2 H$ I case "New":
4 [ i8 s( M* g5 o$ V newCount++;
! f7 @9 T* ~3 |) n! w2 J' f& @ break;
/ v4 M C6 f4 d. y case "Submitted":
1 z# ^0 ]3 u% c# A submittedCount++;
8 i7 I* z/ S2 N8 y" I8 p. q4 E break; " S7 B! k4 D! C0 q9 P) [1 n* _
case "In Review": # i3 e, A9 j. p+ j+ S7 ~" e z
reviewedCount++;
0 U1 P$ E6 g( y0 j, w6 E7 @ break; 8 _. t- O7 e5 A7 o# h4 q
case "Released": , z, h4 _: }) d: D' @/ K
releasedCount++;
! Z) i: B7 v4 _# k% a4 Q' B break; , }, W' ^, Z6 @8 f
case "Cancelled":
! a0 h2 S7 h7 j! `% n cancelCount++;
% i9 x, g+ P( [9 H4 y% \4 P break; ; ]1 B( K: G3 y x" D: G
}5 g4 {: g" Y: ?& ~) t
}0 S* N2 K4 t- w5 j [3 @- g1 _1 K
document.getElementById("MainDataForm").textNew.value=newCount;
) G7 W* X( L' ?. h& ndocument.getElementById("MainDataForm").textSubmitted.value=submittedCount;
0 C k0 c% w$ o/ g$ u% S8 Udocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;$ I, U7 \# m/ Y, W
document.getElementById("MainDataForm").textReleased.value=releasedCount;# ~' X2 C' k! [, y( H' a
document.getElementById("MainDataForm").textCancelled.value=cancelCount;
: N+ {2 U) r! l6 f5 X/ L) ]' Mdocument.getElementById("MainDataForm").textTotal.value=totalCount;
" ^9 \7 C! T) s. @
! ?: m7 S9 k3 L |
|