|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示2 F$ s( }7 Z O; k" t0 i3 j9 z
结果如下,点击Change Management标签,自动弹出统计界面& u% v/ e" g/ D3 _) K- X
" R' }' p Y5 R% N# m$ B
$ S2 p8 [* N" y- P4 I$ S+ H& n/ p0 `8 J9 S
* {2 u8 [( W/ S+ V% d
0 Y0 h$ i7 F o; _(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名3 G1 S8 O8 s- E3 U1 n- D
2 H" m3 f2 n1 j \4 ?
& Q4 b2 a+ w7 j) c(2)关联一个 on load的事件,使用 JavaScript 的方式
( a* g, i# ?9 z; s Y; m
8 t' a& F" e6 a- M1 f1 Q: Q2 r; C. ^* v( n( ?% Z
(3)对整个事件进行代码
( r! Q; B5 S- h1 L% `0 ^( o* t8 `
& r3 i+ l' O( @% T9 q: w6 m$ K- M2 ]' _6 `# k) a& ^% e% E
完成后即可看到相关效果。6 m) F8 i' m3 v; ]* w* E r+ T5 Z
- C: ~: L' A3 P' V# A, R# b1 _9 ]- j
代码如下:
$ I8 P, P8 X1 r8 ^0 M g; N; D9 V6 q* U$ C9 [
//get the ECR Collection
% n0 u4 `7 _4 j! Qvar newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;1 V. V3 k+ f7 L7 f" u( Z
var currentItem = null;
5 W: t# u, N6 ~var currentState ="";) s$ o4 \0 t0 U8 B) l. U' t3 I. [
var innovator = aras.newIOMInnovator();! l# m% x2 M; l
var item = innovator.newItem("ECR","get");4 R0 ^/ @; J8 ^( a
item.setAttribute("select","state");$ V3 }! y8 n5 t$ x0 ]. W
var ecr_items = item.apply();( L5 q% @. L! g" m: p& P
var totalCount = ecr_items.GetItemCount();
7 n# V1 [! }8 i& ~0 F. Kfor( i=0; i<totalCount; i++) % T! Z2 c, @0 J$ ]
{ ( u* f+ u8 T0 ^. K
current_item = ecr_items.getItemByIndex(i);
9 |' c0 T* }% x: ~$ d5 p current_state = current_item.getProperty("state"); 1 F; N, V9 g. t) {% D& ?: a
swiTCh(current_state) / U4 L1 p) y; u. v; v+ D
{
1 D8 p, w7 P& Y$ k; g; f case "New":( {2 s8 ~; V. T! W. i( j' s* f3 I
newCount++;9 J2 |. D7 P! e* z! F4 x% r
break;8 Z4 M4 A7 u/ T
case "Submitted":
( }7 @4 }% T) t submittedCount++;
4 j) ?7 m+ o: I" E3 R5 @5 m6 U break; + w( s& z, |/ |
case "In Review": : }: O' |: I/ }2 m/ x; H% u
reviewedCount++; 9 _" Q- u( i$ ~
break; 7 D r }6 [+ o3 t
case "Released": 9 Q9 ~. Q% y/ u1 I' v5 u" \" `, v
releasedCount++;
/ |* b3 M1 o3 ^& i3 ^ break; ! V/ |8 Y% ^# O8 F4 {. x; V4 B6 b5 S
case "Cancelled": 0 z2 ~1 ]3 n" R1 R- [( B2 S
cancelCount++;
5 s7 d* |/ _) ^2 C4 M1 W break; 0 M" q( Y" v a+ j$ v
}
' N) {- B. r0 Z) q' t}
0 t" s+ M9 n2 N/ Vdocument.getElementById("MainDataForm").textNew.value=newCount;; |! c6 _8 \! I- H0 m8 ?$ y' ^& {
document.getElementById("MainDataForm").textSubmitted.value=submittedCount;
) O$ ^- {7 S" ^ v6 Fdocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;8 L! S; a2 Q K1 t6 @4 i
document.getElementById("MainDataForm").textReleased.value=releasedCount;
: h3 s$ Q0 K1 r: F& \5 K* \document.getElementById("MainDataForm").textCancelled.value=cancelCount;% Q8 S( u: @1 z/ V( A
document.getElementById("MainDataForm").textTotal.value=totalCount;* e' h! t, F7 W4 |8 x9 S
# a0 t6 Z( e+ `. T/ |( C8 G% N' R' T
|
|