|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
0 x( H; |; q1 V/ W2 ~' x9 a结果如下,点击Change Management标签,自动弹出统计界面
9 ^6 c$ D1 P" I1 a5 u% Y
+ V! A+ B, Y4 w% c* m3 K
3 y8 d- u3 M4 s; m+ w
$ k0 C0 D3 o( D+ C* r
( }4 Q+ P! F' ^; T) Q; ^. p0 c) y- I g/ f, k4 y/ m# g( _( H9 [1 |
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名/ F/ E) d& W- D+ i* w+ G) b* k1 }0 x
6 P; B6 N. \& L9 D, H4 d
5 O( G: o3 i% f1 l5 U9 h3 M(2)关联一个 on load的事件,使用 JavaScript 的方式
1 C+ r* S5 B& j9 f6 [! U5 ^& D) Z
! S. q4 F5 A, S4 f; s
! c' e& s* i/ i0 Z1 e. z% `
(3)对整个事件进行代码
- f2 p8 T- d, P* I" y6 m+ H
! d/ e( b/ A" v4 O' C" I$ w* O; b. h9 A5 J* D
完成后即可看到相关效果。
" V5 x8 p; c* L/ @# ]' v% ^. u
% h2 I: Q8 K3 O% |9 n代码如下:
) U/ b* z: l/ ~' }: s+ t( D( G' y$ P$ ^
//get the ECR Collection
, h% ^1 R; W% p8 G9 Xvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;
! n! S/ R( u- y8 ivar currentItem = null;
: P% |# a, Q2 W% L( Gvar currentState ="";
4 v0 x; t1 C. _3 h( Nvar innovator = aras.newIOMInnovator();8 U4 P& U1 |" x' M+ M
var item = innovator.newItem("ECR","get");$ Q5 d/ `: w; l; y n8 c
item.setAttribute("select","state");& R6 W2 y- ?6 L" ~
var ecr_items = item.apply();
z: A( K t% Q" t! I6 tvar totalCount = ecr_items.GetItemCount();
6 P k3 ~' Z, T' w: N3 t b" Ffor( i=0; i<totalCount; i++) ' H3 g+ o5 ^0 k1 h" b7 V: ^% p
{ . S1 I0 j% d0 X
current_item = ecr_items.getItemByIndex(i);
( n) U* \4 H5 {. |$ ~ current_state = current_item.getProperty("state");
% r( q# O/ W3 w$ G" v( @ swiTCh(current_state)
! P! ]: ]7 W' W8 J* ^ {
I' U. H0 `+ J0 W case "New":6 m! |: c& u2 F2 m4 \
newCount++;
. `6 L/ ~. C5 B/ F break;5 O4 x3 s1 J j! p
case "Submitted":
. I6 t: T# i8 ~6 s/ | submittedCount++;
& z" A( K1 h6 v% c+ `& J break; ! V- Z) O# v# R _! V
case "In Review":
/ J4 g" I% r8 T5 W" d reviewedCount++;
4 R8 N! L) r/ B; e break;
, B0 `: @: n, i& `. K8 q2 T4 ? case "Released":
! w# Y; X* t$ `. @0 L! a8 V releasedCount++; 1 l" B6 X: u& O. K3 L$ N
break;
0 c* H7 c8 S5 M8 }! j case "Cancelled":
2 o# M$ ^# `9 f/ b+ @2 i cancelCount++; $ d4 X6 l: @- g$ I* J- [% q
break;
7 M6 x9 G. @" o. C( w }
; J/ H+ A$ k* x}
4 K* n3 H% l) Ddocument.getElementById("MainDataForm").textNew.value=newCount;6 ~3 H( A+ M- b# v- e* C: ~ U
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;
1 \/ a3 B) M' C5 mdocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;! s& p7 v/ `: J' H$ A$ g
document.getElementById("MainDataForm").textReleased.value=releasedCount; _" h* [- `# S' W' t
document.getElementById("MainDataForm").textCancelled.value=cancelCount;
, m Q+ r; x" n8 pdocument.getElementById("MainDataForm").textTotal.value=totalCount;
" B' H- `; ~, ]3 k& }1 m6 n$ l. }1 L& @% Z
|
|