|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示) p/ D+ F8 |* A- e0 W/ F
结果如下,点击Change Management标签,自动弹出统计界面 g2 M% c! W- A- j I/ c$ d$ s$ N4 l
! l0 v2 ^9 [0 u9 A
8 u4 x4 {% G+ B& o$ \
5 j& O3 S: M/ l) \) i
! c# Z+ x( n0 W1 h, ^0 ^. b: x$ ]
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名
) E* {! @5 d _
4 B0 W7 u% h4 L8 L# T# ^
1 Z0 v0 f. a, X% @! i(2)关联一个 on load的事件,使用 JavaScript 的方式* X" v' Q3 S6 J
$ o' Y. m9 l. |6 J! S$ E3 g a
9 q: [5 ?3 L$ S' ?1 b+ M5 B4 u1 Q(3)对整个事件进行代码
2 S/ D% i l* ^6 E5 L
3 Z* i& e9 `# ~* A7 X
, n% l8 J: ]+ k0 _1 p' W完成后即可看到相关效果。
* v' m2 P2 J/ d5 f/ P$ ]4 o5 ^6 e* c
/ P9 m! V6 k& g, G" C5 C代码如下:
+ _8 \' Z3 K v# X. Y: c* [
! u9 @7 r) K: E) ?( n* z6 ~; p//get the ECR Collection
! S2 g! G& ~+ ?' b3 jvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;
) G" Y) o0 S8 Hvar currentItem = null;
. r! x% N- U+ X6 \1 j* Nvar currentState ="";/ u8 u: x7 {6 t0 y
var innovator = aras.newIOMInnovator();# G0 k$ c7 h4 X: `/ Q0 G% ~' g3 s
var item = innovator.newItem("ECR","get");- R! r2 v, f- W0 I0 \" D5 @
item.setAttribute("select","state");
4 C& u8 C! R! {2 \var ecr_items = item.apply();0 A/ K9 @0 {( J& J
var totalCount = ecr_items.GetItemCount();
2 m. Y% S( P. x! s+ r! ^for( i=0; i<totalCount; i++)
7 O! `0 f& V0 c{
' |" G! I! v1 g2 x: K4 w: G current_item = ecr_items.getItemByIndex(i);
. l* k7 B2 |$ | current_state = current_item.getProperty("state");
2 o3 i, M: b, M9 g5 s swiTCh(current_state)
4 f9 K: T. ` r# N1 x {
/ N9 T0 H, g$ D case "New":
8 C( r; c }/ z newCount++;$ e" ]7 t! A. q5 K( o/ O3 c
break;; V2 O4 k' b; y2 _, H, P4 V
case "Submitted": 3 X9 ^& @ K2 ] i9 ~
submittedCount++; 3 ~6 b$ r5 }9 P9 u
break; 8 c- \( `( }- B
case "In Review":
) J/ K5 l8 S8 o2 f v3 }) v reviewedCount++; 4 i3 `4 G) j5 [
break; 3 ]( Z, y' {0 e
case "Released": 8 T4 L4 K* K; N- ~- N+ H; x1 s
releasedCount++;
2 e# b8 k2 a# P7 B1 f1 r4 G break; % c v$ s3 F' L* V) t
case "Cancelled":
3 y2 K7 V' h0 h/ G# R( ~6 ?5 C cancelCount++; & s" K1 v0 C! ]& M# p- C: ?3 S- r
break;
. W1 x2 a8 K8 ]$ p7 {4 { }' T) ]$ U/ P- B. T" y$ i
}
7 D% w: k( k: G1 B2 adocument.getElementById("MainDataForm").textNew.value=newCount;' H3 P. d2 Q0 `2 F3 q& h/ F+ Y: x- S
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;
% U# u8 @% w! l/ n. Tdocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;/ L) Z8 I3 t, s' g/ [ k. G
document.getElementById("MainDataForm").textReleased.value=releasedCount;% ?; `- ^# }4 R" @2 \( w! n+ T% M: n
document.getElementById("MainDataForm").textCancelled.value=cancelCount;, h$ a: l+ W' l
document.getElementById("MainDataForm").textTotal.value=totalCount;- o8 \; U' C# Q: V2 @. `
6 @5 \$ @" r+ t- M |
|