|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
8 r# s# T3 m4 C7 H6 c2 W' g结果如下,点击Change Management标签,自动弹出统计界面* w J" r; k" h$ ]- @
9 ~+ j `) _7 Y* M" k: d0 R% o
; R5 u. ?8 G7 C* D2 L( i2 q4 C% W
4 Z' X/ c) O* N# g/ R5 o( D$ d
# U7 t/ T. w" b0 E' V% R* h! J( g6 ~$ p0 T- U* v3 N$ r2 l
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名: v1 y$ v1 |& T) a6 |' p' V5 m
2 J9 m! z, r1 N4 M4 X
7 p6 b1 X1 g- e5 y' H
(2)关联一个 on load的事件,使用 JavaScript 的方式
) k) |- _; |4 p3 M+ \0 Z2 ~
3 ]( \3 E# u8 U, o3 }- z \* g `; R1 z/ m
(3)对整个事件进行代码- L( x0 U o8 ]/ R( `- N
8 `- d8 l6 n- X0 k1 H/ [1 G1 N2 C
, f1 D4 d' b5 t. `6 l! w- O& p6 l
完成后即可看到相关效果。
9 ~! X" O, E, M3 u7 w, p+ o
2 r5 ~6 A/ X. v! B V8 b. ?4 W- o/ \代码如下:
/ i) A. S7 _' Q3 f
& r0 Q/ ^. G2 V/ z& c//get the ECR Collection
6 L ?" H5 a, d+ D, O/ ^4 o% f: V, uvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;) D: z+ _4 j( [5 F
var currentItem = null;
1 i6 D+ \/ D! }; A& K; xvar currentState ="";
9 ^4 y4 P% k4 v; z2 E% Q% n. }- l& Evar innovator = aras.newIOMInnovator();; W# `9 { s) }2 r( n T
var item = innovator.newItem("ECR","get");* N. W* I# R: C$ ^0 J3 J k1 F$ S# N
item.setAttribute("select","state");
7 I: q& P7 a7 Yvar ecr_items = item.apply();
! |% f) B% H& A9 K" Qvar totalCount = ecr_items.GetItemCount();
& }7 a3 O n5 ]. f7 Sfor( i=0; i<totalCount; i++)
1 t. g4 W- N4 x" @) R" v6 O$ f& \{ ( Y# M& s/ O% o% Q: @
current_item = ecr_items.getItemByIndex(i);
# Q8 b ^9 i9 x9 ^4 N current_state = current_item.getProperty("state");
6 u8 s' @7 N; o swiTCh(current_state)
4 P: I7 |- D6 b0 \$ k5 q K { Q* p( ]' J) x9 C
case "New":
, @0 K, G. v( v! D5 Q3 k. Y& M: d newCount++;
/ y! ?- ]9 T9 V break;
" H* K2 a: s' ~" I9 n8 a7 l case "Submitted":
) f8 K: E( w8 S" J1 ` submittedCount++; ! D P7 m# ?$ ?, }: y0 ]; O+ Z
break;
# `0 } a6 i! Z case "In Review": . A( K* H9 h+ S9 D" ?- R# {
reviewedCount++; % S5 y p- A" ?6 D/ Z' L1 \3 R
break; 0 U6 Y3 [. t" F. s3 V' y6 b
case "Released": 1 Z0 N8 Q' _" b0 n# M
releasedCount++;
' U) n7 L" }$ x3 {6 L' K break;
% W( F4 I& N8 d) o case "Cancelled":
4 I) u3 _3 _7 W9 l) Q+ ^ cancelCount++;
- B7 c" K) q3 t$ k( s break;
; D: S5 j% D. F/ i/ |; ?* E) y }
6 w' y, E7 T9 Q; ?8 I" S, ?}- a2 F" r' B1 S" w9 m. i
document.getElementById("MainDataForm").textNew.value=newCount;
% S& O! B8 p# Wdocument.getElementById("MainDataForm").textSubmitted.value=submittedCount;4 K1 f9 J: B: n) e" A& h
document.getElementById("MainDataForm").textReviewed.value=reviewedCount;7 f# D) f: S' k! T
document.getElementById("MainDataForm").textReleased.value=releasedCount;" g! U3 O6 Y# }/ J! l, j" ^0 |2 Z
document.getElementById("MainDataForm").textCancelled.value=cancelCount;+ L+ z I4 k' k) @6 m1 ?+ e
document.getElementById("MainDataForm").textTotal.value=totalCount;* @1 N3 L/ N% K1 z( e+ m8 _( |5 z
7 N7 G7 X0 y( v) I |
|