|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
$ |1 x' O4 z6 O7 L5 W结果如下,点击Change Management标签,自动弹出统计界面
) K; u C4 }* R+ B+ B8 }( g7 x" [" z
$ @1 N& B( }; k7 M
% E& _: R+ F2 m9 h: X3 z
+ p6 R* s D, v f
) ^: O# |" q/ b% q(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名/ s( o% }2 \+ j9 F
/ r! z9 ^1 ]1 S
$ R6 t4 Z6 _) [- k
(2)关联一个 on load的事件,使用 JavaScript 的方式
- f X9 r2 E5 E# p" _1 }: w
( F$ b/ p. y% d* m
9 O& e0 {! C# g- V1 p" Y/ i
(3)对整个事件进行代码9 a2 T3 b% ]: ], w7 p( W; d0 T+ @0 G
: J! G0 v( X) u9 z5 v2 H6 k. P
) W" N$ Z* K& B9 j" ]; [ H完成后即可看到相关效果。
( ]. F( p8 @6 D7 S$ ]) E D- e- V) I$ Y
代码如下:
: k; x5 f5 @- `. B* H( o' t: |
: ~6 d$ O P2 \" `0 h* }* k0 c" M//get the ECR Collection
! }6 K# b+ ^% a4 b" H! E! Dvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;# r, B' q! b" Y
var currentItem = null;
- N3 J. _4 H2 {% Y* [8 Zvar currentState ="";
. D0 i6 ?$ s: g& X9 r3 r6 lvar innovator = aras.newIOMInnovator();
/ `' S6 C; t: s: k) Kvar item = innovator.newItem("ECR","get");
3 A) B/ _! v/ R7 {% F% Zitem.setAttribute("select","state");; l; t# H% z) Y" U9 `. U
var ecr_items = item.apply();' F+ z( C# A7 x
var totalCount = ecr_items.GetItemCount();4 i; D# a T7 d3 l- m2 p7 Y3 g0 v
for( i=0; i<totalCount; i++) # D8 {: Y. [6 {+ G5 d
{ 6 P+ b' {' X; j0 x: g$ f6 O8 Q
current_item = ecr_items.getItemByIndex(i); 0 P$ L8 T/ [5 G6 p' _/ G
current_state = current_item.getProperty("state"); 0 X# `) G& c4 }- v2 A/ m5 L
swiTCh(current_state)
8 K! N) i1 j: A6 O5 \0 O' X {
- j1 A) `* E( o case "New":6 d- Y, O: M+ o; ~& c
newCount++;
( h6 ?* [( r; v' m- j @' U$ \4 h break;
& Q2 u* Z$ _1 H% Z9 X- o. q5 b case "Submitted":
; p9 M8 o" ^5 Z submittedCount++; ! t3 Y3 p* |( P# p) X( S# V
break;
U6 J; s2 Q4 S/ K case "In Review": ( Y1 o4 e; \% b- Y" X* ?5 U+ A
reviewedCount++;
' v8 B0 i) B7 H! r0 c break;
3 n4 w8 r; _7 l' e0 ^* ~/ [ case "Released": + f1 Z4 ~* f, Q5 c# X9 k
releasedCount++; / Q5 x4 X4 c! ^% c( S4 v O5 q5 F
break;
; ]; O" ?; O" U7 S+ ~8 N' W, d case "Cancelled":
) A' J- M. |5 k* q' W/ K# D( S& H+ M cancelCount++;
/ j8 O! q6 p$ Z& b% r+ D' ^ break;
0 S4 c& y0 S6 o$ }! O }
; k* r5 z( \& Y* n5 I8 {}$ d4 I+ @$ S( a3 Z
document.getElementById("MainDataForm").textNew.value=newCount;- g; D% W- d+ ]4 D4 Y) m- V+ ^
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;
! s3 L" u. j! |document.getElementById("MainDataForm").textReviewed.value=reviewedCount;8 S9 I! T0 E; j8 [& S
document.getElementById("MainDataForm").textReleased.value=releasedCount;
. E4 b! k% x5 `$ B. Hdocument.getElementById("MainDataForm").textCancelled.value=cancelCount;
! t6 W( U& R/ L8 g2 _- Zdocument.getElementById("MainDataForm").textTotal.value=totalCount;
5 \& ]0 G2 l1 J. T6 p
4 G6 ~3 D( A' L7 w. w" B$ N |
|