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

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

  [复制链接]

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

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

admin 楼主

2013-10-4 14:10:19

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

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

x
Teamcenter二次开发实例教程-报表开发教程
4 O  B, r3 R; s9 H# i/ P: [; J5 t9 \; ^) B- E6 @" P
   在大多数情况下,我们为客户做实施时,采用的是重新开发报表的功能。以满足客户多种多样的报表模板。然而Teamcenter8,9对报表开发有不错的支持。我们可以通过简单的配置开发出功能强大的报表。本文就Teamcenter OOTB报表技术展开讨论,希望能在众多报表开发方法中再增加一种可能性。4 |* s4 J' ~( `. {4 D
   下面我对两类报表开发方式优缺点做了个简单对比
" `% }, p$ m& I1 k
0 O& i  h9 c0 {' u/ s" W6 Z) s传统报表开发手段( k& c; R5 |  d* f8 w" A- O
OOTB报表' Z& |3 P1 Z: _) R2 t) ~# @7 g1 ]
比分/ k* M6 v' k' \. D0 g( w
1$ Q$ p: T- C# p/ [0 T, \
自定义模板,灵活多变
$ C" K! c* e5 D% S: H8 X. g; x格式不能完全满足客户需求4 ?5 c+ T9 _/ J/ t7 n- _9 z8 I
或非常难满足客户需求+ g0 w5 k: E2 [& ]8 i
1:0
' \' }/ a1 T& k$ A  A; N+ I2
* ]' C/ {. g) T大量开发和代码维护! V+ z# x; w  Z2 u8 g  T! k" ]  k
或用POI,Excel报表6 q" W2 f# G; C& L! k
开发量小,仅需简单配置
1 f" {$ J- t6 M( t. w, b' N- _$ a1:12 W4 X8 V# a5 b( M3 n6 T2 I6 @
3
; a1 Y' i- \  H$ b遇到大数据量报表生成不了
+ h6 J& A) {5 I速度很慢! O5 R% `  [) l8 Q) H* Q
处理大数据量有优势
+ @2 K3 f9 \5 {; I速度非常快
  l9 d' C# f$ g* f3 q) v* r1:2
% a3 b0 E3 B2 I/ \7 [  a. v( ~- K4* F7 u6 ^3 P& d% k: c6 t3 O/ u
开发周期长,BUG" W* @" ^$ X' B! }9 y
开发迅速容易
  {. B& O3 A+ S3 O* B! ^1:3
7 y; _7 r- v7 O9 }% ~ 2 N( }3 P, C+ l) A8 j
一、报表生成1 x; J9 o1 M/ J) Y
首先来开OOTB的零部件BOM
6 q' O9 s, G5 D9 k
( f2 f( B+ }! N' @右键点击顶层部件,生成报告。
, m: w1 M" X* ?2 M* u6 ^4 h$ [% u; [) z/ Y: Q
出现报告生成向导界面,选择PS – BOM结构,下一步! L. X: z( A. G7 S# i
( a9 v% N" u# Q7 y4 F
OOTB为我们提供了两种方式的报表:" O1 b2 N) r+ d( p' ^8 ]9 Y
 HTML
' Y/ E1 L/ e" p1 s  o) z5 f. V. X; R XSL7 [' u4 v( A8 F& x' T' N, u( E; \
每种报表都有对多国语言支持版本,所以下面对话框中有4个选项。我们选第一个。
: c4 E; r7 V+ Q' m9 I9 r7 o1 ~! {& g% F0 @. D8 E
生成报表如下:
! o/ W4 t' J, \' J. {6 y% j4 D* `, w) L) ^0 d' F0 V) x" R

/ r! p  j* k+ E" U7 Z! B9 t二、报表配置
7 k' S* K( |0 N3 {  T报表配置涉及两个Teamcenter应用程序:
0 e7 z9 Z8 `1 J$ ]) j2 L; x" Q3 s 报表构建器
5 z4 |: b3 B" y* V PLMXML" d3 k  m3 Q& L- f2 C
报表构建器主要定义报表所应用的资源、模板文件和PLMXML导出规则3 L) Z" b- o" j( g7 t: n5 A$ @

6 S: [( y; E7 G7 h; c; W# U$ ePLMXML主要负责以PLMXML格式导出BOM数据
% H# u+ F% W1 u0 F" H5 s2 b6 p" q) f, N

) C; g" r8 ?' N三、应用举例3 i$ S: g# k6 J/ t2 A
   下面对于一个具有广泛统计意义的功能用OOTB报表方式来实现。需求是:统计零件在整个BOM中的使用次数。
% @4 c% I  s, d7 f0 }" y3 v   对于这个需求我们只需要增加一段带计算功能的代码就能实现。先通过系统的搜索功能找到html报表模板文件。
3 {: P& T2 F! B8 a7 R& c$ Q! }1 Z9 C* J1 b! U$ i
选中找到的数据,右击,命名引用。
8 [7 ?' Y; x* i0 |. q0 u
0 C4 C! m0 j9 x- {$ g6 p2 \' B* o点击导出,把模板保存到本地。) v4 N% s- x- H+ v5 Z4 g
* v3 m7 A" n" |; W; K! O, [1 C) d3 C
下面对Javascript有一定要求。
5 U/ D8 g5 x6 R: \! u首先对表格增加一列来容纳计算的总数量:7 o: o5 ?- g. z% C

6 A. m& P: l: d. A在xsl中找到上面两处代码增加、修改红框部分。. j5 k1 g- i- ?# M% a3 X* _
定义如下函数,并且在onload事件中调用/ S# l. B9 n! B0 p7 N, N8 S# m
function showPart(){
3 y5 N  ~% z0 w​​​//获取html的表格对象
4 s# }! @3 S2 Z, I6 T# z3 w3 R​​​​var tb = document.getElementById("table");1 c: S4 x2 I, t
​​​​//获取表格行对象( A, \, J/ Q1 I3 d
​​​​var rows = tb.rows;; h7 G' D# F  x% V* m
​​​​//循环遍历table所有行
" x) t2 w! u# _7 ~+ k​​​​for(var i = 3; rows.length>i; i++){
" P4 ?  p$ d2 J9 Q​​​​​//获取每一行的零件号, I9 b+ k: \+ f; f& J& u4 t
​​​​​var itemName = rows[i].cells[1].childNodes[0].innerHTML;4 E+ y, P# Q( `/ \
​​​​​//初始化零件总个数$ T6 x0 \% ~; [1 X5 |; G0 ]
​​​​​var quantity = 0;
# C2 i. R* |0 L. }7 h​​​​​//循环进行比较7 P; r! {8 T6 d
​​​​​for(var n = 3; rows.length>n; n++){
* p0 Y) `* D- x4 [* b​​​​​​//获取每一行的零件号
5 U- T: @  Z: H- Y9 L, v​​​​​​var itemStr = rows[n].cells[1].childNodes[0].innerHTML;
% G0 Y( `9 q; v9 D" f& L​​​​​​//获取零件数量
/ I- R3 B! |; \, H9 ~​​​​​​var qt = rows[n].cells[4].childNodes[0].innerHTML;
9 `6 |8 s' t  o1 Z) F2 Q, w5 w​​​​​​//判断是否是相同的零件/ n. i1 q6 ?9 N0 v
​​​​​​if(itemStr == itemName){) t1 R5 H/ ?, I2 f9 L& q3 c
​​​​​​​//若零件号相同,把数量进行累加
+ ^4 [) h# k* L% y) ^( Z: [/ W​​​​​​​quantity = parseInt(quantity) + parseInt(qt);9 g' B& K0 Z  d9 J3 t
​​​​​​}​
3 q+ K* m0 S! n$ Z3 D3 |: _& i5 k- v​​​​​}. t/ i2 X% c; U( q0 l
​​​​​//在统计列显示总数量# S4 b* z# L5 Y  B. f# g& w
​​​​​rows[i].cells[5].childNodes[0].innerHTML = quantity;
* J, m# \1 ^' p" t​​​​}( `+ D3 k6 D8 W, R8 w  @
​​​}: F  a# T: e. g6 l% C
修改好后,保存回源数据集。注意先删除原来的再导入新的。" D. R5 h$ s" p# I; F
1 _8 c6 X9 g7 c$ Q, L

& }0 E% [7 H9 `5 M5 M$ c重新生成报表测试下:
, E; W& m, S4 o, F: Q! x
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了