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

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

  [复制链接]

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

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

admin 楼主

2013-10-4 14:10:19

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

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

x
Teamcenter二次开发实例教程-报表开发教程
2 e' g1 `* l  s& U7 X. I- Z1 K. t7 ?5 h6 U
   在大多数情况下,我们为客户做实施时,采用的是重新开发报表的功能。以满足客户多种多样的报表模板。然而Teamcenter8,9对报表开发有不错的支持。我们可以通过简单的配置开发出功能强大的报表。本文就Teamcenter OOTB报表技术展开讨论,希望能在众多报表开发方法中再增加一种可能性。
: [1 ?- c7 `# h* J! y   下面我对两类报表开发方式优缺点做了个简单对比+ X$ {. F: {9 x' O
& Z* d$ ]8 A! W( s
传统报表开发手段3 U5 N+ T7 c( F6 H2 a( t) F. j/ [
OOTB报表
! d2 B7 H' ~4 W. L- T比分
  k0 J  N) S( w) Z9 H/ M+ o! K9 T& |1! J. p' i; g' X4 {, |
自定义模板,灵活多变
+ Q8 I! x- t* W& ]9 ?格式不能完全满足客户需求
  M5 d$ s. O5 e4 d- P  F或非常难满足客户需求) g3 J/ E# v! v+ T* u3 T
1:0
% t" ^; _1 g2 M7 Y; |6 I2
" s" S& I" Z" \1 Z" O! s4 r大量开发和代码维护' T2 G' f& C' _9 R* I5 E
或用POI,Excel报表+ K! s! v) H, Z8 F
开发量小,仅需简单配置
: R5 ~; b1 r- ^$ |1:15 G" Q/ F9 a2 ?. S! u
39 G0 S* U9 M  h6 ?7 M
遇到大数据量报表生成不了
8 J! I& A. W- Z+ t: U' v速度很慢
( r8 Z8 ~- _4 f& H, M处理大数据量有优势
+ T& Z" @9 M; j  Q  Z/ s速度非常快
) ^7 s# A2 k. i1 U4 |: b- X& ]1:2  \$ U2 \, i4 g- r' A
4& S9 @) s* l' G- F9 e- k; U3 F
开发周期长,BUG, ]* ?: g3 |, }7 i) E
开发迅速容易
; j2 H, D# \9 n1:3; i) G& I' X7 }1 Q4 Z

6 b* T- @1 T) {6 Y* m1 h# o  {' O6 }一、报表生成
$ z) {  E) y2 A0 w/ f+ H首先来开OOTB的零部件BOM7 Q' [8 N2 C1 E$ ^" s  A
, B' ]+ ^8 y% @2 t: S
右键点击顶层部件,生成报告。
! s% K) j1 g. [
& _4 o  P8 i$ N8 f' h9 K9 `出现报告生成向导界面,选择PS – BOM结构,下一步
, e4 F% y' o1 w, p1 _
# b' A. E6 U/ ^OOTB为我们提供了两种方式的报表:' Q2 ~8 H& C- a1 o) a. J5 l
 HTML
& d# E4 A9 l: K% X" C& k: x8 \7 a XSL3 O1 e- E8 z' Z3 x/ U+ e7 i
每种报表都有对多国语言支持版本,所以下面对话框中有4个选项。我们选第一个。% R( G: p( X3 Z9 L7 O5 @, b5 F/ u

8 l/ @9 A6 i1 X4 H! k生成报表如下:3 X4 {& C4 r+ n6 b: {

1 o9 z% K) _4 e5 S7 V1 c ' B# A, z' f$ C3 f# K
二、报表配置
% |( [8 y' Z4 Z, S* q7 P$ \  S报表配置涉及两个Teamcenter应用程序:
. A4 f. E5 a2 l; f4 Y" w 报表构建器
; h+ s" l' j: q PLMXML
& v& m; @6 s2 F, E1 E' P报表构建器主要定义报表所应用的资源、模板文件和PLMXML导出规则! Z; f8 Z* Z' c
$ u; i: y9 d; w
PLMXML主要负责以PLMXML格式导出BOM数据# x+ e- v) M2 E& ?1 U5 b

( O& j+ o6 e0 M1 h( [% C  r
+ f2 i8 A( \6 o% O三、应用举例
, H# x* r1 c; `6 V3 w& E   下面对于一个具有广泛统计意义的功能用OOTB报表方式来实现。需求是:统计零件在整个BOM中的使用次数。
% z, H$ ?: V  K" U   对于这个需求我们只需要增加一段带计算功能的代码就能实现。先通过系统的搜索功能找到html报表模板文件。
; F) L2 ?* s, r, f' N# d' ?/ n. e6 X" z( j
选中找到的数据,右击,命名引用。/ |2 q# h4 w. X$ j
3 P! e5 n5 o9 s" t, u, y
点击导出,把模板保存到本地。+ K& _4 r- W  Y# f! L
0 p  J2 z- }8 C" c* @7 |% [2 F
下面对Javascript有一定要求。. q2 A# ?8 u0 C3 `' ]" o5 h7 _! J% l
首先对表格增加一列来容纳计算的总数量:
/ V. P8 ]7 X# y: i! R  f9 |3 F7 x2 L3 Q7 B+ R! W; j
在xsl中找到上面两处代码增加、修改红框部分。
% v; {" r" ^4 l1 X+ q定义如下函数,并且在onload事件中调用
1 A$ L+ F; ^& \% T( \" ]function showPart(){# a6 z% j' T: h( X: O$ ^" p2 M9 y7 P( B
​​​//获取html的表格对象
, _, @6 |# C$ z* H$ ]& ]/ p$ Q" J​​​​var tb = document.getElementById("table");9 `7 q3 |% h" ?) @
​​​​//获取表格行对象8 @$ B( m0 O3 c9 L. b
​​​​var rows = tb.rows;0 e* l4 ~" J7 `2 Q' y4 \" Y' k
​​​​//循环遍历table所有行9 K  Z' ?' K$ e; ~
​​​​for(var i = 3; rows.length>i; i++){
5 G, a( `1 [0 c8 [' ^​​​​​//获取每一行的零件号
' O% i: Q3 F: ~2 N+ P* @​​​​​var itemName = rows[i].cells[1].childNodes[0].innerHTML;
; y7 p, K9 ?" O$ e; ]6 V9 ]0 e​​​​​//初始化零件总个数
$ t9 U5 A. J$ T3 L) ~+ q9 S​​​​​var quantity = 0;
: R' v' I4 _, V1 C​​​​​//循环进行比较1 E3 u6 y7 R7 U& ^7 e' k( l# b7 a
​​​​​for(var n = 3; rows.length>n; n++){% H% d, J# Z0 h4 B+ q
​​​​​​//获取每一行的零件号, X$ B- v! i/ v/ I+ t
​​​​​​var itemStr = rows[n].cells[1].childNodes[0].innerHTML;0 t" s! c% k2 r& @9 ]& Y
​​​​​​//获取零件数量# h; \8 k* w3 W- x1 b! |1 Y- l; y
​​​​​​var qt = rows[n].cells[4].childNodes[0].innerHTML;) k& c5 ^, g5 v; m0 u& u( O. Y# h
​​​​​​//判断是否是相同的零件+ j2 S6 ^0 X; }9 m& N0 E: ?
​​​​​​if(itemStr == itemName){
1 C0 `# R& ?4 z! D  X​​​​​​​//若零件号相同,把数量进行累加
" A0 R; O% k! q5 @. }/ e$ j​​​​​​​quantity = parseInt(quantity) + parseInt(qt);
0 y, G2 C4 q6 O& P  {9 Z, m​​​​​​}​
* l# o1 {5 i- w; a) Z0 h​​​​​}
; o' H# K( M5 j! v2 i! s# D) ?# k* Y​​​​​//在统计列显示总数量+ O/ R- r2 Y4 X, F& V2 h3 d
​​​​​rows[i].cells[5].childNodes[0].innerHTML = quantity;8 M2 N: M0 E3 R0 `0 B- M
​​​​}$ Y$ q; |  P; ?5 ?" N/ R% T4 H" _
​​​}# ~  U" }+ q$ k& U1 U
修改好后,保存回源数据集。注意先删除原来的再导入新的。1 r) c# Y, G1 q! H

5 ]5 c& k* c, ?+ r/ m$ B6 \
" C' Y  R4 T$ W; P" j, A重新生成报表测试下:
; R& g9 y1 [4 V; s" ^4 T6 E) X5 d& T
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了