|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示& k& P: T# N! K
结果如下,点击Change Management标签,自动弹出统计界面3 V% e( p! c# }3 Y- O* [" T5 b/ f' G
: y" G' |$ P5 |
7 e/ J- | Z7 ~# o7 C7 o& e; m! u' `, x
) S" n/ \0 ^: e7 U$ Q& S
* [! O" N$ r6 f% H$ c' }5 a- ](1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名2 J6 a$ c7 v6 y: c) K+ [2 v
d+ x; h1 f4 ?3 [6 C% v7 G" H1 @0 k
2 M/ ?7 G3 Z# [: ^1 _
(2)关联一个 on load的事件,使用 JavaScript 的方式
8 J+ w8 z7 t C3 |
1 i2 c0 a2 _. B
- K7 N" F P: X" S1 ~1 K(3)对整个事件进行代码' }0 s1 s- s7 I& Z5 }
' D$ `) ?6 p/ ?* {7 b" [
/ j/ m+ ]; e& U9 r0 |2 K* z4 B
完成后即可看到相关效果。2 f8 ?3 w& O+ ~( Z# v
0 q5 Q+ l# d2 V
代码如下:
4 `& W7 }, n% L: Y: r/ {" _+ l5 t
//get the ECR Collection8 N; v+ f, M4 S: g1 T( z7 o
var newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;# Y9 I" }- b4 N2 m: \6 ]
var currentItem = null;
- V/ O% w$ x+ s s% qvar currentState ="";
8 q; `$ n& x- r0 ^) K& K7 B- V5 xvar innovator = aras.newIOMInnovator();$ j/ q) A0 A4 x6 O# \
var item = innovator.newItem("ECR","get");$ W$ \, q0 `# l, z3 n
item.setAttribute("select","state");
$ G; R4 r+ x, {% m" k7 {! H3 B) bvar ecr_items = item.apply();: L3 d: J( a" I# Q2 f# R o' _
var totalCount = ecr_items.GetItemCount();4 Q' T/ L% x! j4 t/ |
for( i=0; i<totalCount; i++) " \% x; I1 K7 I' @( Y
{ 7 ~0 a7 G# z& d
current_item = ecr_items.getItemByIndex(i);
z) k; v6 @) z current_state = current_item.getProperty("state");
! ^* T1 V0 E( x2 | R C* G8 ^ swiTCh(current_state) 8 F; \3 N1 a5 ?- |3 j0 f6 U
{ z/ J: U. s) [( Q7 |4 y
case "New":4 p0 }, j% x0 ~$ D' K; \% U
newCount++;
6 W" }3 J$ K4 F8 I! [4 m8 q, t# o: C, T break;
; V6 r0 P6 M3 n' R$ H5 C case "Submitted":
+ J! M& j& B; j3 [; k8 t1 } submittedCount++; 8 n1 l$ N* h5 g7 x1 I% `8 N3 u
break; & u) u3 o+ I: }% X% A2 G( X& M! W/ ]
case "In Review": - w9 }4 Y) ?7 k( x z# r/ N8 T
reviewedCount++; , a ]; X! f: ]8 q, O, {
break; 0 x, k, ^" `6 }+ r/ Q: u* x: n
case "Released":
3 `4 J4 V2 e, _9 ^6 D, f, Z$ j0 z releasedCount++;
! _; K4 @# V9 U7 E7 b break; 5 w' y; |1 }, L
case "Cancelled":
& o2 S* R' \2 c! K cancelCount++; 5 [" ` |* G: Z. ?! f2 L
break;
; ?' m% R6 q9 u8 s% e6 I A$ x# | }
0 L" b% g; ?" x$ n; V4 w}
]9 Y) S: C2 Z: `6 Z$ D% ndocument.getElementById("MainDataForm").textNew.value=newCount;' M% ]2 z' x" W1 v2 O+ K" q
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;
1 o1 |4 h" v- H3 S% t7 F5 V# Cdocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;- z6 w$ v7 A; |+ |: D/ a' `) [
document.getElementById("MainDataForm").textReleased.value=releasedCount;
8 D. Q. _* ~1 c9 @" ?; W3 x. ~document.getElementById("MainDataForm").textCancelled.value=cancelCount;
- z& u4 w3 I* t# e% l8 \document.getElementById("MainDataForm").textTotal.value=totalCount;
$ j3 V( t6 D7 s( k- u. O, O
; ~8 y( s4 X! ~ |
|