|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示+ b, K: Z, h- h) |6 u- l
结果如下,点击Change Management标签,自动弹出统计界面- ~3 d; R0 }# C2 v* `- _: i U$ e# m: [
, w, S& r4 J; s* p3 t4 z
+ i& r, x8 k: g( |8 l3 b8 D6 J
0 w, u( i6 y3 r: p0 u1 V Q, L0 {5 G# K) g1 q
* B$ S/ X( g% O8 I(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名2 B0 ]. R- o& F$ b: B* q
$ O G) g5 T. p4 q6 C% `
4 A' U+ v/ H4 c# Z- Z8 o/ [(2)关联一个 on load的事件,使用 JavaScript 的方式
; m( y3 R3 e/ e6 W
* }$ i8 H: v$ C5 ~8 `' f6 o1 ^
3 t$ {9 P5 |' U' f2 k+ K5 W(3)对整个事件进行代码
* X5 e" y- p- h, R' D
; n6 y% V( g5 a9 \9 k: ~2 [8 R4 }
3 ?3 `( D9 Q/ D. {% ~* D, j! f1 Q2 z
完成后即可看到相关效果。7 g2 H1 y2 T, _: ]" L+ E; O
4 f' R) f' x: {" v/ L- J
代码如下:
* t. N# J% N2 `3 V, Z
8 e/ W7 r8 @4 d//get the ECR Collection
. ~0 z6 y; g! L# o; R5 qvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;( O$ f' l4 J% u F2 z4 D5 v" u/ O
var currentItem = null;
+ O1 x4 ], ^$ _! Hvar currentState ="";- C) p/ E: P4 `" d, d$ K
var innovator = aras.newIOMInnovator();
' G" L0 y- K1 @8 Jvar item = innovator.newItem("ECR","get");
1 W1 V( ?( E& w2 j3 v6 Titem.setAttribute("select","state");
) ]% B1 T! {/ Fvar ecr_items = item.apply();5 t& j+ ]7 j5 d- C' p
var totalCount = ecr_items.GetItemCount();* i% P5 q/ s) @- `0 U0 m/ p
for( i=0; i<totalCount; i++) ) H) B2 ^4 u9 H9 S% d
{ . q7 j& g& ]) r' L' p
current_item = ecr_items.getItemByIndex(i); ! |" K% i; S9 B) [/ O% e1 z
current_state = current_item.getProperty("state"); ( b5 S1 R/ K1 P" Z/ i6 g5 Y
swiTCh(current_state)
# E1 _$ s. I# ^ { 3 \, t2 H2 R1 t, s$ K
case "New":9 x" o7 a8 A& F* W' c! O
newCount++;
% p) Q) S/ \- Y break;7 j' [4 {! C: e& X* a% S
case "Submitted":
/ ?6 H, M+ o: |0 k' | B8 }' D( ^ submittedCount++; / T& u; K4 v- t, C2 u
break; ' P# Q2 Y' w- i) Q* o( ^
case "In Review":
) `3 d$ z: ?1 ]& B- D" Y reviewedCount++;
: u1 c# W$ I. s7 a9 g1 }. X; V break; $ ^" i( t W$ E3 a
case "Released":
- N# P; T+ C) x releasedCount++;
- |5 X, k( v5 h+ [ break; # r) I* x. l7 O* q" T0 P
case "Cancelled":
" h. Y% u+ }& i1 g cancelCount++;
" y. N/ t$ a7 |6 B) V break;
1 G6 k d: U! p. k% u6 Y* a }
+ m: _8 p1 }: E- `6 V# q8 ]2 y}( {( ^9 j* x" U1 `! e/ C
document.getElementById("MainDataForm").textNew.value=newCount;& f& T" t2 A2 q/ C# W
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;; P m, e! q8 y7 n( T$ N
document.getElementById("MainDataForm").textReviewed.value=reviewedCount;( A# _$ h- {, g. {$ k0 l
document.getElementById("MainDataForm").textReleased.value=releasedCount;
! R7 R0 J# H6 @- T- g6 xdocument.getElementById("MainDataForm").textCancelled.value=cancelCount;
# V0 t# L0 s5 P0 ^document.getElementById("MainDataForm").textTotal.value=totalCount;3 u% m( g! l1 R! _9 v3 r$ {/ w
" ^: j1 D0 ?; P) p: F6 y
|
|