|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
% n* ?/ A7 p% l: u3 r) ^1 s结果如下,点击Change Management标签,自动弹出统计界面0 B7 g! h0 V/ p+ F1 c$ R
8 ^) D7 `1 H$ A- n) ?* I
; T6 V: e3 B# t: R7 u6 O
# i; D: D7 B+ }" C" n" Y! X
3 ~9 r, G. @% a7 U3 H
' T0 `3 T4 B# B4 v3 Z; I" g(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名" j- e6 b4 X# m4 x/ ?( P
8 X. r: S$ _7 h8 k
M# @5 H( Z9 f1 u" Y(2)关联一个 on load的事件,使用 JavaScript 的方式2 a. b. h e9 `8 [, `6 W& _
8 ^8 M7 O$ d! V+ A$ D5 }) s+ O
/ h" @) z' `0 L" b(3)对整个事件进行代码1 e1 Q( `+ k1 X1 k8 ]; z
) m$ [3 j3 H* V" X) B2 j
* h! I% F+ p2 v- c- u完成后即可看到相关效果。
( T3 O) S9 ]+ n- E* R4 \1 O7 i2 c1 y2 Y
$ I5 W& N0 r. ]; R代码如下:
) S! H) e! U, ?2 T" v
7 ~8 T5 l: D* [//get the ECR Collection4 z- ^/ H. F1 y1 }# l& [
var newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;2 v" J6 w# ?& f
var currentItem = null;" J! M# J, ~. E
var currentState =""; k; E+ j' k- W! e
var innovator = aras.newIOMInnovator();' l# \! O( U. }
var item = innovator.newItem("ECR","get");$ S4 |/ _/ o6 F' ?
item.setAttribute("select","state");. q; ? G+ h3 {+ r
var ecr_items = item.apply();+ e' J9 R/ { g. H; W, H/ @
var totalCount = ecr_items.GetItemCount();3 D4 v# R5 N; h5 b
for( i=0; i<totalCount; i++) ! r* k4 p+ q" B" r; G! W
{
# v3 i. n3 [% i6 {' k4 t current_item = ecr_items.getItemByIndex(i); 5 p. j8 r+ r3 F x4 U: L. O) O
current_state = current_item.getProperty("state");
4 q* L+ S# g$ E8 W0 M7 z swiTCh(current_state)
3 |1 z n% ~" d1 d" T% V' s& h$ j { ; E- \& s% d5 _' a% T' L) p; M* O
case "New":
0 Q! k6 {# L! R$ \% }$ ^/ } newCount++;
! L+ d5 u, x& {! F break;. Y8 |8 x8 p; Q- u' H, i) {1 \
case "Submitted": |/ R" y t4 S: M3 z c: h3 O
submittedCount++; - a: R- ^0 M0 b E/ O4 Q
break; ! g5 u( ?: J; U9 K3 h0 k' B' u
case "In Review": ' c/ d. o; B, j! c0 H! U
reviewedCount++; + x. ^6 C6 ?) ?1 F# Q" T
break; " n; k9 w; Q0 P9 z% g
case "Released":
4 R% W2 ~4 S8 i' E' g- h6 l# c releasedCount++;
! X/ G7 m8 E( U2 x1 U/ V3 t% \/ V break; ; ` q8 [8 }- n
case "Cancelled": + B' h& R3 b( ]# c8 y7 O- T3 D
cancelCount++; 4 ]: ~. \8 M Y# P: A
break;
: J+ L# N/ K% ~ @# H7 s$ l8 s- ~ }
; n; ^/ h" l" v& \ w5 w& }}! `0 I; [5 a9 o* h# B& y6 e
document.getElementById("MainDataForm").textNew.value=newCount;
. [/ m4 c' C/ |8 `document.getElementById("MainDataForm").textSubmitted.value=submittedCount;! e% q. t- X; h3 d
document.getElementById("MainDataForm").textReviewed.value=reviewedCount;! b5 M' s2 g }! ~1 u: {# \6 J
document.getElementById("MainDataForm").textReleased.value=releasedCount;1 I& x+ |* i) |# |; q6 J( x2 B
document.getElementById("MainDataForm").textCancelled.value=cancelCount;. j3 I+ _5 d7 ~: y5 h l# Q
document.getElementById("MainDataForm").textTotal.value=totalCount;
9 ?4 V! A% Z1 F5 k3 k" _# I* t2 d
|
|