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

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

  [复制链接]

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

admin 发表于 2013-10-4 14:10:19 来自手机 |阅读模式

admin 楼主

2013-10-4 14:10:19

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

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

x
Teamcenter二次开发实例教程-报表开发教程& G+ N& J! m6 a( r, s

* s. m# d- ^4 o   在大多数情况下,我们为客户做实施时,采用的是重新开发报表的功能。以满足客户多种多样的报表模板。然而Teamcenter8,9对报表开发有不错的支持。我们可以通过简单的配置开发出功能强大的报表。本文就Teamcenter OOTB报表技术展开讨论,希望能在众多报表开发方法中再增加一种可能性。
# V. \1 U6 h+ b   下面我对两类报表开发方式优缺点做了个简单对比
3 T- K% n2 l+ a: X) T4 D + v1 W3 `  r, H) M  \9 i
传统报表开发手段
! I5 ]4 i  S9 G1 [! Z8 l" g1 _0 UOOTB报表
1 z) G: l+ b3 d# l$ ?7 k$ a2 ~比分& k9 Q, [! S+ R7 m6 b
1
( V5 U) ]4 ?2 d+ v1 @7 h自定义模板,灵活多变
+ X1 t7 E' h2 u0 J* c% P/ _格式不能完全满足客户需求2 y( g' {( F+ D* b/ Y
或非常难满足客户需求6 I3 Q0 s" V1 f3 z# F1 t
1:0
2 T) ?# \9 W8 S& @27 X' ?4 P5 E: M; `' t
大量开发和代码维护
5 v1 O+ _) t: {或用POI,Excel报表
% S# G3 Q4 `, ~6 Y$ H5 ?4 {1 i; [5 I开发量小,仅需简单配置6 T) w+ n" V; F3 c
1:1
5 b7 O& }, v% l3 d7 m35 r# x9 E' `: U% W' \
遇到大数据量报表生成不了
( e0 `5 L# F: \  j. a- r: Y& I速度很慢
- J2 g0 f9 b( ^5 v9 w0 E1 M) f处理大数据量有优势
; w+ h& q" y- x5 A( |速度非常快
& [) I) b- B7 h1 a  i  `: Q  M9 B+ D1:2
- r# `8 |7 W: Q" r( X$ k2 I$ I* N4% k5 I* V. u0 q* K
开发周期长,BUG
" ]4 k  k7 m1 z% t9 y# v* r开发迅速容易
+ h7 z, e1 r7 t+ k4 f1:3
' |: V  A, y9 ` - g5 Y, k; d2 w) ~" N  h
一、报表生成- D$ K' o- \; W
首先来开OOTB的零部件BOM: U. I' {1 k1 C0 p0 G

- n4 w' i- W* {; j5 ^) s6 m- @右键点击顶层部件,生成报告。
5 s, R3 o# a+ V. C, `
/ X4 {# g* m0 D9 V2 M' v) K, L出现报告生成向导界面,选择PS – BOM结构,下一步
  C) ]$ D$ p" c& f! ^8 x
& F% `5 S, `( @6 j$ FOOTB为我们提供了两种方式的报表:
, b* D! n) O. C: q: n& k% N) Q HTML% A  ?7 N3 ~& X& ~6 W$ s
 XSL9 R: W* k/ r; ?+ c
每种报表都有对多国语言支持版本,所以下面对话框中有4个选项。我们选第一个。6 C% o! K4 b4 O& t+ x. a
. b3 n$ i$ D/ r& O( O7 ~( H
生成报表如下:4 {8 R6 s0 z) p- z% ^1 |
* k: c! j0 E5 Z' G. e* r

9 _" L6 t4 R! P5 r二、报表配置
5 y' Z$ @' k' Q报表配置涉及两个Teamcenter应用程序:
1 _. A3 C$ A- K, a  z# g 报表构建器/ R9 d" C7 s# |; M+ Z
 PLMXML
1 c7 T0 n- g" q+ ^0 S0 H$ [  ~% `7 \$ m报表构建器主要定义报表所应用的资源、模板文件和PLMXML导出规则  s$ f% z) j  i* z5 A  r
! S4 r& H' F/ P/ ?7 G0 ~* ]
PLMXML主要负责以PLMXML格式导出BOM数据( r. u6 v4 i  s* G; l' `& Q( V4 u
' Z8 z5 ?6 K& ]1 ~
" F4 _. w( a- _5 l
三、应用举例# j# F3 E; `4 c% a
   下面对于一个具有广泛统计意义的功能用OOTB报表方式来实现。需求是:统计零件在整个BOM中的使用次数。) w: G- L3 [( I6 S1 u( ]
   对于这个需求我们只需要增加一段带计算功能的代码就能实现。先通过系统的搜索功能找到html报表模板文件。. T2 b6 V' h2 B3 [& L
7 a5 `1 Y  M8 M9 M: \# L
选中找到的数据,右击,命名引用。
, L' Q7 E) l0 i9 c2 p0 B
4 u# U7 ~3 D! \; s& m5 M点击导出,把模板保存到本地。
2 ]! X3 Z9 W" r+ ^; E2 B% N
& x& b, H9 j$ _( c6 [/ u! K/ P) K下面对Javascript有一定要求。
7 ^" f( T+ P1 o首先对表格增加一列来容纳计算的总数量:
4 ]0 q! f' e  s7 d
% o1 G0 o7 D) Y! \, d在xsl中找到上面两处代码增加、修改红框部分。
2 k0 a4 o$ W7 ?9 H; f; r定义如下函数,并且在onload事件中调用
3 M8 K& g, c) n" {function showPart(){
8 l5 P. O9 N7 E/ L. T' r- [​​​//获取html的表格对象
* B4 V8 `# ~. q9 S) P​​​​var tb = document.getElementById("table");
& s0 |0 Y! E9 o- V5 |3 [​​​​//获取表格行对象
, D. p: |' g; Y: J9 u1 ?​​​​var rows = tb.rows;5 {5 ?2 _. K8 M2 T! `
​​​​//循环遍历table所有行
+ C) l1 i4 ~1 Z: \​​​​for(var i = 3; rows.length>i; i++){
) _3 _  w- e; [0 }! n; x1 ~​​​​​//获取每一行的零件号) i! y6 X0 k$ `: b+ F
​​​​​var itemName = rows[i].cells[1].childNodes[0].innerHTML;9 j$ v! w% {1 D. A/ S( V1 b3 ^& |# n
​​​​​//初始化零件总个数
  z" m+ B+ R+ T& R: M& h; O​​​​​var quantity = 0;
7 Y8 R6 X) K% u  \6 a! A$ l​​​​​//循环进行比较
. n9 O+ D* r: o8 T8 j​​​​​for(var n = 3; rows.length>n; n++){
5 G% Q, Z. @! ?4 @! U9 r5 X​​​​​​//获取每一行的零件号( C! d3 u# u% L
​​​​​​var itemStr = rows[n].cells[1].childNodes[0].innerHTML;; ?5 }8 j' w( N; K4 Z4 t6 I
​​​​​​//获取零件数量% ?: A2 |; f# u9 }% r
​​​​​​var qt = rows[n].cells[4].childNodes[0].innerHTML;
+ r+ N" y  a0 }​​​​​​//判断是否是相同的零件0 f, [& [3 Q6 e; b
​​​​​​if(itemStr == itemName){8 X1 U7 g/ X  B" L
​​​​​​​//若零件号相同,把数量进行累加& t4 ?6 a. p: e) N2 Z; z$ W1 h/ Q
​​​​​​​quantity = parseInt(quantity) + parseInt(qt);$ _9 g# K( Q6 O& a4 L* ?- A1 }' _
​​​​​​}​& J2 ?- W+ \* D6 \" v+ `* T, n) ]
​​​​​}! r& ~' o! Z1 r
​​​​​//在统计列显示总数量6 S5 F- q) r" J/ ?4 J+ ]1 _
​​​​​rows[i].cells[5].childNodes[0].innerHTML = quantity;% C2 t* ~* B6 [& W( d; {
​​​​}" e0 {/ d0 y. m$ b& Q: T
​​​}
! I( T6 W& U/ O; B修改好后,保存回源数据集。注意先删除原来的再导入新的。
! j9 x, b1 _' }6 l4 o, k# \0 z  j: Z3 {& S5 E) C4 E4 s8 ]

+ U- j9 q' u1 N" Z; _: b+ J重新生成报表测试下:5 f. I% j/ ]7 `. @$ n1 e# A
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了