|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
' R6 t# H( v" z; R结果如下,点击Change Management标签,自动弹出统计界面
3 A% ~6 u1 z9 T8 L1 f' j0 c; M4 F$ B/ q6 N
" j9 y9 f# ]0 [2 u }7 R' g l. R. o+ ~- V2 j+ q1 D
: _2 l5 K: w$ a* d% B" w
% x4 }* R+ k4 y8 {0 Z, f(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名$ I2 D3 Q' Y0 T) M0 [/ _
+ a" @/ _5 K% B: `2 O
* ^7 {; j! i, C5 N" A# D(2)关联一个 on load的事件,使用 JavaScript 的方式6 k0 _: U0 b% F4 D0 b- L
, i& E1 @$ X0 P' D& p Y+ h4 @
7 }# j* Q8 a- }(3)对整个事件进行代码: z; T& }2 `6 {% s, ?8 H. y
' R. j0 E- c' H* D! N0 T: w
/ v0 O% V! t4 I* s# n
完成后即可看到相关效果。
/ N( [1 k: m& S) W! M+ \$ N2 L+ r4 u- Y- r& N7 D- X) u+ ]
代码如下:
, S1 b/ X. y/ }4 M% x& Q3 l2 p+ l# x( j/ D6 B! G6 O* i
//get the ECR Collection
8 W7 ]& U5 U4 p& S2 n5 `var newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;- \4 T6 z1 u, I% O; u3 O! M
var currentItem = null;# \4 q: A/ i9 U; m8 d
var currentState ="";
3 \' v- @4 p4 w8 H9 L7 Q( ivar innovator = aras.newIOMInnovator();! E N1 q) I; C6 x* N
var item = innovator.newItem("ECR","get");
, k! t. _! v2 u- [3 j, ]4 Iitem.setAttribute("select","state");
& U: ]7 @/ ?' Q* D* evar ecr_items = item.apply();
. ~, K) ~6 I! b0 N% }: Q. jvar totalCount = ecr_items.GetItemCount();
2 ^, y- F4 p# Z# b/ K; C9 Kfor( i=0; i<totalCount; i++) 4 `( T1 A* M% W9 |
{
6 E& i" u' K& X% Y current_item = ecr_items.getItemByIndex(i);
$ k" s1 e9 k6 D* k6 W current_state = current_item.getProperty("state");
# {4 C* t6 v5 U) Y% V" E8 N+ f& v swiTCh(current_state) " J% T9 m$ I7 v
{ : v# _2 ?$ C/ Z4 ?2 C. P
case "New":
: w* x3 n5 d3 ~ newCount++;' j: _! y0 \; d4 U ?$ |: }
break;6 D5 ~% r' y1 B. |7 @" ?
case "Submitted":
7 H. Q" P" L4 b+ P) { submittedCount++; / |: i) z& Q$ y2 m2 z
break; . I; i' a5 v9 M- [) y! L% U0 _0 J8 R
case "In Review":
$ x# J* d/ e5 Y- g. I! g+ i0 ~ reviewedCount++; ; T3 a# `, f, v
break;
3 v# A9 ]+ d5 P; @/ Z case "Released":
- q, R) t5 h. G! m0 L4 G releasedCount++; # F/ Q! s; z! _0 o2 A& c( e' T
break; & w- Z; K/ {' H9 |
case "Cancelled":
& f) Z/ A0 B% X cancelCount++;
4 C/ u/ a8 R/ O; S) d7 F5 n1 Y break;
8 G3 G2 H" D# ^6 h' r! h$ d1 n }
# ~2 I& m! \% g W- K) ?} ^& b0 s9 b9 S5 |. ?: b, C! I* g4 c: _
document.getElementById("MainDataForm").textNew.value=newCount;2 }; ]1 ?' {, M5 q I) E$ t
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;
! |( G5 t- ?6 q$ Y8 f( I! c, n# Vdocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;
4 N8 Y5 V3 g3 q( y1 t' wdocument.getElementById("MainDataForm").textReleased.value=releasedCount;
+ E8 k6 J0 U' v: a. _9 L! Odocument.getElementById("MainDataForm").textCancelled.value=cancelCount;
! _3 I1 X( A8 Q; `4 k4 K: Bdocument.getElementById("MainDataForm").textTotal.value=totalCount;5 J; z/ q: d7 E, F- a! Z
8 D1 e2 W, ?9 `0 c. r( K: u |
|