|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
" u: }) s! R/ h" F+ u% k. G6 }结果如下,点击Change Management标签,自动弹出统计界面
- C- [, | X( G* q$ @$ S5 s: y1 D! c" K& ^
" q6 s, S& T' e: J) P* u0 x
) x) f% d5 t! p5 Z3 N/ q. c
5 n; a! j9 ~9 e+ b* D. x! O9 A
2 w4 |( N8 V. P! A(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名% v" Z) q0 K1 e/ ]! z
" B2 V# p. j5 u8 l0 r2 c! O ?
$ s5 L0 |7 L% }( C" R
(2)关联一个 on load的事件,使用 JavaScript 的方式
* p0 N8 n! r( z. w
, N" Q/ `" x9 Q4 G4 N- v# d9 _* {
6 |! k3 I1 V3 x: n% j3 R
(3)对整个事件进行代码# W1 x$ Z+ c, S/ d: C: c: L2 V3 q+ |. f
: i# I3 g; |( |, D
+ a% J& S o; P2 s9 E+ h完成后即可看到相关效果。 J1 U+ ~# X% x
9 N7 u0 @; J& o) I- z
代码如下:0 i" y) N; U; _5 d$ p/ R! r
7 L/ P6 Z2 M& k9 k& l1 m2 C" e( M
//get the ECR Collection) }* U- d) j. H. i( R6 W3 `
var newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;
& a3 K/ [1 j% S% ~0 \var currentItem = null;) S, {# f1 h9 v4 x2 C- q7 W; Z
var currentState ="";
: k/ l" R5 R7 f5 @: Avar innovator = aras.newIOMInnovator();
/ z. f; ~5 W2 g0 X: q, H: h5 hvar item = innovator.newItem("ECR","get"); f2 F* h5 m& e" A0 J; _, d
item.setAttribute("select","state");
* A/ z7 U0 u' Qvar ecr_items = item.apply();
- E% Z) Q" L0 Q: T- Jvar totalCount = ecr_items.GetItemCount();
5 y; e- _; {) X/ o: A! J3 T, ]for( i=0; i<totalCount; i++)
! [5 { Y& H C( R) p4 I8 _{
" t# N6 P, [0 D9 M4 G, h current_item = ecr_items.getItemByIndex(i); 9 Z, P5 H7 k8 j8 _$ n: W3 u
current_state = current_item.getProperty("state");
) I% E7 z$ W/ p. E U8 [) { swiTCh(current_state) 8 X# t c/ C( t/ o; y
{ ) [, B. r V9 ^% n
case "New":
3 x! h; {2 O2 A5 C# t1 H9 z, ~0 T newCount++;5 \( G# }, w+ T/ R+ P
break;
x9 V4 S$ l% L: O# \ case "Submitted": 6 K# P1 ?: q- |( Y+ j0 p3 h
submittedCount++;
8 C9 r; H' o6 J break; & l- C# G" c1 J" j5 o+ N
case "In Review":
/ ^1 R8 v* Q- { y* B2 B" a reviewedCount++;
- z; a% {0 N7 L. ]& ?2 | break; % ?9 j) @, W4 r8 y" A
case "Released":
) B3 b+ [( U, F) D releasedCount++;
" u e% h. S* d- X: ?- \ break;
. g" y" U' ^ Q8 l0 s8 T0 y3 U case "Cancelled":
2 U2 R# m2 ~% l n0 A cancelCount++;
% A* ] V+ H) ^+ t0 y break;
# X1 a0 Y3 u N }
9 h5 W2 a8 i; @, u9 {/ K}
5 b, h# W; l8 \- ?( ?document.getElementById("MainDataForm").textNew.value=newCount;
$ i5 q Z+ ^+ ]$ _" h! n5 n/ L! Ydocument.getElementById("MainDataForm").textSubmitted.value=submittedCount;
0 Q! D5 J6 {4 edocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;
& `' m' Q( b/ T. d/ l8 y7 Cdocument.getElementById("MainDataForm").textReleased.value=releasedCount;4 Z# W/ j) u2 b6 L
document.getElementById("MainDataForm").textCancelled.value=cancelCount;1 V3 t/ n* a* j( u5 q U1 E( Y5 q
document.getElementById("MainDataForm").textTotal.value=totalCount;
0 N2 f& a" y; Z- Q2 {% B2 R% k- E; A; X; R
|
|