|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
) r. j2 f: [& k8 j结果如下,点击Change Management标签,自动弹出统计界面. c) v) z& j3 t! v7 e
2 A3 c, O, h( t6 H1 i
7 }/ }: c+ j5 R0 U5 c' }5 H: i6 m: S
! k' z. u5 V) d% A' H
. D( C2 _) B& O' @% j
, P4 ?6 @ ^' E+ j: d* Y
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名" w$ e' M' n& r! a; Q
2 g6 ~/ f9 Z" [- O: R. _
: [! \5 \ ?9 J: w
(2)关联一个 on load的事件,使用 JavaScript 的方式
; D; |3 ?2 y* l8 ^7 ^, Z
; }/ G5 p' m# G8 g9 N' R2 u9 B. A
$ |7 F/ F6 _0 u- [(3)对整个事件进行代码
7 ` r/ ?$ Y- S5 u9 r* T$ p
/ e {' G4 U: h( ?) C e G0 t
/ e, s5 z( {1 l* T7 e
完成后即可看到相关效果。$ ?' {4 z7 H: s4 `2 F( E! h! [/ P
0 e, J. y1 ?* Z9 o( F& |$ _) W- c
代码如下:
# r: _* K$ v- O8 @( ?
% r, H. Y: ]! f; J7 W//get the ECR Collection
7 D3 K6 R4 {2 R3 V7 lvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;3 n4 `6 y8 o( R' ?
var currentItem = null;
( s& j" {) _3 @% Z5 h- @1 n7 \9 nvar currentState ="";- H' B2 ?! Y- o" s- j- a6 g L
var innovator = aras.newIOMInnovator();
! _& D( z7 ~/ j ~var item = innovator.newItem("ECR","get");# S a% c* w1 Y4 k, ~
item.setAttribute("select","state");
. V7 J0 t# v5 B7 y6 Tvar ecr_items = item.apply();1 S+ o$ h2 ]! ~' S1 [7 T7 {5 x' Z
var totalCount = ecr_items.GetItemCount();
3 A1 Y& W8 x2 `7 j, h1 U# zfor( i=0; i<totalCount; i++) 1 _6 E& b( K: t' [$ }
{ . |$ J7 W6 m, ~
current_item = ecr_items.getItemByIndex(i); ; B# X# m1 x- i% i6 @# y5 o/ y
current_state = current_item.getProperty("state");
, W0 ]7 n0 y- |; h' C swiTCh(current_state)
2 c& T; L$ R: j% A { ! S# \9 e" F1 m; B/ {
case "New":$ |$ V7 G% @3 D/ h7 w1 Y
newCount++;
9 n' D+ p, a% l, ^" B1 a' d" O break;: T/ z @' e7 }+ j; e
case "Submitted":
/ {9 Y% U8 k, \" y submittedCount++;
) E0 \8 r' Y9 {4 W2 ]( \ break; ! Z- @9 U- h! I! Y- B/ Z' X
case "In Review":
4 ], v8 G, D+ U reviewedCount++; ! ^3 w7 I' f( R6 I/ a- r
break; + l& u) B. w# i9 [
case "Released": ! B1 a. p6 I$ {2 B& a" n. k g
releasedCount++;
4 w, \7 v3 _7 I6 C break;
- ]- T3 R% e7 `2 x) k* G case "Cancelled": + q( O7 G6 |+ B: L- N6 _8 `% v W1 a2 e
cancelCount++; 6 \3 |# e& u( I9 ~2 L+ u% A9 U
break; 4 {8 J4 G5 B f
}3 O- l. u/ {$ w6 ]5 }1 u+ F1 N( G
}# F6 ]" W+ K- L! z
document.getElementById("MainDataForm").textNew.value=newCount;9 E+ J' ]; t& y% E/ }' n7 n& L
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;3 k5 K! s% @; ], ?
document.getElementById("MainDataForm").textReviewed.value=reviewedCount;0 l: s0 g# `3 V+ Y/ ~) K( f
document.getElementById("MainDataForm").textReleased.value=releasedCount;; C+ R1 \+ I& i: q1 N1 J O2 V
document.getElementById("MainDataForm").textCancelled.value=cancelCount;0 m/ l/ [$ D5 A4 P+ t2 A8 W
document.getElementById("MainDataForm").textTotal.value=totalCount;
- _+ k b3 o0 [) j
" y F( G/ B, \/ F! X7 p5 t |
|