|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示1 T& s! ~; s. ~( g
结果如下,点击Change Management标签,自动弹出统计界面3 C, [5 d( ~& q) U* j
) [/ @/ \% U, a& s ]5 i. h3 r6 [
- i5 [0 B3 c2 u6 g3 }6 Z
1 H) f3 d9 ~7 n2 d b- M. _
& D# j; s5 }( W$ `
7 q4 i0 M6 O7 W; L' v(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名
1 q) H& X1 J# s. k4 u
+ k p H) K2 o) ~3 K
; }- V$ Z0 r) {' J+ j% f; u. |
(2)关联一个 on load的事件,使用 JavaScript 的方式$ s* Q7 ]3 u9 [% X6 ]4 Z
* P6 M c3 t/ G, \/ D6 K* h
* b; [( J+ T8 k* p: x# s# p& p(3)对整个事件进行代码* k9 a' j# N2 k4 J4 T |, [8 z
6 r1 L9 ], g# {6 D. i) W# g8 t% M& m7 ~
完成后即可看到相关效果。
: r* z7 h$ a* e$ x7 a! n& _' ~. [* J1 ]" {
代码如下:
6 v- _) ?4 h2 F# q# h, A% E
3 D& _* J& b" H6 N& [. N0 \& K* I+ g//get the ECR Collection
) k% I9 x( H" s: W3 z- Kvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;7 h7 g4 \, r3 }+ u7 x) @( O
var currentItem = null;
0 p, f6 `5 f/ R4 K$ ]var currentState ="";" I6 J) z! T e7 n* p7 `
var innovator = aras.newIOMInnovator();
& k/ M' X& J' K1 S+ f3 O0 nvar item = innovator.newItem("ECR","get");0 @. n0 t8 i. _& l8 y- [* K
item.setAttribute("select","state");
) @4 ^' z6 L: t9 ~3 Vvar ecr_items = item.apply();
: G# a# Y% D, Fvar totalCount = ecr_items.GetItemCount();
- t2 V6 a# e& l: j Z6 l7 Efor( i=0; i<totalCount; i++) 1 b8 U% M- F* T% _7 e
{
+ v6 v* n3 J8 g current_item = ecr_items.getItemByIndex(i);
/ ~ W3 G8 ~" ~ current_state = current_item.getProperty("state");
0 a7 `6 ^; V( ?! S. f' c5 m) K swiTCh(current_state)
! [+ S) I- Z8 \: ]% O" X9 Z: R { 4 F- c* l) _ p) B
case "New":
% r) z. B1 H; h! u: J! _ newCount++;1 k: g1 w) ^( u$ M2 f$ l
break;
$ K( l/ c8 ?" s2 R, ?+ W; W case "Submitted":
: H- ~& F6 j/ `; x submittedCount++; ) \- ^( u* K( _* Z7 B$ [! s
break; + B' e ]! ]1 [( V% q# i
case "In Review":
3 s) x8 z; A! u' n reviewedCount++; 2 o. r- q( ^" X- |! h
break;
0 U+ g8 c0 y" |3 N) @ case "Released":
8 O6 I3 R( ~9 X5 l releasedCount++; . C/ s/ V) s2 n: R" {$ B
break; & X( a+ y; ~8 S" j& Q; B% I
case "Cancelled": * h# E1 f+ a! Y/ S2 x2 n- Y
cancelCount++;
* p/ u" ~/ P% W3 B$ x6 ~$ z _ break; 2 f, ]" i% O8 o9 t
}
( A/ _* F. I v: y$ l}$ l k% \2 T+ K9 I' v4 a3 K
document.getElementById("MainDataForm").textNew.value=newCount;$ E; T1 M9 v: l5 O- @6 u- x
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;
" p" r% y2 l( V& cdocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;# r2 s9 ^$ I! F' D5 Z% q
document.getElementById("MainDataForm").textReleased.value=releasedCount;0 ]( v8 u2 Y3 f1 W) L
document.getElementById("MainDataForm").textCancelled.value=cancelCount;% x2 L7 R' P. y R3 ^) ~9 Z1 Y
document.getElementById("MainDataForm").textTotal.value=totalCount;
4 p. a" Q% i8 ]% `( f7 u3 `( {% E8 q7 R, T: S0 G/ J" P2 }
|
|