|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
- c4 L8 J0 _2 ^. @结果如下,点击Change Management标签,自动弹出统计界面4 Y) n3 ?2 R+ [
$ b2 t/ `9 T4 h& @# S- N9 M3 M" v
; ?* k$ _8 H6 x- ?( v7 x
. M ^ W M9 Y1 d2 ^
2 n* @( m) b% f: Y% D; U
& y, t4 U* O- F! I" O: I(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名
1 P: ^, W5 L9 y% Z% Y
6 y% v4 O* q; l4 F; K4 `
) S" ?# H4 i- H1 G
(2)关联一个 on load的事件,使用 JavaScript 的方式4 }6 F: I! R6 h0 \4 {/ V" G" G+ t
* A7 ?# B1 P5 @
8 s! q8 i- P' J8 P$ b(3)对整个事件进行代码" w" u. I0 U$ h4 M" F+ L
0 ]6 i5 t. O/ m1 X) J
( H* J4 I& }7 @
完成后即可看到相关效果。: y& u3 @, G3 t2 e8 f8 D% Q& f/ k' \
( j& s3 B& n0 s( o; |+ p# o
代码如下:
$ }3 M" ~8 }2 a8 b9 G- t K3 k- g& ?: |! c8 u/ {* ], Y M
//get the ECR Collection
. N3 ^4 \+ a) nvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;( C% k& M: g4 [# u
var currentItem = null;" i I, N/ y6 u+ U" s5 x K. `
var currentState ="";
1 D' s5 w8 }8 N% z, ^5 @( evar innovator = aras.newIOMInnovator();
. z0 G1 i! ]6 ~" Y$ n# f7 hvar item = innovator.newItem("ECR","get");; L5 c4 L3 C( g# `# g0 h x' P
item.setAttribute("select","state");2 Q/ X; W2 K1 _3 p( B
var ecr_items = item.apply();
+ H) M3 Z4 F0 X9 z" B) y1 Jvar totalCount = ecr_items.GetItemCount();: V: {: d% |$ ]) ^
for( i=0; i<totalCount; i++) @& P8 [3 t& M8 m N2 S9 q
{
! _! o( F! j/ q" u; i$ J current_item = ecr_items.getItemByIndex(i);
0 ~; c {# R1 T' C# t1 K current_state = current_item.getProperty("state"); , z6 y% b0 ]9 i" Q. e6 d* D7 @* D
swiTCh(current_state)
7 q: {) ?9 c9 N3 s( W {
4 L5 }+ N, }2 C; ^& w case "New":
% N5 r' Z* S f, ]% \ newCount++;; r4 }! Z ?1 g) |: f- F3 a
break;) J ^6 y9 u Q# N2 z* m. O- b
case "Submitted": 2 x8 j2 B4 k$ j/ p: U* l9 @2 r
submittedCount++;
3 D( h4 H; v/ E- M" { break;
4 H# q6 I' t& U. s2 B$ I case "In Review": 6 V" c* S" m, Q; x0 y
reviewedCount++; % W( j2 x0 D5 x
break;
: u0 D' v9 ~4 K2 r% @) E case "Released":
: I" p+ ]0 m# O+ ?7 o releasedCount++; $ Q7 b1 E7 l0 [6 T
break; $ j$ {6 Z* [; d) { b
case "Cancelled": L3 L q; Z7 [5 _5 d2 o) q2 C
cancelCount++;
8 }0 F" F! H' F% |3 r* ?& X break; 6 ?, f3 ^. c+ y% O
}# X0 o" ~" V1 E' d' M
}. [3 J5 c& x9 J* Y. ]. N% \/ S
document.getElementById("MainDataForm").textNew.value=newCount;
0 L4 d u! ], C2 ~+ l" A+ d8 }document.getElementById("MainDataForm").textSubmitted.value=submittedCount;( u) {- _3 b( q s5 A- u8 _
document.getElementById("MainDataForm").textReviewed.value=reviewedCount;
/ b! g. T+ f" i! X( P& Cdocument.getElementById("MainDataForm").textReleased.value=releasedCount;
- G E, Q$ S6 p1 d7 `3 Bdocument.getElementById("MainDataForm").textCancelled.value=cancelCount;. r4 {0 w* s4 _" _- Q! _/ O, O8 }
document.getElementById("MainDataForm").textTotal.value=totalCount;) t& e0 m! j3 U* H* t3 T3 F
3 V/ K5 U% X/ b( {3 o/ ]
|
|