|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示9 u5 F$ k8 V6 q5 f
结果如下,点击Change Management标签,自动弹出统计界面# x8 L) g& I' j! Y
1 M# V: c: [6 g
3 b; Y/ S' _+ }9 v" N0 ]3 `
- E9 y h. {+ X
, R) W1 i. N Q9 G6 f5 R1 a. j, A) l8 C( ]2 R3 ?
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名
, V' X B7 b/ d5 I# O8 Z; N+ L- v! H9 o6 ]3 z/ @$ y
& {. X! W% J4 r, M1 V) P(2)关联一个 on load的事件,使用 JavaScript 的方式
7 ]; t" f8 d9 A2 ]& S1 w4 R
) Z: \. B# w4 }9 _
5 B7 }2 a- g" j* j: W9 S4 A(3)对整个事件进行代码
" D m5 T1 i6 _3 ^! x+ x
) D9 X1 C# a7 i* j
6 y4 { o. r% ]& x* O: U) }$ n1 ]完成后即可看到相关效果。$ F8 y- H9 h7 L8 F9 T, Q
- r5 i- m: |$ F6 @' V* Z3 e
代码如下:6 Z# q6 e; Y, \! I. l W. K ^2 e
" p& v( \% ~$ p8 g' l# t
//get the ECR Collection h0 z, n6 x* c* A1 F% i" ]
var newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;# O& h9 L* P" K3 Z! F# u( i. ^: r
var currentItem = null;9 c: ]* u2 g. x6 h) p& g
var currentState ="";0 U$ O n. z5 S, n& B
var innovator = aras.newIOMInnovator();
, Y0 q% q: h' f( p! O& ]# x% Q5 Cvar item = innovator.newItem("ECR","get");
) O; q! v$ b7 |) `item.setAttribute("select","state");7 d4 s" l* D5 c8 ~, M3 a
var ecr_items = item.apply();
" @$ B' T2 Z( pvar totalCount = ecr_items.GetItemCount();" r" {2 p6 S/ F' O; _- V4 d
for( i=0; i<totalCount; i++) ) I h. H# ?1 `. m' C
{
' [/ ]! `7 ^1 } current_item = ecr_items.getItemByIndex(i); . O, o3 X `6 `! Q2 e- H" g
current_state = current_item.getProperty("state");
1 v1 w- c9 }, w, Z) M5 W swiTCh(current_state) & n1 g1 e2 z* |
{
- \3 t) U- g. [% X/ l case "New":
6 H, W k2 l7 J" J8 Q newCount++;
7 A4 z M# D, b) O break;# L" k' ]6 C' m* T# z
case "Submitted": * L* u; ]( B( Z: v# }
submittedCount++;
9 ^, A* | z) E! I/ @ break; + a& I1 e( l; v. J1 K7 @! }
case "In Review": ( h8 q) d" d l
reviewedCount++; ( d* \6 |3 Y9 t+ r, v, Q% G( K
break; ) M0 @* U% J& S+ S3 J. ?
case "Released":
) U: j8 B/ z, ?3 g0 f# n K releasedCount++;
0 C% Y8 s( X8 \" h4 I5 U7 I break; 8 o' U" K; i6 ?
case "Cancelled":
% [1 v* s. d7 J2 `7 h cancelCount++;
g. J- `( T1 ^* x7 @+ v6 D break; , v; `9 {. ]0 ]
}* [. p) y( ^, H! o& \3 p# E
}2 C b1 x" q3 l1 N( c& d
document.getElementById("MainDataForm").textNew.value=newCount;
5 D; d& V# ~+ |: u& B6 m- @( j4 edocument.getElementById("MainDataForm").textSubmitted.value=submittedCount;6 u5 @( p7 X& s U% k* w# @
document.getElementById("MainDataForm").textReviewed.value=reviewedCount;) U/ f. K# y0 l8 p6 e
document.getElementById("MainDataForm").textReleased.value=releasedCount;) G' j4 Q6 ?3 O5 w+ v% s
document.getElementById("MainDataForm").textCancelled.value=cancelCount;+ x5 T# i! b6 X) |" _1 _
document.getElementById("MainDataForm").textTotal.value=totalCount;
- t7 b" ^ M' }( d3 J+ E; J; U3 p3 K
|
|