|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
! \' r, [- ]/ Z) d, c" U结果如下,点击Change Management标签,自动弹出统计界面5 ^1 s5 t( B2 O) l! P& c
~3 e* M1 p! u* _ y9 l6 Z4 a$ b- r" i
! @8 i, Z$ h# p6 M, l: o! Q9 {" \3 I4 G& }( w
9 q1 o+ h/ n# ~9 I/ z. X0 w+ f- n: R; e$ v1 g6 n4 d* L. M4 h
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名
' l5 }8 [6 b5 I3 [$ @& h2 c0 W0 d' S# ]1 G: } M
; e5 H M$ j; e" j(2)关联一个 on load的事件,使用 JavaScript 的方式
6 L1 h4 T% J0 _
& m! q! W9 f( c9 k
0 M5 \6 j3 y# d& o! f+ S! ]. X; ?# \9 C% a(3)对整个事件进行代码# F; M' u. V B( y0 L* A; L
+ K/ Y4 ], B- j1 B
* B0 D" F$ M( b2 K( l, p' v完成后即可看到相关效果。
' h8 r9 [. Y {2 a1 o- F. P {! U- J/ u
代码如下:
- n, D. z. n, m1 I! {0 P- T* z
+ @# ], ^6 K! ^/ C" G0 Q! X; v9 I//get the ECR Collection" p, P8 I3 p- m& Q( u
var newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;1 ]7 g0 q7 I7 R
var currentItem = null;
) a6 K# Y/ F5 J6 W Nvar currentState ="";1 x8 n0 I+ @# N7 d0 X+ t" t. g" a. O+ D' t
var innovator = aras.newIOMInnovator();) @3 E& d) g a; L
var item = innovator.newItem("ECR","get");7 y J4 q! m; @! o
item.setAttribute("select","state");
5 L6 @' `4 R3 p$ u% [( c& N, bvar ecr_items = item.apply();
8 y8 v1 N/ }; m) p! q7 w _var totalCount = ecr_items.GetItemCount();4 r3 o- l, Y* t1 V9 @# I
for( i=0; i<totalCount; i++)
- S6 p8 B/ o9 B- n& k) f# \{
8 T/ C* F0 Z' Y6 v current_item = ecr_items.getItemByIndex(i);
: Q6 @; ?4 Y5 n. x current_state = current_item.getProperty("state"); 8 ^' g0 E; i' e5 ]! ]5 R' h0 N
swiTCh(current_state) 5 ~6 y9 R: c: n4 V
{ 3 @1 ]& m$ y5 |4 U8 G3 s# t! M8 d
case "New":8 V" d& W; o4 s1 ?6 Y2 C: Q+ K
newCount++;
+ R7 v$ R3 k$ K, B* |( F; g1 B break;- g7 n1 o, z: P$ N0 O
case "Submitted": 1 ?" t% E: v) w7 J @
submittedCount++; ( s4 h! Z; D" U4 V
break;
. I, c$ K3 H* X3 V2 G/ |8 l4 A1 f* C case "In Review":
4 h/ Y5 O$ h5 O/ w4 ^- Z2 q reviewedCount++; ( ^0 `* h7 x! L9 b+ ?4 h% \. x. f2 r8 m
break; 6 V3 @ M, W* |! J. \& r7 @
case "Released":
! x5 @3 j' E6 G releasedCount++;
; E2 ~+ x9 v+ y) P; J, w break;
+ J- U# q1 q4 F6 h/ _' E case "Cancelled": 3 V, [" a" ?2 I$ a
cancelCount++;
4 _4 L" p) s6 x5 h8 U: Y6 o2 ^$ C break;
+ k1 f1 `5 r5 k( k6 N }
y5 i, I- o P7 S: L& H}, s( n8 ]7 ^4 E" ~ k2 L
document.getElementById("MainDataForm").textNew.value=newCount;
* L5 D# n9 U+ |# ^, adocument.getElementById("MainDataForm").textSubmitted.value=submittedCount;
! i" s9 x2 l1 l \1 G ]document.getElementById("MainDataForm").textReviewed.value=reviewedCount;
! e& q- L# s! R! Jdocument.getElementById("MainDataForm").textReleased.value=releasedCount;
8 _7 j. ^0 l7 C3 ddocument.getElementById("MainDataForm").textCancelled.value=cancelCount;
* [9 \9 r1 c, ]1 C k- Odocument.getElementById("MainDataForm").textTotal.value=totalCount;9 }3 T/ E' B9 Y( U
5 B, D$ E$ f% Y) }8 T |
|