|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示! V) @( C M6 G! M% x0 X
结果如下,点击Change Management标签,自动弹出统计界面
+ C p- @) O. o
( i" g. @" {( Q8 ~1 B) y
1 Z% M* ~, L, Q4 U& r2 ]
+ _$ I, c, c0 ?6 A
( Q, r# R6 _$ t) K* }2 E( W6 F
, d; b' g# }8 { G, w! Q(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名
1 L2 Y, Z C% x+ R" a4 P( a8 k* R# b! W" n h: K
( B1 o4 Z9 I: U% P W(2)关联一个 on load的事件,使用 JavaScript 的方式
z; u* x- _2 u5 } ^
. B5 j" y6 L" i1 C
# y- @$ J: |- c+ `
(3)对整个事件进行代码, y' U" D* h5 }5 V; B8 `/ ~/ j
, A1 A; {, l9 B5 P9 B( b. J
6 x z: D0 S7 |* i完成后即可看到相关效果。
" q! O! s0 ^: Y
% @% k* Y2 V+ V1 J8 C4 o代码如下:7 Z: B {7 b$ u" f7 U
! k r: H7 K# d0 Z( Q1 l
//get the ECR Collection
! P$ }( W3 {7 c6 y, O/ hvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;
( _3 a5 Y- W! g2 F: fvar currentItem = null;
% }5 _# E! {8 x9 C" D& L p+ cvar currentState ="";) O B) V. A1 }+ T, m
var innovator = aras.newIOMInnovator();# Y0 e) z, C0 N) k
var item = innovator.newItem("ECR","get");
2 l/ W) e$ k* B& {item.setAttribute("select","state");8 K% k4 M! q: _& u
var ecr_items = item.apply();' F1 j: I4 B; H7 V) ? s& Q: H3 k
var totalCount = ecr_items.GetItemCount();/ T+ K; \9 B+ r0 H x. n
for( i=0; i<totalCount; i++)
' G& \+ D5 ~7 g9 O7 Y3 R2 n$ J{ # _# Z1 Q2 J- e% U& x" x: z
current_item = ecr_items.getItemByIndex(i);
; g4 p8 {' m1 Q( x current_state = current_item.getProperty("state");
3 S& c! @+ E' C4 f5 q. c swiTCh(current_state) 5 \9 H' w+ o5 s: o$ M) b
{
' ^* L9 c- q. f3 Y! v& {- k case "New":
* ^! c" ^7 i1 `: z newCount++;
# t' d/ g- g' u M: a. Y9 H$ H break;
+ G+ Q5 l6 K8 c/ j! d- I case "Submitted": 8 C4 R- ~* o* q! q& k4 Z5 `
submittedCount++; , y" T/ b3 S+ }/ ^6 F( P
break; @- z+ o7 V0 L! {0 I( s# E
case "In Review":
6 d6 t: h. s5 r1 { reviewedCount++;
# |$ z, g2 i* r3 D break; - E! H% T! c! |* S: Z7 J
case "Released":
0 B9 X1 i4 P9 a1 E' l$ _4 | releasedCount++; " k& o- U, ^, i( |, P3 w
break; 0 w5 q. n+ {" U
case "Cancelled": # }2 @4 X& D8 }/ W$ t
cancelCount++; ) H( o2 v4 d9 |6 l* @7 P9 o
break;
5 S% k+ A( t' g1 i, V }" C; W, J; [; ^ E- L8 I- U
}- j# T+ w* P7 r+ t0 @
document.getElementById("MainDataForm").textNew.value=newCount;
$ ]2 G1 ?+ {. B+ w& j7 f( @document.getElementById("MainDataForm").textSubmitted.value=submittedCount;
3 c& U2 o8 a' R$ N+ d" ]8 h' w2 }1 Hdocument.getElementById("MainDataForm").textReviewed.value=reviewedCount; X5 Z, Y- m2 C9 X, E9 D
document.getElementById("MainDataForm").textReleased.value=releasedCount;* x0 K" W$ i: J8 r2 v
document.getElementById("MainDataForm").textCancelled.value=cancelCount;
- R. O6 d4 F5 ?! D: adocument.getElementById("MainDataForm").textTotal.value=totalCount;
% C3 l9 ]* p, t5 w% w6 o" d
7 l' ? x/ \( I5 N* G( Y9 C4 ^ |
|