PLM之家PLMHome

[开发资料分享] Teamcenter二次开发实例教程-报表开发教程

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

  [复制链接]
admin 发表于 2013-10-4 14:10:19 PLM之家手机频道 |阅读模式

admin 楼主

2013-10-4 14:10:19

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

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

x
Teamcenter二次开发实例教程-报表开发教程
6 W0 n0 v+ s0 ^- K+ E
- U: {; }' O- q* a8 o   在大多数情况下,我们为客户做实施时,采用的是重新开发报表的功能。以满足客户多种多样的报表模板。然而Teamcenter8,9对报表开发有不错的支持。我们可以通过简单的配置开发出功能强大的报表。本文就Teamcenter OOTB报表技术展开讨论,希望能在众多报表开发方法中再增加一种可能性。
2 M! Q  M! U: e: E   下面我对两类报表开发方式优缺点做了个简单对比
0 A5 B; E% J% t # ~; K# G9 V6 p6 Q* T% ?- k: j% ~
传统报表开发手段
6 [: M* t' s9 h1 ?) G/ [OOTB报表" c  c6 ^$ K) K3 w! [+ G8 T
比分. c, j1 G0 J- ^5 x1 [, z8 Z9 X
10 P( m3 L- n* }3 u+ z
自定义模板,灵活多变
' Y- F3 D$ x* E& \. ^" n: I格式不能完全满足客户需求
! z9 J/ N) R, d* s; s$ B* C或非常难满足客户需求$ V% X: `' `# J
1:0- g+ Z1 b+ p: n+ `
2
' N7 b4 w- B8 A5 H4 R大量开发和代码维护9 q0 v2 G+ u4 ^9 U1 M
或用POI,Excel报表
$ V7 Z, L. ?# N% b  T( Y8 B, x1 d7 |! O开发量小,仅需简单配置7 z) w2 u$ X+ N% Q
1:1: Y$ E7 p) s% P! P5 p( a* @3 \. x
3
5 _  ^" N  J& W遇到大数据量报表生成不了
. M( |" z  X, A" p  z4 }) T速度很慢
% v, e) A, \/ x! `, l% S- x2 f& |5 \- `处理大数据量有优势
7 P/ m7 l! k* s, F# L4 \* w速度非常快( p; y* R! I  t1 ]" M; ^
1:2
7 E- w  B3 E$ V& g7 j4 i/ k1 F: a* R9 H0 A4
1 Q+ R  w; d" U% X) G, o- b5 L/ a开发周期长,BUG
4 W6 l7 W/ i0 y1 s8 ]开发迅速容易, H% a& n( K! h
1:32 v+ Y; \6 _3 P$ v# y. j) F) p- [

$ V% Q2 `! O+ v# Q一、报表生成
1 @6 U6 n& Y; J! A首先来开OOTB的零部件BOM/ r/ g5 {7 H; B& I

. a+ Z2 N0 m, Q0 x, K% ?右键点击顶层部件,生成报告。
+ j' ?4 R0 _1 o$ s( [. |4 U( U# |# m# B7 b& P, W6 D# i
出现报告生成向导界面,选择PS – BOM结构,下一步
# C/ F" i4 n( {6 ^' c* R
. N4 q5 ~7 I% S7 o( |OOTB为我们提供了两种方式的报表:0 E, [3 w/ Z+ P% H* j( n) C
 HTML
2 _1 @3 K/ e( E8 P3 Q XSL
4 M8 C5 C/ T+ h, l1 @, y) h; K( u每种报表都有对多国语言支持版本,所以下面对话框中有4个选项。我们选第一个。( E4 ~" a% D) @1 g% o, L

7 v2 d% m6 I( y  s( {5 G! g; x生成报表如下:% i3 W$ F9 t9 x+ g& y( j( N

5 a3 V; |, _8 M3 A  n2 R$ W
8 B: \+ G, ?  Z/ p/ Y& E二、报表配置& }3 T& N2 ]0 `" d7 |
报表配置涉及两个Teamcenter应用程序:; q. M, f' q2 T; _( @0 \4 C
 报表构建器
+ C% i$ H1 p' @3 }, K) ?% V PLMXML
' u; j) O' p, P2 T报表构建器主要定义报表所应用的资源、模板文件和PLMXML导出规则
: @3 h1 U9 j  }6 I# J. i# p+ k* x3 m) H" h* H2 D
PLMXML主要负责以PLMXML格式导出BOM数据
4 _6 T$ t% u* Z. z1 j$ e; ^
. @8 N' z% o4 U. ?
9 j- ]7 s& [& Z) \& @+ `0 I三、应用举例+ a: ~; A! x& f, s  q% J
   下面对于一个具有广泛统计意义的功能用OOTB报表方式来实现。需求是:统计零件在整个BOM中的使用次数。
1 S3 ^/ \' r+ g! Q, A! l6 ?   对于这个需求我们只需要增加一段带计算功能的代码就能实现。先通过系统的搜索功能找到html报表模板文件。1 |& Z. f9 ~0 T2 m

5 ]$ g8 z& l2 y3 Z选中找到的数据,右击,命名引用。
# o5 X8 @* N9 ]+ \5 T! @; x
$ h7 p- z! b& s; c5 }点击导出,把模板保存到本地。
# r8 `, H' b$ O/ k: v. F8 ~; q  ]% W% y
下面对Javascript有一定要求。8 y: l9 ~. v' q
首先对表格增加一列来容纳计算的总数量:
7 `, \& i0 r8 |, }5 R
2 h; a* x" k2 R' _' M在xsl中找到上面两处代码增加、修改红框部分。: }9 N  t: _5 ?9 C$ p. K
定义如下函数,并且在onload事件中调用' K2 N  Z( C8 H  {
function showPart(){
& j: T: r6 k& y/ b8 e  D6 G$ v; J- v​​​//获取html的表格对象* x) n! U$ n2 f* ~& J; v
​​​​var tb = document.getElementById("table");5 w. A  k- v) q7 u  c
​​​​//获取表格行对象: t# V! y7 m5 \1 C
​​​​var rows = tb.rows;
1 r" U. M. M+ T+ g# o! G/ W​​​​//循环遍历table所有行
! ?  B. W$ q8 G​​​​for(var i = 3; rows.length>i; i++){  @2 k& n/ D' g+ y: e
​​​​​//获取每一行的零件号
3 J; c  H/ {: w! h0 }( i' s​​​​​var itemName = rows[i].cells[1].childNodes[0].innerHTML;
7 k# F6 a! v5 Q0 T! D: p​​​​​//初始化零件总个数6 _. S) h9 B3 I. t9 J
​​​​​var quantity = 0;
0 T9 c, a9 D+ E6 a0 k​​​​​//循环进行比较6 E7 t9 B& u2 ]: c4 ?5 l/ J4 O  u; {
​​​​​for(var n = 3; rows.length>n; n++){
3 G+ l' F' `$ E0 d​​​​​​//获取每一行的零件号2 c, |  G1 I5 ~
​​​​​​var itemStr = rows[n].cells[1].childNodes[0].innerHTML;% l% f0 ~7 N7 l" d: m' G
​​​​​​//获取零件数量! Q8 s! Z' c$ I( F4 d
​​​​​​var qt = rows[n].cells[4].childNodes[0].innerHTML;& p- S, ?+ U4 H! ]0 \% u
​​​​​​//判断是否是相同的零件
$ O/ e+ m+ j; Y​​​​​​if(itemStr == itemName){5 {. z& I6 _$ j9 g* y- [0 H$ @7 D
​​​​​​​//若零件号相同,把数量进行累加6 F$ z1 M9 D6 P( i7 g: a/ O) |
​​​​​​​quantity = parseInt(quantity) + parseInt(qt);, t6 j, h3 }, U( S5 ]9 |
​​​​​​}​
9 |! H4 u' w& F; S- y​​​​​}& t# @: Z5 L' O$ [, L
​​​​​//在统计列显示总数量
- h$ F4 B& e4 T( a3 h​​​​​rows[i].cells[5].childNodes[0].innerHTML = quantity;
3 h2 @6 d1 a& ]​​​​}
" L7 p: R6 C2 H' l4 ]- X; I​​​}
7 S$ W$ A# k. ~" Y修改好后,保存回源数据集。注意先删除原来的再导入新的。8 @# D; _) I1 I" f2 A& @# w
/ i# b  }. v: k' R, l1 _
, w' P9 S, z$ t) ~, e6 v% j
重新生成报表测试下:; Z0 c$ T$ f) o2 {) w
上海点团信息科技有限公司,承接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
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

用户组 : 管理员
邮   箱 :xduniverse@qq.com
手   机 :VIP用户可查看[申请]
Q   Q : 点击这里给我发消息
性别 : 就不告诉你
主页 :http://www.plmhome.com
个人介绍 :原西门子NX高级教务员,10多年NX培训,开发咨询,Teamcenter培训实施等

主题2257

帖子3492

积分66379

  • 一个简单的登录和注册

    一个简单的登录和注册HTML CSS开发页面 登录代

  • Tecnomatix 二次开发

    Tecnomatix 二次开发入门教程 3 第一个hello plm

  • PLM之家NX插件V8.0.0.

    PLM之家NX插件 ============================

  • Tecnomatix 二次开发

    Tecnomatix 二次开发入门教程 6 实现打开PLM之家

  • 官方文档,NX12 使用

    官方文档,NX12 使用 Python进行二次开发相关配

  • 关闭

    站长推荐上一条 /1 下一条

  • 发布新帖
  • 在线客服1
  • 在线客服2
  • 微信
  • 客户端
  • 返回顶部