|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示* E8 P/ ~) J$ n% R" l- V; C
结果如下,点击Change Management标签,自动弹出统计界面8 w; j1 g/ \4 |3 ?) s: f
4 H7 }) t/ p, R2 z
5 I2 R" \! z" {- G8 t) i0 ?& L
3 T/ ] C# O- _, V, F( H, G3 o1 G. U' q4 Y! d2 D. Y/ | ^
. g% d A# R1 m$ a3 D7 ?
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名0 A3 P8 X- M/ E: ]. c+ H5 k3 C' e
/ @1 h- k& a! W
5 U% x$ W6 d( Q2 Z
(2)关联一个 on load的事件,使用 JavaScript 的方式7 U/ W5 b1 ]( Y( }
4 `7 ?* i% W" A
6 J9 l7 p P' r' Q$ K& L(3)对整个事件进行代码, Q& z1 p* @0 R/ o/ H7 @: l# C
+ N1 t. ^6 _- J5 P
M$ N+ i8 T9 H+ c* ^4 J6 p5 x3 {, H
完成后即可看到相关效果。
6 b7 d5 n o) m5 j5 r' o7 O4 b1 h- u
代码如下:2 l, a. u4 i- Y
& ?1 j" L" i$ m5 j3 @) W1 d//get the ECR Collection
, p0 g* B/ r/ c Jvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;2 L H7 Q& o$ k& {& Z+ P
var currentItem = null;# L+ o! d7 X& R) Z
var currentState ="";
+ G7 I% S! I7 b" k9 n1 w% mvar innovator = aras.newIOMInnovator();
* a9 P4 D8 F. {. L. O: D4 O0 w& Svar item = innovator.newItem("ECR","get");: \+ w' p8 D6 c% _4 j$ q7 f2 f
item.setAttribute("select","state");& K R3 ]' F) E
var ecr_items = item.apply();1 S$ A5 M7 o. n/ C& L
var totalCount = ecr_items.GetItemCount();9 u3 Y: X. d5 }1 n l7 Y
for( i=0; i<totalCount; i++) 5 f2 O% N' b% |# S9 F4 V
{ / N& L6 p: Y( `% u% `8 H. l" ?
current_item = ecr_items.getItemByIndex(i); / v& g5 b4 U! ?; x
current_state = current_item.getProperty("state"); 5 r- [# y7 @3 m
swiTCh(current_state) ! p9 f/ f' b0 X K7 X; A1 H
{ ' N, Z9 L1 [- M* m0 F% J0 r
case "New":
& D5 l- d& R2 G% w( c V" ~. X newCount++;
6 r. ?) x. t2 b# |3 r$ c$ h) O break;7 k9 P; u+ }* F7 L
case "Submitted": 4 w; ]! Q+ n& P* A5 c! K
submittedCount++; ! Q/ l! \- m' s, E! Y1 z$ m9 u0 C8 Y
break; 7 X0 T6 O- e2 D$ R4 P
case "In Review":
2 P, e9 p7 b/ `- u reviewedCount++; 4 O5 T( c1 y" z4 Z! f2 e+ P, T
break;
: x3 w: ~! {* R6 S8 C A5 n case "Released": }) N9 G' c/ F: P0 V0 [' K- W" R
releasedCount++;
9 Z8 s: P8 Q/ a* F" I r break; 1 _7 ^8 L5 Z% A& m
case "Cancelled":
7 K/ ~) y4 k4 c2 |9 ^8 @8 h cancelCount++;
& n, _2 Q, Z( V% H, E7 G break;
: F5 Z7 ^% q* `6 k }
4 V9 ~- L& k4 Y}. l" N1 A- b% b2 @! g2 x5 a
document.getElementById("MainDataForm").textNew.value=newCount;
, D& b( U1 y9 M+ y8 a$ D+ W& qdocument.getElementById("MainDataForm").textSubmitted.value=submittedCount;
! B. f' H# K# K+ G" v: b1 rdocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;* R( Y6 m* N1 T
document.getElementById("MainDataForm").textReleased.value=releasedCount;. L2 B6 y: U y+ e! x. D% k' ]% w
document.getElementById("MainDataForm").textCancelled.value=cancelCount;
2 U% J# Y J+ Q& w1 O6 B& G( Sdocument.getElementById("MainDataForm").textTotal.value=totalCount;
0 s9 _, ^5 `1 z+ |9 k) p3 m8 i1 w/ W& A6 v9 H' y! l7 s# ]
|
|