|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示" j1 V5 G$ r f( ^% O# z5 a+ Z
结果如下,点击Change Management标签,自动弹出统计界面
* N! c$ d& {# l: N4 Z& t5 q+ f& T& B6 P9 P) v% z. m
) j9 N) e/ H/ w2 g" M; \4 I1 x
0 l% s8 {+ f# W4 u5 ~# ~8 C
1 a1 H3 N% a: A3 B; t
- F$ b7 b; F% [(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名% Z1 S# I9 r% y( u! G- q
- f2 s( r+ G: | p$ I3 G
8 i1 B# x. u; E k
(2)关联一个 on load的事件,使用 JavaScript 的方式0 j g. Z* ^$ l# }6 Z* i/ @
- c4 S" ?4 _7 V! X' l+ s c; C/ u$ O+ g3 F! g
(3)对整个事件进行代码
9 r! U1 E: y% I! u' {4 R" R9 f
V2 M+ Y/ i6 y0 H% d' Z
/ h% g0 \* g) K, m" _完成后即可看到相关效果。
) p/ e" c2 i/ `+ p) _: T+ O
& _: p: V) W! I# p+ e. Q# m代码如下:
% \+ d# V- v ^5 t8 }, ^7 L9 p/ [ o( }- A" a& S. F1 j8 O/ s
//get the ECR Collection# a6 b/ S) D8 L- x& P- Z" w y! W( |
var newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;( W j& c B5 B9 n7 E: i
var currentItem = null;
3 S+ I0 B0 L) y* k" n! ]9 f! h! V! [ mvar currentState ="";, f! U: l! ? e; `8 e& J
var innovator = aras.newIOMInnovator();
. S; k( j3 ~7 p: P7 k% A5 E5 evar item = innovator.newItem("ECR","get");! M# z! r& {+ A/ j/ y1 g
item.setAttribute("select","state");" ?8 v& h6 O& Q! s4 P0 @
var ecr_items = item.apply();
7 F& {1 a7 |: ?, P4 rvar totalCount = ecr_items.GetItemCount();
+ M- o* D7 S# H) G3 {% q( y+ s6 ?for( i=0; i<totalCount; i++)
$ }8 S, n8 u6 v# N4 O{ 3 m o1 w k0 I ]; |
current_item = ecr_items.getItemByIndex(i);
* k. J* g3 Z3 ^ current_state = current_item.getProperty("state");
; y f: Q5 f1 { swiTCh(current_state) 8 p8 \5 o6 ^! H4 b# q+ M
{
5 l! S- t; I) [4 x U7 ^ case "New":& h$ f) L; ]4 `, }( A& O8 M
newCount++;- `+ m7 W( D t' t7 y/ l- W
break;
2 C9 ?6 x! `0 |/ M, j! x case "Submitted":
! @ C& P- u! c8 n8 F% |- S! J submittedCount++; 1 A" n9 b4 T8 j+ K' c3 m/ ~0 ]
break;
/ I0 I: \, q2 M' _ case "In Review": ! B g9 V/ U( L4 S* ?$ r6 D6 o
reviewedCount++; 8 x- P" u9 B, H( W
break; & c7 y$ _& \5 `6 x/ E4 B
case "Released": ; M# n/ I. Y% z" @
releasedCount++; - S8 p/ }* ?" ^, }
break;
5 C4 K/ Z8 ^. a7 G- P case "Cancelled":
' ^$ j& r& d6 S0 G2 z cancelCount++; " H) |5 Q9 U+ r
break; 9 X% ^- }6 b& I q5 S; K
}
4 y$ \4 i, \, y}
s: A9 K8 _5 h' S; j& s* ddocument.getElementById("MainDataForm").textNew.value=newCount;! T+ k' P* r% x2 q- Z' [( y( W0 W- M
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;- O7 ^& h' }" h% Q
document.getElementById("MainDataForm").textReviewed.value=reviewedCount;' d# s7 E( A% ~% u. I
document.getElementById("MainDataForm").textReleased.value=releasedCount;" ?3 _! |- ^% |* B' |) {3 C
document.getElementById("MainDataForm").textCancelled.value=cancelCount;# x# O2 r: S3 ]! l" k
document.getElementById("MainDataForm").textTotal.value=totalCount;; v8 ?% W5 c# K: D" {
' N2 b8 L( `' K/ u% h0 ~0 F# ^ |
|