|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
: ~2 p4 l t) @/ }+ F结果如下,点击Change Management标签,自动弹出统计界面( R( O% [# n L* ]4 p3 r$ V
- n4 a% C# q, b3 G# O \
' j( i5 {; E0 [2 ~# f
; F, j: E X- P# n9 [& k
% ]0 [. M+ C* h+ |6 N) c- P0 |( T. [* S; _5 ]$ u* n c" I' K
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名
1 @+ i& ~' m( E: ?: D+ t
# T/ h8 Z. Q8 e+ I9 r8 g
@1 E n# V: w; L! s# ~(2)关联一个 on load的事件,使用 JavaScript 的方式; |/ b6 F4 f A- c( c8 f2 g& y2 o
+ S) f9 \ z! n3 E
5 \; o4 m1 ^ e3 @(3)对整个事件进行代码5 P, v9 s) P- U n! l9 y6 f
. B+ k# i; a: y/ h
7 P( f, K7 k) G/ ` H完成后即可看到相关效果。
3 W5 J) [ v# `& ]
( l$ x8 \* z( t; r! [ R代码如下:$ b" K3 n2 H* X
( p [! [- C$ ^//get the ECR Collection
# A1 C9 `% V z; `2 jvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;
: I' \: E# g7 S3 G% Uvar currentItem = null;
! ~$ x ?, s9 r, \: k- ~var currentState ="";
, H$ ` Q! Z+ J& E9 n tvar innovator = aras.newIOMInnovator();
, m. U% c6 ^5 ]) Avar item = innovator.newItem("ECR","get");
6 N% i: X, G' V( [- }' q u& g! v$ litem.setAttribute("select","state");
8 j \, t" w* A; yvar ecr_items = item.apply();
/ J0 H! P4 D3 nvar totalCount = ecr_items.GetItemCount();- w% {0 }. l6 I% q. M
for( i=0; i<totalCount; i++)
0 v3 I" W. @; w- \- j/ N/ j{ 5 V5 j* U0 c; J2 b) ]* V1 Y) C
current_item = ecr_items.getItemByIndex(i);
) f. J7 n1 A% W3 {( ]) b8 c( G' ^ current_state = current_item.getProperty("state"); % g3 J0 c7 n4 o/ }0 z4 T
swiTCh(current_state) 6 g, s6 ^7 E& n" D, d* w; _6 \
{
, g# o( E" g2 h4 f case "New":
) A; |5 r' J- \1 l newCount++; `# a6 M3 g R; S7 r s
break;/ |% ~7 E5 u( _" _$ r, g9 x j
case "Submitted": 3 ]2 P' C! E5 c/ b4 T
submittedCount++;
& P7 y7 W; n% p) v( E/ z2 U break;
! r- V; M( j) y case "In Review":
0 h- l; ^+ _6 X: W# T* U; Q4 r reviewedCount++; 3 m1 J$ j5 @4 ?1 A5 I4 T, t/ R
break;
% m$ I. }, m$ I* Y7 z case "Released": ; @& _. D8 Y1 Z: z0 X
releasedCount++;
/ D0 `( c% L0 K' d: P6 ~ break; % F! w3 \! l! t7 h7 i+ V1 w6 s
case "Cancelled": . j, B- H; D/ K3 l6 m* E9 J D
cancelCount++; 5 j' f2 T6 T0 e
break; * U% `; I) V* K0 A$ c3 O3 B
}+ D/ h; J- t) T$ j# _6 g, H
}; u2 g& _7 J2 u$ X" O
document.getElementById("MainDataForm").textNew.value=newCount;% P; L6 `$ n' C) N- |
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;, q" H1 g0 g* K9 G
document.getElementById("MainDataForm").textReviewed.value=reviewedCount;# m7 t$ a& X7 l$ W+ A3 ~6 Q
document.getElementById("MainDataForm").textReleased.value=releasedCount;) u: J8 i7 I# d: v2 ~% i' a
document.getElementById("MainDataForm").textCancelled.value=cancelCount;6 P3 C6 k' Z: o$ `' ?$ U" j& h! c
document.getElementById("MainDataForm").textTotal.value=totalCount;6 _2 A: Y: f H& b6 C! a; M/ J1 _& h
& C9 ^6 q% f+ e$ ^0 k
|
|