PLM之家PLMHome-工业软件践行者

Teamcenter二次开发实例教程-报表开发教程

  [复制链接]

2019-7-10 18:59:24 12817 10

admin 发表于 2013-10-4 14:10:19 PLM之家手机频道 |阅读模式

admin 楼主

2013-10-4 14:10:19

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

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

x
Teamcenter二次开发实例教程-报表开发教程
8 @8 ~; t5 v6 f& [, v* }! N& Z' ]. m4 P' M) g
   在大多数情况下,我们为客户做实施时,采用的是重新开发报表的功能。以满足客户多种多样的报表模板。然而Teamcenter8,9对报表开发有不错的支持。我们可以通过简单的配置开发出功能强大的报表。本文就Teamcenter OOTB报表技术展开讨论,希望能在众多报表开发方法中再增加一种可能性。9 K9 F: `4 u' o6 N5 E4 z- y. ~
   下面我对两类报表开发方式优缺点做了个简单对比
# y5 T5 w- G3 @  n: [ . |5 q& U( J# L; \1 t; V
传统报表开发手段4 ?! }0 h; X8 l* f" A, Y0 M
OOTB报表
, ?1 D! h& P3 s3 c( z比分" z, j+ k( j6 |4 o9 x0 U
1
; I/ X& L& p4 Y/ \" p+ w9 ?自定义模板,灵活多变
, m: I0 t' q2 o  K格式不能完全满足客户需求, ?, Z4 R. @$ r; L1 W% S4 f% d3 r
或非常难满足客户需求/ J; c  E+ x7 o6 N
1:0
+ j- P4 f0 O/ _: b/ Z; {3 @! Y23 {" j+ d$ n( J4 L
大量开发和代码维护( `5 a; X0 \5 u  V6 G
或用POI,Excel报表
# D1 v7 b$ R! `开发量小,仅需简单配置
9 Q9 |4 ?4 N* g5 e! h% ]" j1:1
. b3 O0 w0 i' y2 Z7 D% M2 t3
) x- ?2 }! R5 B" V7 J0 u遇到大数据量报表生成不了# o; ]" ^: w+ \' H) Y: x( O
速度很慢$ ^0 S* h; {9 p8 I* E
处理大数据量有优势
$ ~' x+ q5 {1 L. h, M& K) e; ~速度非常快
  `7 y% T9 w$ k1:2
: \6 r* k$ ?" r1 I4
9 ^& o  l0 p: @4 t; W开发周期长,BUG
, }! r( b; ]. Z5 H$ d' R开发迅速容易
; ~& \! _0 f; e" Y1:3# I6 @0 z8 ^$ @, d: r, z
  K- s$ v+ ]9 _$ Q  Q
一、报表生成
/ U/ H: ]; Z  W5 v+ n6 j. |9 }首先来开OOTB的零部件BOM
, {# d9 T, u/ ^2 }8 U5 y1 ?1 y  `( {( {) u9 ]
右键点击顶层部件,生成报告。& p8 ]- C& U  w1 y" m
: m/ e7 Y" ]8 N/ s
出现报告生成向导界面,选择PS – BOM结构,下一步
# f, D& x0 D+ D+ U) o# i" G
& C+ p  d+ c# ^$ i, pOOTB为我们提供了两种方式的报表:
7 H8 ]7 J- ?' ]  f, |) G HTML! }( H( x9 u2 ^
 XSL6 z5 |2 `9 V, ]% E! q
每种报表都有对多国语言支持版本,所以下面对话框中有4个选项。我们选第一个。* G7 n3 W: o' K* c0 j
( @1 A/ K3 o8 U/ T
生成报表如下:
" ~& g' G2 I) K, l5 l9 t" Y! _2 b  L  C
& v! D; E# t; o! p( H" V" j
二、报表配置; D0 y2 e9 x' K0 F" X
报表配置涉及两个Teamcenter应用程序:5 C& {" t; A* s- u
 报表构建器. n, R& R# w" k6 a! b, V
 PLMXML
$ p- c) n4 K* K1 C报表构建器主要定义报表所应用的资源、模板文件和PLMXML导出规则
; n) ?+ }+ Y6 N, N6 W9 ~6 f) m# v' s0 X% P' S# Y- C1 T$ \
PLMXML主要负责以PLMXML格式导出BOM数据! ^! f- c; n  s7 E' D% K& D
$ y& s2 v- ]/ b, t; `6 B4 w% j
' U- D  m/ b6 S. \+ l) F0 Y
三、应用举例# s8 Y2 C) Q% L5 B1 d" L/ `5 @
   下面对于一个具有广泛统计意义的功能用OOTB报表方式来实现。需求是:统计零件在整个BOM中的使用次数。- }3 l0 O) Z5 K! |* ^
   对于这个需求我们只需要增加一段带计算功能的代码就能实现。先通过系统的搜索功能找到html报表模板文件。
7 f+ e7 Z$ I" h! L7 _. A% w6 s! [8 I0 \
选中找到的数据,右击,命名引用。" r; Z$ x. L- D0 y  ]- Y

- R- x1 w, ?4 s/ t( w0 O4 C& c- K5 ^点击导出,把模板保存到本地。
! U. W) Q  e2 z# l1 l& a7 T1 P( f9 n7 ~- Q
下面对Javascript有一定要求。5 E" ~8 K* I; V" g4 A
首先对表格增加一列来容纳计算的总数量:* B8 J' p5 E0 a6 U1 a. D
6 K% k! h; T0 q# r3 `# |, ^
在xsl中找到上面两处代码增加、修改红框部分。' i3 P' h9 B4 f! I
定义如下函数,并且在onload事件中调用
5 F) m5 Q  L$ o* ffunction showPart(){$ W0 R" ~. Z8 u
​​​//获取html的表格对象
, Z" o# V0 z. \3 p, k2 `2 f: ]​​​​var tb = document.getElementById("table");
# b, q3 P, m% U" _! L: j* i* a9 e​​​​//获取表格行对象9 ^; b6 |6 y) f/ d8 |
​​​​var rows = tb.rows;
" g: ?+ u) s$ F1 l2 U/ S​​​​//循环遍历table所有行
4 z: a9 e! h1 @  V. ?​​​​for(var i = 3; rows.length>i; i++){3 O- |4 X: C! H% `2 B
​​​​​//获取每一行的零件号# Y# T1 G& D3 G; i
​​​​​var itemName = rows[i].cells[1].childNodes[0].innerHTML;
6 J( M7 K' `' B/ M% J  C/ U" s​​​​​//初始化零件总个数
; m; E: L! X  y0 |​​​​​var quantity = 0;
  b: u  A2 v  {  V# |5 `) O​​​​​//循环进行比较& B3 r- ]5 X9 B- E* k. K
​​​​​for(var n = 3; rows.length>n; n++){! r* n& W9 |; Y8 W3 V
​​​​​​//获取每一行的零件号
) b3 @+ X% Y: c3 J' k​​​​​​var itemStr = rows[n].cells[1].childNodes[0].innerHTML;
3 I4 W+ e: W6 x  ~/ E7 p- c/ W​​​​​​//获取零件数量
' j; f1 q: V4 }$ h0 k5 _- U% k. B​​​​​​var qt = rows[n].cells[4].childNodes[0].innerHTML;
; J% E" k: b: V$ u/ A) w​​​​​​//判断是否是相同的零件* B* [' u3 g7 Q' t7 V+ t
​​​​​​if(itemStr == itemName){; F- P( n& |8 j) g! h; j( i) |- v4 d
​​​​​​​//若零件号相同,把数量进行累加) [/ |8 {+ C7 q6 k& q) Z4 e& h
​​​​​​​quantity = parseInt(quantity) + parseInt(qt);' a6 y* q" P  u6 r; A" B+ T' ?
​​​​​​}​( Y* k) g9 f& f+ T: u1 [3 t( l3 X
​​​​​}
4 Q2 k1 h# b2 b2 i" P  Z- _​​​​​//在统计列显示总数量
& x+ m: Y0 ]+ ^0 L1 ^​​​​​rows[i].cells[5].childNodes[0].innerHTML = quantity;/ r4 B1 @' I- L: ]  }& Y
​​​​}
7 T1 Q/ J: j4 N* i# v9 |​​​}
+ i6 {0 E7 X8 y/ ~: m修改好后,保存回源数据集。注意先删除原来的再导入新的。1 q* M8 j/ w7 L
  I0 o- ?  D+ t9 g6 R5 u5 I# Z' c9 Q
6 e- c: H  B% p& O% R- ~, c- i
重新生成报表测试下:7 p8 T/ y; [; q$ r
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复10

magic_benny 发表于 2014-12-19 13:38:29

magic_benny 板凳

2014-12-19 13:38:29

支持一下楼主,谢谢了
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

ke111026 发表于 2015-12-1 14:03:02

ke111026 地板

2015-12-1 14:03:02

ddddddddddddddd
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

linnan 发表于 2017-4-11 16:52:27

linnan 6#

2017-4-11 16:52:27

支持楼主,非常感谢。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

656290267 发表于 2018-6-3 11:17:10

656290267 7#

2018-6-3 11:17:10

必须认真学习这类资料。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

Edison 发表于 2018-7-4 16:08:19

Edison 8#

2018-7-4 16:08:19

666666,给力
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

jcy2024 发表于 2018-10-12 11:15:15

jcy2024 9#

2018-10-12 11:15:15

632255555555
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

zhu.boo@163.com 发表于 2019-7-10 18:59:24

zhu.boo@163.com 10#

2019-7-10 18:59:24

ddddddddddd
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了