|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
: ~0 B2 L8 e1 V# F0 `- S结果如下,点击Change Management标签,自动弹出统计界面3 K* s: Q& r0 I3 y* Z
6 s' B% d, f( N' s4 g
( Z* b+ @6 ?/ x6 a3 v" p# z6 t6 p
* q' ~* r: O, z# e9 s+ V! L9 A+ J z1 i1 f/ y+ {
* J; J% o7 }) u) S* J
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名
8 U4 x% U( v) M" w0 p5 K$ I$ \$ w( V0 m% ~5 A: L0 C
- J' ~& X7 w, ]; W
(2)关联一个 on load的事件,使用 JavaScript 的方式6 j# x( b/ b5 Z+ l* M& x* q; H# ~5 H
- f( M v. c) X) ~' r# e/ M4 T
0 s- }, o# d6 p& a' n2 _4 p(3)对整个事件进行代码5 }4 x# ?) Q# c1 L
) B; s7 f& C- N1 ]+ e e5 {8 ?& o, H ]6 z
完成后即可看到相关效果。/ O5 K y- {+ X m' T
1 ~% ~- _+ Z2 O( a; j代码如下:2 \ E# e/ ^6 ]/ V- Y) M, [- F' {
/ t; C1 C: z. n$ ?8 N6 q! ]- f//get the ECR Collection
# L s1 \2 j5 K5 t Y ?; U. Rvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;
5 A( _3 @' b$ ^+ V" \var currentItem = null;
- a, y; t/ p$ R6 V# t. Nvar currentState ="";
2 z2 W6 ~$ N$ @6 [3 Hvar innovator = aras.newIOMInnovator();4 D, _' |6 j( L- l3 S
var item = innovator.newItem("ECR","get");
" s4 ]8 Z/ F5 Xitem.setAttribute("select","state");) i) ^5 D. i3 C/ O
var ecr_items = item.apply();6 _ n# k* y3 x9 }2 D
var totalCount = ecr_items.GetItemCount();" v9 I) `; i# i w. ?
for( i=0; i<totalCount; i++) 0 e8 o/ e0 Z- y2 F
{ ( r. e, B/ N' S7 Y5 q
current_item = ecr_items.getItemByIndex(i); , G2 B( W0 i) u4 I, H
current_state = current_item.getProperty("state");
+ D! }3 X' R/ ]! F2 h3 m: l swiTCh(current_state) " A# ]7 ^6 l( H- C9 A
{ 9 Q7 }5 q: s7 s! d
case "New":, U# P6 P) q r/ D' h Q M
newCount++;
9 i- {9 s& ]$ N/ B break;
9 s% z( q* V( Y. p! z$ D4 o9 s case "Submitted": 2 V C+ K7 ^+ ?
submittedCount++;
: r3 e3 b0 O$ a7 B$ v- Q/ u9 ? break; , G E6 v5 ]/ P$ }+ c
case "In Review":
6 @- R, d, ~- ] reviewedCount++; 3 V- [# |( O- I- @, e- d
break;
3 N# k3 V4 ^1 n* O4 k1 E. X1 F case "Released":
, E5 a: G% l( J6 J9 Y" `7 A( \ releasedCount++; 3 G6 P) K$ e% `/ `
break;
( i- z* a3 X0 Y3 J1 t case "Cancelled": 3 e+ w, o0 P9 U6 {. h
cancelCount++; ! N& D2 Z7 D# s
break;
6 x: K7 I( P N6 C1 B3 W$ z }2 J& e, V/ L. @
}, L+ p) j, k4 |; a' i6 S$ [1 i& K) g
document.getElementById("MainDataForm").textNew.value=newCount;
" n4 { R# E' zdocument.getElementById("MainDataForm").textSubmitted.value=submittedCount;
8 B4 v1 L% x' v$ K3 S9 x7 Xdocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;# h; i: b5 z' y0 P( A& S4 n
document.getElementById("MainDataForm").textReleased.value=releasedCount;+ ]- A; o( A) I9 C+ |
document.getElementById("MainDataForm").textCancelled.value=cancelCount;; w) @5 U; {$ ^7 a8 E T
document.getElementById("MainDataForm").textTotal.value=totalCount;! U( g3 d9 P6 g6 i y
$ N% \3 s" O( b+ H& V$ m
|
|