|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
# {: d3 x$ x3 M, j) L- _# j/ o3 w结果如下,点击Change Management标签,自动弹出统计界面
. {4 c$ d- v2 y2 {6 Z
! d8 N! l9 V }) R) i& t
) v# ]0 Z0 h+ g3 A/ X& a
8 g9 o$ e" L, q) q; h5 I4 Y @" j/ |1 N3 [! p6 E- e1 Z
8 D+ R# V3 g$ F7 M- `(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名* m! x6 q1 c" \1 y6 d$ j
: |8 K! M1 }: }0 S
% g% e# p7 F1 B4 t: D
(2)关联一个 on load的事件,使用 JavaScript 的方式
0 ]: i! N8 v) L+ Y
& r% S8 \$ r; @. X3 ~9 ~3 x/ S
$ e5 |2 A, V7 [/ r
(3)对整个事件进行代码
4 J" a# l! Z7 G" u z6 s5 l
+ U+ W% |4 p: D, p
8 D+ |" U" a9 I+ i- r0 f
完成后即可看到相关效果。. J F) | }& f; q
" O& s9 q' \' W; M
代码如下: P+ i( c# F3 T6 i! i5 z7 w. @
8 M% p' S' Y( u; n
//get the ECR Collection+ k) P% P) \2 e" I7 F0 v
var newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;
7 N j1 I0 \: nvar currentItem = null;
( }4 a7 u+ T7 A _& d! p! hvar currentState ="";; U% E+ e/ J, g, I7 i8 L
var innovator = aras.newIOMInnovator();5 S+ g# P O9 P* E* g" p
var item = innovator.newItem("ECR","get");
$ U& r4 m; V. S9 Citem.setAttribute("select","state");
: {7 B& h8 m2 M# E& G3 y9 @, c. Ivar ecr_items = item.apply();
: D1 a& h6 h3 ~0 T/ o$ \var totalCount = ecr_items.GetItemCount();7 j* H: l$ v& K3 Q' K) N, w' `
for( i=0; i<totalCount; i++) # w) k; K& h8 [6 q, D
{ 0 t4 K6 g+ l% v5 I# V! r* o
current_item = ecr_items.getItemByIndex(i); ' r: ]! ^7 w& Q
current_state = current_item.getProperty("state"); ! D* o4 E& E1 R. ]4 Q6 [
swiTCh(current_state) 8 u7 B! p- c. e. O, T
{ ( H& g( V+ m9 A5 i' D+ c3 ?
case "New":" v$ G$ X0 [% V4 ^
newCount++;* O! w, [) X' d3 M2 b, G* Z8 L4 p
break;# z8 C# o8 l; B; }% n8 v( v
case "Submitted":
: d0 o3 W" H& E& Y4 |0 k submittedCount++;
& A$ L) g% ^+ q; ?4 d break; : b- w% ~- U/ l& W* q% r# o
case "In Review":
+ `. I/ L% F6 ]4 S6 n reviewedCount++; 4 `- _+ n! y5 {, m" R4 V
break;
3 l+ y, `: ?# h1 [ case "Released": 9 Y3 ~ \$ L) A8 i- W* h1 e
releasedCount++; . ?0 C: D4 S' o1 W
break; 6 u+ e! {8 M& A8 F6 C
case "Cancelled":
) @" G4 v+ O' b9 T) w5 t1 U* ^ cancelCount++;
3 W& f+ [; y( C+ k9 I break; ; g( B$ E# C( s6 \1 y* K' a& e( u" H
}- Q" w- S5 A) X* d e
} Y2 q1 N5 E/ O6 z
document.getElementById("MainDataForm").textNew.value=newCount;
* Z* x' Z k4 q# j! L& `! kdocument.getElementById("MainDataForm").textSubmitted.value=submittedCount;
/ c8 C- g- z6 K; _/ A: Ddocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;
% u. U2 d4 S3 ?# C9 w/ ndocument.getElementById("MainDataForm").textReleased.value=releasedCount;' k2 ~) S5 w# d* {% G: ?+ j8 }
document.getElementById("MainDataForm").textCancelled.value=cancelCount;
9 F2 E% ^5 R) r# {! ydocument.getElementById("MainDataForm").textTotal.value=totalCount;
/ p3 t8 L' X% z$ T# M; z9 F
) h& G# {* G7 v. ^- R |
|