|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示 E, Z8 }3 i/ o/ X3 ~+ r
结果如下,点击Change Management标签,自动弹出统计界面* o: k5 L0 N) } w9 k1 F$ a& e7 a& r
( B9 \: ^, {/ \" x8 i+ ^
+ Q$ J% m2 D7 J+ [ h% S; w4 ?9 s6 n! J3 Q# B
0 v/ W) \- L! ?
; u6 n. c" @) i
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名) Q! [. _2 |8 G
2 @( C; I0 K* I' ?/ F* u( g7 D
% I1 d, q4 `. ?8 P(2)关联一个 on load的事件,使用 JavaScript 的方式5 k N% U) B/ W3 t' j
" B: E$ F1 ^4 u- e; ]$ m% Q
. X9 F! _* v$ R2 E7 K* F; V(3)对整个事件进行代码
' U; o. b W- O6 @
# o9 ?6 b8 X4 ?/ l* w2 R9 X5 |5 l/ \
完成后即可看到相关效果。$ ^, \1 {2 ^2 P3 U5 Q, w
' |: J- u% n' q" t- b& e+ N
代码如下:" m' a S' N! _* j x
( B5 H. H% {' {0 z( ~2 ^//get the ECR Collection
4 E" D. q4 y5 h3 B h& ^var newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;
/ n9 p+ f+ \2 [7 }8 `+ X: a8 Bvar currentItem = null;4 t- Y9 \& Z% e! x5 Q5 P$ B' ]) ]% t; p
var currentState ="";3 I4 O2 j5 R. s D- U
var innovator = aras.newIOMInnovator();
1 @' F9 {4 \' Fvar item = innovator.newItem("ECR","get");# s1 p, z# j" o
item.setAttribute("select","state");1 \1 l2 x1 {# F
var ecr_items = item.apply();
# e4 W F E4 M/ q3 Gvar totalCount = ecr_items.GetItemCount();
9 E/ l# q/ m: kfor( i=0; i<totalCount; i++) # V9 e0 W: P- ? J( B) {
{
9 ]! D( K- S5 R p% s H3 d current_item = ecr_items.getItemByIndex(i); 4 P- F' c; [; @" {1 [
current_state = current_item.getProperty("state");
! K6 B, j( q2 | h c$ _2 V8 K; P swiTCh(current_state) ; F- t' t R6 v# }' j& X
{
- e6 t1 E+ y A: E case "New":7 B, Q. p& W1 x; `5 ] m
newCount++;
1 n J% U7 |& ~/ E. L' i break;8 `5 o9 m- r$ `" e
case "Submitted": $ ^1 j/ T( Z. l. ^3 h
submittedCount++; : A( }$ U2 n1 Z+ F* z, g' ~! U
break; / h' t$ ?2 i, E4 m( N9 H! E! w' z
case "In Review": + u$ U7 N' N' J/ Z' P7 z" V6 O. l
reviewedCount++; 6 q! }5 X X, Y( _1 ^' I Z. X
break; ) h# ?7 c1 k- P3 z( Y
case "Released":
+ i. r1 N/ X& m# m( ~ releasedCount++;
( ?, c; C( h: ?8 F* n, I break;
* ^( j. X% n( F# G" I( \ case "Cancelled":
3 n. [8 g. Q6 v: C cancelCount++;
& x9 r& z+ P3 ^. c' A: r break; ; U; }) G \+ e( T) u- l
}
0 o- A5 l s6 a0 g, {' J2 t}
' e7 v- ]' |4 |1 v' {7 G7 o# Rdocument.getElementById("MainDataForm").textNew.value=newCount; e+ a- d, T4 Z( E4 f' {
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;/ [0 K, o3 F2 e! q
document.getElementById("MainDataForm").textReviewed.value=reviewedCount;
( O$ v) A8 @- Jdocument.getElementById("MainDataForm").textReleased.value=releasedCount;3 K( Z( y' q; x' W2 X9 P( g
document.getElementById("MainDataForm").textCancelled.value=cancelCount;+ n/ _: }1 \( H8 X( k2 {0 c" V
document.getElementById("MainDataForm").textTotal.value=totalCount;
; A% `: ^ @5 R( y# R: o4 S" O" b U: G: G, Y
|
|