PLM之家PLMHome-工业软件与AI结合践行者

【Aras Innovator二次开发】8 创建一个自定义表单在TOC上展示

[复制链接]

2018-7-16 11:02:36 2557 0

admin 发表于 2018-7-16 11:02:36 |阅读模式

admin 楼主

2018-7-16 11:02:36

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
【Aras Innovator二次开发】创建一个自定义表单在TOC上展示
% g, D* `/ n8 U, l' T  J, g结果如下,点击Change Management标签,自动弹出统计界面& e; E- }1 @1 A' m
5 t7 F7 h$ k, w3 g  P7 f+ x6 O$ L9 L
111.PNG $ w- w. t- w3 N3 [1 I$ i- H

3 x) m- _( v. M4 C; L( ?- j& P4 Q. F/ g, {4 C: r* M# ~
3 |! K. v1 w6 N! i& L
(1) 创建一个 Form表单,名字叫 Change Management,添加相应控件,注意控件ID命名
2 {! W5 D7 U" s6 N
7 ~4 s4 }) T7 i1 F6 F! N 222.PNG ; g" {! b! g( |- ~2 U2 N2 v
(2)关联一个 on load的事件,使用 JavaScript 的方式
" _2 S9 B+ y! F' E# N/ [ 444.PNG , r9 d% ?9 @) ^; o0 M1 P
  y- {$ c" V, x" c& p
(3)对整个事件进行代码
9 u" ~) J* F  z5 H7 f' u6 h 4444.PNG
# A( ~5 y1 Y* k# g% O  W" P' x# y% M5 b
完成后即可看到相关效果。# |/ T2 L$ T% c/ s8 Q+ P

/ ~9 Z  W/ G* U6 ^/ g' l) Z1 J代码如下:
- S: U3 U! |! Q# _) d% k
, b3 }( T' a+ O8 F; ]1 k; D//get the ECR Collection
# _- J6 T! t$ P6 z3 h! @var newCount=0,submittedCount=0,reviewedCount=0,releasedCount=0,cancelCount=0;% K- z% M# T& s! c* }# N0 D6 }- J) ^/ S
var currentItem = null;
8 D% z. N; M4 ]/ Dvar currentState ="";. G6 S% d2 `. }5 Y) r
var innovator = aras.newIOMInnovator();& h+ W+ O, d2 P- c5 A) _6 a
var item = innovator.newItem("ECR","get");' c/ g. K5 c' R4 q3 Q1 p, Z
item.setAttribute("select","state");
1 g8 P+ I' l! s0 b8 W( {! Hvar ecr_items = item.apply();- D3 q. Z$ B5 Z
var totalCount = ecr_items.GetItemCount();0 P+ p( H! Q  ]0 a  }# {
for( i=0; i<totalCount; i++)  5 w0 W) b# W5 m
{ : f( J: D" f$ a% J  `
  current_item = ecr_items.getItemByIndex(i);   
" E5 k8 @$ l  f- G+ J- f  current_state = current_item.getProperty("state");   
0 X0 O0 @- I$ i9 k3 g$ l  swiTCh(current_state)
8 y( Y3 w! K8 m! }  N  { % s" v7 p/ ], w- L' v: y0 r! H
   case "New":- n3 }! L/ f* ~* C% o' }4 Z
       newCount++;+ s; F9 g. }$ }6 o
       break;
) W# l. [* @# ?6 _0 l# Y! D6 K) }    case "Submitted":
5 }- W0 q2 I2 @  H9 S4 `2 U) R     submittedCount++;
: @; W# n4 y( J+ _: z     break;
; |4 g) ?7 d7 Q    case "In Review":
; ^2 Y" I- d7 `0 z     reviewedCount++;
$ A. n0 o( ]1 }2 T6 h+ E     break; $ p5 R4 _+ F% }3 ?
    case "Released": . ~0 H2 C) S3 Q* K
     releasedCount++; 9 [' v' R# s6 s
     break;
( V0 u/ [- v2 g# W    case "Cancelled": ! p+ k) H7 O. r( W! p6 h
     cancelCount++;
1 t0 e& p+ _7 ^     break;  * ]1 N& n7 _* N0 \* s3 y2 O, B
  }
. M( K- e+ V+ G: [  m}
) @! |  U' {2 X2 G4 X( |1 Vdocument.getElementById("MainDataForm").textNew.value=newCount;
4 C; `1 B. \+ l( ]2 vdocument.getElementById("MainDataForm").textSubmitted.value=submittedCount;
  E' y5 J  I/ ldocument.getElementById("MainDataForm").textReviewed.value=reviewedCount;1 O/ z  S9 Z1 D
document.getElementById("MainDataForm").textReleased.value=releasedCount;% p* ?3 `1 J& q& [2 V' c0 d
document.getElementById("MainDataForm").textCancelled.value=cancelCount;9 ]# U2 x. x$ T% l3 `
document.getElementById("MainDataForm").textTotal.value=totalCount;) p- T$ X8 Z- ^/ N( P, e  j' @
3 |7 r) x, G  X$ H$ b9 W
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了