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

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

  [复制链接]

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

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

admin 楼主

2013-10-4 14:10:19

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

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

x
Teamcenter二次开发实例教程-报表开发教程
7 {- x, V/ q  e% P
, c, N0 b' H+ S2 D& I2 o   在大多数情况下,我们为客户做实施时,采用的是重新开发报表的功能。以满足客户多种多样的报表模板。然而Teamcenter8,9对报表开发有不错的支持。我们可以通过简单的配置开发出功能强大的报表。本文就Teamcenter OOTB报表技术展开讨论,希望能在众多报表开发方法中再增加一种可能性。& `% G+ \3 j4 m
   下面我对两类报表开发方式优缺点做了个简单对比- G6 |6 c" O0 V0 k( ~

* L; Q( d4 e: F0 p, z' X2 M传统报表开发手段0 F0 K& y" `* T& v3 ~9 o. ~
OOTB报表7 a/ v% o9 R, ?0 R
比分
2 h$ f  T; V" s11 K: W" t- P- V0 j3 z/ j  b: X# U' O
自定义模板,灵活多变0 j5 o. I* L6 L, D, D. g
格式不能完全满足客户需求1 n8 I. L2 ^; _- q6 I/ x1 H
或非常难满足客户需求
- R# _3 X4 W) c1:0# K/ d- J( o  E$ p: u% o
2
! D# d! K6 ]; d% }% V& [大量开发和代码维护
3 z0 K5 b- g/ a( q/ H/ Q2 m或用POI,Excel报表! u& T4 T* G( x. b9 {
开发量小,仅需简单配置* h! T8 a$ r8 G
1:1
# Q* ^# v+ e& x! j9 j! v7 \" i3
0 z: w3 X" X1 w  y遇到大数据量报表生成不了0 v; T* C- K- z0 u/ C4 }
速度很慢" V7 M5 S* A- a1 ^1 B" k
处理大数据量有优势: _! K" S$ [3 _9 S
速度非常快9 S( F  v, U4 n1 t8 O3 B3 L6 y/ f
1:2- p5 k1 l& O# M# d
4
" j9 e0 [7 }$ P+ l开发周期长,BUG3 x& {( y, @  @3 E' h
开发迅速容易! _* X- ]/ P$ C  J7 }
1:34 _; n) N/ x5 j1 c+ ]
, @: Q; D3 }+ U% \6 t5 d
一、报表生成& i1 M' W( q, o( I. H# H+ B
首先来开OOTB的零部件BOM
- o1 b4 F  e0 c6 m2 \0 A1 A3 F) n+ a: K# [& k* r+ J: G
右键点击顶层部件,生成报告。
" X9 Z) ?. ^& ^; X
- v4 _3 o# v/ f- @0 ~出现报告生成向导界面,选择PS – BOM结构,下一步
" T' e3 Q# V) h; y2 D
6 \: @3 Q/ C3 H  ROOTB为我们提供了两种方式的报表:- [3 ]6 ]; o' N& b
 HTML3 v5 ^+ U8 }2 B. N
 XSL* C  B, z9 T7 M3 h
每种报表都有对多国语言支持版本,所以下面对话框中有4个选项。我们选第一个。
7 ^9 T$ |9 T: W) p: C+ [+ M; ]6 d, K- d5 Q% ~
生成报表如下:$ A/ U" Y3 |; c/ c

# e* L0 Q3 g7 g  B/ A
5 k% G5 Q# j9 G9 U8 p二、报表配置" E& J6 F% L7 V" V2 y1 t
报表配置涉及两个Teamcenter应用程序:2 M" Q& {2 ^1 e% S& _4 o1 [
 报表构建器
! D+ @8 x2 X6 T; y' v PLMXML
% }$ j3 x+ m/ _- r3 I5 W1 n$ s4 |报表构建器主要定义报表所应用的资源、模板文件和PLMXML导出规则
8 k9 I) k# i; r- F) ]! e0 z0 t/ z4 }" T3 n% U' b' p/ q% O& g/ r
PLMXML主要负责以PLMXML格式导出BOM数据
1 k+ n# H7 I7 I& E- S- J/ h: t+ z+ @$ P) ^- b
% }' \* Q( C3 `
三、应用举例
: r& b: T, O+ Q   下面对于一个具有广泛统计意义的功能用OOTB报表方式来实现。需求是:统计零件在整个BOM中的使用次数。
' t" g4 y! Z% d+ }- y   对于这个需求我们只需要增加一段带计算功能的代码就能实现。先通过系统的搜索功能找到html报表模板文件。
# a* C; s" J/ y8 a, h$ {( D- i" C% F. j+ b
选中找到的数据,右击,命名引用。+ _, d, x3 u" N' V# g4 q0 U% K2 p

! y8 v% u3 J/ t点击导出,把模板保存到本地。# H8 x1 d; ~# |$ d4 g- }

! w; B3 {. N, s: f' y* ~/ W& s9 o下面对Javascript有一定要求。
8 k4 l- a! Z" ~" F  s首先对表格增加一列来容纳计算的总数量:" I$ X1 o6 A% W; w

4 ]! {; y+ S5 X( \4 z5 }' [在xsl中找到上面两处代码增加、修改红框部分。1 w. o7 C9 \: O+ Z: l6 ~( m
定义如下函数,并且在onload事件中调用
! a) x% F" ]! \$ b5 w# \function showPart(){: R2 O0 ?  z3 b, ~* h7 k
​​​//获取html的表格对象: Z% \" I8 g- h. l  }4 B
​​​​var tb = document.getElementById("table");3 A; ^: H0 B  U* M* f
​​​​//获取表格行对象6 p" r( F+ a) ~3 c% o8 o  y# T
​​​​var rows = tb.rows;" p2 t3 U) N# \
​​​​//循环遍历table所有行
( o6 e( v. H; W$ U" X" k- G) A+ z​​​​for(var i = 3; rows.length>i; i++){
5 R1 i5 P4 `+ D0 f; m3 g/ J0 \, h3 m​​​​​//获取每一行的零件号& x0 V( e* c& e; i0 [$ m6 [. L
​​​​​var itemName = rows[i].cells[1].childNodes[0].innerHTML;
- w5 [* m- O3 A, C7 j7 x​​​​​//初始化零件总个数% u; x; A- ?& q2 j8 `
​​​​​var quantity = 0;1 J& ^/ a: _, o3 J" |, O& P
​​​​​//循环进行比较3 N1 g& p% |$ S/ j5 h" ~& r1 N# F! {
​​​​​for(var n = 3; rows.length>n; n++){
  M0 u3 j1 x$ Q: l! i8 G& h# i​​​​​​//获取每一行的零件号
8 a7 M3 e8 R; @! P​​​​​​var itemStr = rows[n].cells[1].childNodes[0].innerHTML;
5 X4 C" Q. l* S- c7 ^8 k​​​​​​//获取零件数量" z1 i4 _1 a8 S$ D
​​​​​​var qt = rows[n].cells[4].childNodes[0].innerHTML;
5 y& [- y+ _5 m  B  E$ k​​​​​​//判断是否是相同的零件# ^) b6 U6 y+ u  |: D0 S, U
​​​​​​if(itemStr == itemName){
9 j2 u' y0 |" n7 I​​​​​​​//若零件号相同,把数量进行累加0 A% h5 J( [* b, k3 p$ q) i9 n
​​​​​​​quantity = parseInt(quantity) + parseInt(qt);
9 ^! @( t8 L  ^' l" O​​​​​​}​3 w% Q! V  ^, p0 S) ?$ A
​​​​​}* c1 o1 p& c( b
​​​​​//在统计列显示总数量3 z! U0 y) E( \, w/ D9 [7 j2 t! x
​​​​​rows[i].cells[5].childNodes[0].innerHTML = quantity;, S; T2 l( w' Y+ C
​​​​}4 Z  l- i0 u( `+ g; q5 d6 _/ C
​​​}, f- X9 d5 G) N
修改好后,保存回源数据集。注意先删除原来的再导入新的。
/ u8 i" v7 l; b( J" H/ D6 s& R) R$ w/ [9 [4 a2 m
9 N( R, B/ p4 g% E/ D) w, }0 p( I
重新生成报表测试下:$ h& n( N+ n- @" c8 |
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了