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

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

  [复制链接]

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

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

admin 楼主

2013-10-4 14:10:19

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

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

x
Teamcenter二次开发实例教程-报表开发教程
4 g. l" t( ]8 U0 p8 ~+ f. l2 Y6 `$ B) F
   在大多数情况下,我们为客户做实施时,采用的是重新开发报表的功能。以满足客户多种多样的报表模板。然而Teamcenter8,9对报表开发有不错的支持。我们可以通过简单的配置开发出功能强大的报表。本文就Teamcenter OOTB报表技术展开讨论,希望能在众多报表开发方法中再增加一种可能性。1 A* }7 \( @/ h# I0 |1 T
   下面我对两类报表开发方式优缺点做了个简单对比
; c# B5 A- S6 A6 q8 `. Q * T7 @2 T  R5 R- z# x; y
传统报表开发手段
" u4 h, ]% `# L: `4 QOOTB报表8 q( W4 c& u6 V( }5 r) I" c
比分* `4 o3 F; Z1 [6 X( ?! g
12 G4 \2 a' R( Q: o5 y0 \% o
自定义模板,灵活多变! {' t6 i" {  ]
格式不能完全满足客户需求
: }2 d1 V4 J- @" s* H! B/ m或非常难满足客户需求6 c+ Q/ P5 f& ]
1:0
, t# T* U+ g) E2 s2 G- R; Y  g, L3 }2
1 \: [! w; N: {  E大量开发和代码维护
1 ], ~4 [% |3 ~' d# r或用POI,Excel报表' K2 B! L! H6 [; B1 {8 C' n5 Y
开发量小,仅需简单配置, o7 q# t; e+ u) ]
1:1
5 S2 _/ L6 o% z: U/ r) C3
# y6 s" A6 }) f! R遇到大数据量报表生成不了
% H1 P, [, {( z8 J6 |0 d( n) S% U速度很慢
+ p% F1 |! E- s! }0 n  m处理大数据量有优势; k9 b& O0 i- |" ^8 B: q* x/ ]" I
速度非常快7 _) U- K# Y2 W2 C3 F6 _
1:2
: A5 H3 w% q6 ^) M/ {  V6 W. P49 A- C# g6 z" T6 @7 p' |. D, `
开发周期长,BUG# y* a/ F) D. p% d. a
开发迅速容易
/ |; I" Y1 n1 I8 R; ~1:37 A/ s  L$ y1 s/ u' B* C
8 J6 j. ], P* H# ~: H5 a$ }
一、报表生成; x# O" I! J! d' |$ {
首先来开OOTB的零部件BOM5 o. o* T7 y. J% I7 |: O
$ q( ~/ n5 B, h- L  {
右键点击顶层部件,生成报告。
6 R5 N( g8 w! M8 H$ |" x+ y1 }* P6 `5 o2 b- i  A* Q0 r0 f. d
出现报告生成向导界面,选择PS – BOM结构,下一步
* i# f1 q/ o, m# P4 ?5 O" \' E  r/ A5 }" K
OOTB为我们提供了两种方式的报表:
8 P5 \' h& p/ k6 p( b2 o  Q HTML
6 M, D, m7 g9 e5 V# ^& i XSL7 f" U8 @0 |2 p" D  S# F: M% j
每种报表都有对多国语言支持版本,所以下面对话框中有4个选项。我们选第一个。
3 C% \! o  n9 B- L3 |& E. ~6 g- g
生成报表如下:5 P  }' G. [2 t7 l7 N
3 l( y6 p. o8 W  E# L
4 x, V3 c: @, _, w
二、报表配置( g; |9 p8 M8 R% i1 _
报表配置涉及两个Teamcenter应用程序:" i' L3 h2 I1 C8 l; D, d
 报表构建器# X7 b& ^2 P) K+ b1 a5 F% G
 PLMXML
" H( x* ]9 V; _$ K报表构建器主要定义报表所应用的资源、模板文件和PLMXML导出规则" }* Q9 t0 g# b

4 [8 ]5 w. I$ ^4 ^PLMXML主要负责以PLMXML格式导出BOM数据
' o" z- \  J8 \& Q+ K
2 |, E! z6 K8 P1 e/ o
# m& {$ y# n- e2 r+ d4 p$ {7 W三、应用举例5 }7 r% R1 R8 a$ n/ Q( H" E5 R
   下面对于一个具有广泛统计意义的功能用OOTB报表方式来实现。需求是:统计零件在整个BOM中的使用次数。; |0 E8 m4 Q9 `$ D( W
   对于这个需求我们只需要增加一段带计算功能的代码就能实现。先通过系统的搜索功能找到html报表模板文件。
% c! c) K7 N0 h. t8 R, O4 E5 `( V! S6 [4 q3 p# d! Q: o5 K# E  a8 x
选中找到的数据,右击,命名引用。2 W$ O4 A' Q* ?

& K1 a( r, g" ~; t( U点击导出,把模板保存到本地。, k. a, q2 _- z" T* V, _

  p- I8 R& b# {! O4 d下面对Javascript有一定要求。$ K) H& K& ^, R/ d3 e8 E1 ?, y% Q
首先对表格增加一列来容纳计算的总数量:4 \2 U- Y0 U7 y2 h8 t  ]/ L5 T

4 e( t" _  Y1 M在xsl中找到上面两处代码增加、修改红框部分。; G5 H% V- c4 K1 d) }  x
定义如下函数,并且在onload事件中调用% j8 C3 h/ n! V5 F7 v5 n. S; N/ c7 i8 t. M
function showPart(){6 h5 I' w* h7 }: m. b
​​​//获取html的表格对象4 w. c6 y9 z0 Z: `, p6 Q: a* T6 _0 ?$ o
​​​​var tb = document.getElementById("table");' k$ j. @0 L4 G. o2 `* ~
​​​​//获取表格行对象% c; j  `: k( M/ Y8 q9 f
​​​​var rows = tb.rows;
6 V0 P# |7 C2 G+ Y1 U1 u6 R& g​​​​//循环遍历table所有行  J; a6 B* F1 u& |7 n
​​​​for(var i = 3; rows.length>i; i++){
0 Z7 ]0 m3 ]( E​​​​​//获取每一行的零件号
0 t$ m8 V8 |- D& v​​​​​var itemName = rows[i].cells[1].childNodes[0].innerHTML;3 ]5 U  b4 z# K( b% Q4 `) F
​​​​​//初始化零件总个数
1 V6 @" @4 q5 Z$ b6 L8 h: @" w​​​​​var quantity = 0;, K1 ]( w, f) `- E# G6 S3 H1 E
​​​​​//循环进行比较% Y! P( q! m: m0 D
​​​​​for(var n = 3; rows.length>n; n++){0 e1 O( g+ J  _% Z6 e# }- @) g
​​​​​​//获取每一行的零件号
. k$ h* W$ H" O$ K) _% ]​​​​​​var itemStr = rows[n].cells[1].childNodes[0].innerHTML;1 u' ^0 K8 [: D3 u' T
​​​​​​//获取零件数量
4 G& h( C- g) F  ~  R0 q​​​​​​var qt = rows[n].cells[4].childNodes[0].innerHTML;9 D) O$ f: Q8 A
​​​​​​//判断是否是相同的零件) F4 x5 V/ y' G% X0 i
​​​​​​if(itemStr == itemName){2 [  Q4 F! ?0 }& S& Q3 w% e
​​​​​​​//若零件号相同,把数量进行累加6 v2 W8 r& G+ y
​​​​​​​quantity = parseInt(quantity) + parseInt(qt);0 C, u9 a1 H4 o5 ~# v! k
​​​​​​}​
( O7 H/ b9 g. a​​​​​}0 Z# m& w8 H$ Y: l
​​​​​//在统计列显示总数量
  u# s) N! e8 \; L5 }​​​​​rows[i].cells[5].childNodes[0].innerHTML = quantity;$ |& N- h5 H+ ]" Y* [( h8 {
​​​​}
* O/ i" Q5 f2 a8 F1 P& Z) z( o​​​}* C4 Q6 R# _; ]7 E2 q+ }" G) i
修改好后,保存回源数据集。注意先删除原来的再导入新的。
* W; w8 \) L3 ^* S$ p6 {# B5 W9 Q! b( O' Y3 @9 W9 k# y. D0 i/ e; h

6 p; Q2 R+ W, R/ n重新生成报表测试下:& X# T$ T: {, Z8 e! F' ~5 E3 ?
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了