|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
6 ~. s% b. E" L. @# Q$ a. b2 k结果如下,点击Change Management标签,自动弹出统计界面 e* U$ o7 j& U2 ]* D
% I8 t5 X& h0 _( T/ G. O. g
/ k9 Q9 N* Z$ D2 e4 {. I- K
- [' n3 _# s1 [- V2 g
+ D( I9 }% [5 z- ?1 L1 l5 c" r
2 H8 N `( C1 J; a(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名
- a. @) u: r" D- j- Z, V7 t
) d8 B7 v9 x* T
" ] A( b& _$ }& w
(2)关联一个 on load的事件,使用 JavaScript 的方式+ r. h2 H- O2 t( C+ M( u
2 Z' P* ?* {8 d$ w* _ c ^" ^+ S; I* i _
(3)对整个事件进行代码$ K: u8 ?+ @* M( C1 q7 P8 E
) ~; Q+ I+ T% _, j! F A
: A4 \7 B( `$ E+ z; n/ l+ ^* `完成后即可看到相关效果。
& B- q! n6 }8 ?, Z# G- X$ E; U
4 Y. i0 N% G& s1 t2 f/ d4 A代码如下:
7 A( y( k; F# B x% z: ]; A
9 k% q3 j3 h' B6 ? c% J//get the ECR Collection# I6 w+ @6 s4 o) u7 O6 d
var newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;
* v, o; p2 G3 n# M5 n+ V9 j7 @var currentItem = null;
0 w1 e7 |" l8 mvar currentState ="";2 Z% B$ p3 v' P2 d* z2 ^
var innovator = aras.newIOMInnovator();# y/ \3 e9 Y' b' A& s
var item = innovator.newItem("ECR","get");1 N. n g9 {. M, q6 f9 A
item.setAttribute("select","state");
! M' t* G! w0 i7 L' |' e0 Tvar ecr_items = item.apply();$ {: r: x5 S0 ?+ e. Z4 e" T# ~
var totalCount = ecr_items.GetItemCount();6 H5 q0 H$ l9 \. Q3 k+ k
for( i=0; i<totalCount; i++) " S$ {' c+ F% B S1 S* q5 {
{
3 e. z! V7 [' Z! P3 `: E current_item = ecr_items.getItemByIndex(i); # U+ P. G# h# C, z$ K) p
current_state = current_item.getProperty("state");
$ q) L$ R1 C/ }1 r/ X1 h: Q swiTCh(current_state)
2 ^9 G- o. u" g$ y* c {
$ O, P" @" g, p! C case "New":
7 @5 w4 X0 [! { newCount++;: p; N6 X& x# d2 ]+ ?6 @
break;
5 p; K9 d: X1 G% N case "Submitted": 7 ` R6 ~' Z, l
submittedCount++; 5 @( U6 Z- U4 o# j3 v
break;
/ J" P/ E3 h8 b/ u case "In Review": 3 w5 A1 i4 W6 e+ C7 V8 s
reviewedCount++; 3 |$ G( \$ y! C3 l6 W8 S. s
break;
' d. s5 U0 G* M case "Released":
: X! z& R/ v& ]# s9 J3 f releasedCount++;
( G" V1 K S7 L* ^# I: i break;
$ k& m# T, C2 u, Z+ J# G, | case "Cancelled": , Z8 p8 L3 J; z( n3 d
cancelCount++; ( z8 j2 w7 X: |9 _6 M6 q* P
break; 5 h3 L3 z; e. A, x
}9 w" m' A+ s0 n) r$ g. W
}
" \; C8 n# S, J- ?3 E; gdocument.getElementById("MainDataForm").textNew.value=newCount;
6 y6 U% ~/ c9 n2 j. Tdocument.getElementById("MainDataForm").textSubmitted.value=submittedCount;
8 t0 ?3 L# l( \2 w- B. U3 @document.getElementById("MainDataForm").textReviewed.value=reviewedCount;
- G5 F: v2 s8 ^+ ~6 X6 ydocument.getElementById("MainDataForm").textReleased.value=releasedCount;2 o. W: d2 d9 ?% F1 E8 o# x8 s' J
document.getElementById("MainDataForm").textCancelled.value=cancelCount;/ p: @% a6 F7 y! Y5 G, F' p$ W
document.getElementById("MainDataForm").textTotal.value=totalCount;
3 O; r/ N* {' x a8 B) N5 Y8 T) }5 t% G: N1 M i% a
|
|