|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示7 X2 d* K* }0 O7 D( W4 m
结果如下,点击Change Management标签,自动弹出统计界面9 B. ~% F/ K# k& P7 [
) Y5 r1 `6 n' F6 }$ l5 J
( e& e7 B) F8 U$ {* f [) ^; g( `' z H" _( P) W$ O# e, P. ?
+ I3 F( Q( G: @! c
( p- K, y4 L9 {, |- p(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名" v8 X7 C7 Y7 A( G" i5 @$ C. i8 Y
! w+ `+ y1 I7 z! P3 \# R
. r5 J2 a6 H- i5 e7 a6 Y
(2)关联一个 on load的事件,使用 JavaScript 的方式- v' U5 l: v4 i2 ?; y# `) i
9 b( q6 _- ~8 D% {4 ^- Z
% c7 R) i5 u) ^. I1 a9 G! E(3)对整个事件进行代码
0 ]+ K; U; x3 L* ]6 @- n) ~
3 F3 X7 j- ]# j( U0 v
1 o5 Z& w9 v o- ~) `完成后即可看到相关效果。: c: b Z" a0 I8 E) J: P" R* k7 ?
# M8 S- f+ \ _( R7 D0 w+ F# q1 ]7 z1 i4 h代码如下:
' v( Y) G8 g. h" C
9 o$ Z6 W5 Z. ]9 L/ E4 A//get the ECR Collection
2 l! N5 L% r( V. V9 i, h' Hvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;; }+ N; S$ q5 T. _( C
var currentItem = null;' t- n3 e7 v- ~; w% I" Y
var currentState ="";
' E# J6 s' {- Tvar innovator = aras.newIOMInnovator();
( ^' N0 K- D5 {/ ^9 f5 M/ c* Gvar item = innovator.newItem("ECR","get");
" n; {3 G+ d3 J; Vitem.setAttribute("select","state");
+ j' }( u0 P5 C. o8 h; L8 d( lvar ecr_items = item.apply();. q* M6 g/ X) F- ]5 d' q
var totalCount = ecr_items.GetItemCount();: I1 ?/ {' A& {7 I
for( i=0; i<totalCount; i++)
. \9 k% D, J8 E* ?{
/ I1 T- u# |% x8 {: g8 ] current_item = ecr_items.getItemByIndex(i);
6 a0 N- l& a7 o( @! A* h' r current_state = current_item.getProperty("state"); 3 s! M5 i/ F5 B, b
swiTCh(current_state)
! \1 F3 [/ S3 B" E# H* i5 B { - T8 W/ C/ A2 c) b; A
case "New":7 t W, p1 R1 r% t
newCount++;
$ `) }" `7 y/ w* y3 K9 ?8 L break;
% a% ?; j' L" ]2 x case "Submitted":
) w. Z, }/ X/ S1 R4 z& z! R submittedCount++;
, p' _0 C$ Q0 D1 ^ \* G" q break; " y2 ~# O5 x& a1 V8 V# X, W4 Q
case "In Review": , g. p1 l8 I+ E1 T1 \ F' g& n
reviewedCount++;
, K$ x5 T& n0 x$ p; | break;
7 n6 P( ]* c# `& T2 ]* `! p5 H/ t case "Released":
6 a2 N3 a$ J, c: x releasedCount++; + P1 B6 |3 R* J3 U$ _
break; 9 c s1 d& \# P, w. V6 j
case "Cancelled": 0 n* D0 E0 g0 Z4 S' z7 @, p
cancelCount++; 2 k+ I1 o" j* Y7 z5 j7 F( f
break;
8 v/ J7 a. O* {5 P4 t6 s3 r/ A }
( i% H/ T& N& j `}
. z, q" U/ X/ ^3 K0 l2 U& Rdocument.getElementById("MainDataForm").textNew.value=newCount;& U1 _ i; U# J/ v p/ L1 H
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;* p4 |9 }: e' l% j; g4 r
document.getElementById("MainDataForm").textReviewed.value=reviewedCount;6 Y% M* Z0 l* C' V2 s2 I \$ j
document.getElementById("MainDataForm").textReleased.value=releasedCount;( u; F6 h7 J: `
document.getElementById("MainDataForm").textCancelled.value=cancelCount;
+ s; d8 f* \: e% Q% w# adocument.getElementById("MainDataForm").textTotal.value=totalCount;
1 }8 c$ t& x3 D; t. v, G
8 F% G; G+ d( y6 ]) F2 h |
|