查看: 13859|回复: 10

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

 火 [复制链接]

2477

主题

1280

回帖

8万

积分

管理员

PLM之家站长

积分
82265
QQ
发表于 2013-10-4 14:10:19 来自手机 | 显示全部楼层 |阅读模式

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

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

×
Teamcenter二次开发实例教程-报表开发教程& S! k5 y9 y  f7 O- [: ~' I3 v; r

" U5 g: [" m- o' W) e* s( |   在大多数情况下,我们为客户做实施时,采用的是重新开发报表的功能。以满足客户多种多样的报表模板。然而Teamcenter8,9对报表开发有不错的支持。我们可以通过简单的配置开发出功能强大的报表。本文就Teamcenter OOTB报表技术展开讨论,希望能在众多报表开发方法中再增加一种可能性。
, k9 T) Z5 u" S; [$ ?4 t$ f   下面我对两类报表开发方式优缺点做了个简单对比
0 m# ]* f6 V0 R: S9 p
# M$ V! h8 T7 F- [( H% i传统报表开发手段; w- Z- ~, F& [% k0 D7 ]" w. g
OOTB报表5 v- a. x7 {9 J# d+ A/ b4 d% u# [) B
比分
& C* o$ j- \$ W; b2 `" e16 o8 y( s! \' O/ _- ]
自定义模板,灵活多变
4 X3 ?4 U2 ~+ o格式不能完全满足客户需求
# d) `" z% F" `* p& }或非常难满足客户需求
/ a/ y: b9 [! n' }% T1:0
( Q! o' ~+ i$ L8 i* c- f" Q! ^2
( q5 p" S' L- b0 v7 z! j2 Y. |大量开发和代码维护/ l# D+ _- \" p& H
或用POI,Excel报表
- b7 m  J0 _7 Z& f: ~开发量小,仅需简单配置3 P7 P3 J2 y; U; f
1:1
' O* j4 P4 O; o- G  Y& d% H3" a9 x$ \  ~0 O) _
遇到大数据量报表生成不了
" M- D' N- D* e3 ~& z速度很慢: X/ [4 _8 l) p1 v( e6 ~9 Q
处理大数据量有优势
: g: x" H$ U: L' x9 V速度非常快, u. `: X9 }4 J- K& [; U$ L
1:29 `- o6 C( I/ n/ m+ p
4: ^, M: J3 ]) q
开发周期长,BUG多
  B1 E; j2 o1 Y1 ?& K. I开发迅速容易
/ j  E# J  r8 a4 A4 t. }1:3% x% p# {' R( Q: L( Z# l- J

& X4 D0 M& \6 ~2 Z一、报表生成
/ Q4 t) `8 f7 \7 n首先来开OOTB的零部件BOM
  Y! f$ `5 `* G% p
. x: Z; q4 Z2 A& ]右键点击顶层部件,生成报告。8 D8 L$ }# W5 l; d$ i' d" y
+ U4 d; @% Y4 D1 Z6 u
出现报告生成向导界面,选择PS – BOM结构,下一步
2 f5 v* n6 h  F+ L) j0 H
5 u  O; ]* U: Z& n: H, t3 D2 X0 }  h1 DOOTB为我们提供了两种方式的报表:
9 |! |' h: T6 ?; j0 x( r HTML1 u7 \% }" f% q
 XSL/ c! ^0 d+ N( T, ?  z& H' M8 a" m; r
每种报表都有对多国语言支持版本,所以下面对话框中有4个选项。我们选第一个。
# Q/ C2 L$ F3 S6 A& D$ i
" g* |% O, S1 Y+ H生成报表如下:7 v" f% K: R" Y4 ]

# D- Q% O8 M4 }/ S" m/ M
9 F8 T/ M2 i5 d) V9 r4 }; y二、报表配置+ j1 N) h3 J. C8 ^8 Q! y/ q+ |
报表配置涉及两个Teamcenter应用程序:
* ?! j7 j% s6 c8 x% N 报表构建器
2 d9 w5 i- {7 e) Q/ S9 h PLMXML5 _3 o; I! U+ w( B
报表构建器主要定义报表所应用的资源、模板文件和PLMXML导出规则) v: K9 x1 o8 ?, n) y: q, `/ f9 E  L" W
" C4 L+ S5 D  H" ]* l
PLMXML主要负责以PLMXML格式导出BOM数据
0 A. S0 n2 a' F$ p5 X) D& I3 g. O+ T8 ~* ?; m' T  Z5 ~

; a. I( I6 |* c5 [三、应用举例
. Q: E) Y* D# i% P% P; H% @% S   下面对于一个具有广泛统计意义的功能用OOTB报表方式来实现。需求是:统计零件在整个BOM中的使用次数。' T* {. p5 D6 A' H% W
   对于这个需求我们只需要增加一段带计算功能的代码就能实现。先通过系统的搜索功能找到html报表模板文件。& b. W% P& F# L

- ~) e0 v8 f- P2 \, K7 v- }: X选中找到的数据,右击,命名引用。! S+ S# R+ j$ `* d- t+ [
$ I- R3 D$ j# s& [. B* v, K
点击导出,把模板保存到本地。
2 [/ H5 E8 u! X# J5 ]7 @' F6 D# @9 r5 x+ l! f# W/ [/ A4 M* |: S# V
下面对Javascript有一定要求。
7 P" H( K/ t; P" H; S, o) K首先对表格增加一列来容纳计算的总数量:
7 ]& @  @3 f3 O( R" }
  H! o3 q! ~) g3 m- ]) U% Q5 J在xsl中找到上面两处代码增加、修改红框部分。
! N% B2 ~8 b8 f定义如下函数,并且在onload事件中调用
7 Z& V1 Y9 f1 H5 J' o7 \0 ofunction showPart(){5 J; ?0 t9 W0 y- I
​​​//获取html的表格对象; m4 T7 W) D7 z2 B. z
​​​​var tb = document.getElementById("table");5 l2 g8 D) `% b+ c! o
​​​​//获取表格行对象
, V: r7 h5 T& z; C. _  S9 y​​​​var rows = tb.rows;- A  N2 `7 z+ `' W0 _/ ]# a
​​​​//循环遍历table所有行
( ^8 {3 Q* }1 C4 U$ u" I2 T, ~2 M​​​​for(var i = 3; rows.length>i; i++){! |1 I0 W" I& Y
​​​​​//获取每一行的零件号7 t) v- {$ |6 \% H
​​​​​var itemName = rows[i].cells[1].childNodes[0].innerHTML;
$ {0 h; [$ Q; Q2 \4 Q. o7 e  j​​​​​//初始化零件总个数
1 F5 v4 E8 z- t( s- V​​​​​var quantity = 0;; j" _! Y1 n2 Z
​​​​​//循环进行比较
! f3 G& E. S+ t​​​​​for(var n = 3; rows.length>n; n++){7 W1 k" c9 T7 f
​​​​​​//获取每一行的零件号) S3 B: p) M, a; Z, J1 E5 R
​​​​​​var itemStr = rows[n].cells[1].childNodes[0].innerHTML;
6 H; X! Z- \) w; Y7 q0 y1 h" w​​​​​​//获取零件数量
" {9 y' W9 |) J/ Z  ]​​​​​​var qt = rows[n].cells[4].childNodes[0].innerHTML;
3 {) u; N$ R9 K​​​​​​//判断是否是相同的零件
; I, f  q- n" U2 D/ L​​​​​​if(itemStr == itemName){
! C7 Y. t' C  R( t​​​​​​​//若零件号相同,把数量进行累加
2 |+ d4 s6 Y% ~9 Q. h2 @7 |! _​​​​​​​quantity = parseInt(quantity) + parseInt(qt);0 y+ n* M2 w. h' B! |% B
​​​​​​}​" h3 f% Y# a; |% q0 {0 ?
​​​​​}$ j1 |! g  n  M$ w- O
​​​​​//在统计列显示总数量
: P0 q1 j. F# n​​​​​rows[i].cells[5].childNodes[0].innerHTML = quantity;
+ A3 y, [0 L0 L( G$ ^' m​​​​}, U6 s4 N1 b$ i7 Q9 T: C( Q& a
​​​}
! {! w  [' f2 |' p  {$ P, w, ~修改好后,保存回源数据集。注意先删除原来的再导入新的。
  F7 Y1 [% w$ Y/ d9 R
; }' e8 R7 ]. k) n' x( _" g
0 P; q5 U8 n7 X  r2 S7 n% k重新生成报表测试下:
2 G0 h; V& K, L) q3 [7 M7 E) a9 f
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

0

主题

60

回帖

356

积分

中级会员

积分
356
发表于 2014-12-19 13:38:29 | 显示全部楼层
支持一下楼主,谢谢了
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

0

主题

31

回帖

409

积分

中级会员

积分
409
发表于 2015-12-1 14:03:02 | 显示全部楼层
ddddddddddddddd
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

0

主题

3

回帖

12

积分

新手上路

积分
12
发表于 2017-4-11 16:52:27 | 显示全部楼层
支持楼主,非常感谢。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

0

主题

10

回帖

26

积分

新手上路

积分
26
发表于 2018-6-3 11:17:10 | 显示全部楼层
必须认真学习这类资料。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

0

主题

26

回帖

72

积分

注册会员

积分
72
发表于 2018-7-4 16:08:19 | 显示全部楼层
666666,给力
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

0

主题

13

回帖

52

积分

注册会员

积分
52
发表于 2018-10-12 11:15:15 | 显示全部楼层
632255555555
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

1

主题

6

回帖

55

积分

注册会员

积分
55
发表于 2019-7-10 18:59:24 | 显示全部楼层
ddddddddddd
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

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

本版积分规则

在本版发帖
关注公众号
QQ客服返回顶部