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

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

  [复制链接]

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

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

admin 楼主

2013-10-4 14:10:19

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

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

x
Teamcenter二次开发实例教程-报表开发教程
% }2 l! D( i  X2 s
! o# Q1 W7 C$ ?: P! L! v# M   在大多数情况下,我们为客户做实施时,采用的是重新开发报表的功能。以满足客户多种多样的报表模板。然而Teamcenter8,9对报表开发有不错的支持。我们可以通过简单的配置开发出功能强大的报表。本文就Teamcenter OOTB报表技术展开讨论,希望能在众多报表开发方法中再增加一种可能性。
! x5 p% {& ?# w   下面我对两类报表开发方式优缺点做了个简单对比
  @" U, L" I2 U , y4 C$ c+ ^8 b. p
传统报表开发手段
) i7 N+ e/ d, DOOTB报表7 q2 _. {# D' T+ a, k
比分
* n: m  Y3 W2 h) ], p! Q1
+ n4 _. i( h: a4 B, Q2 O  @自定义模板,灵活多变
8 u" @2 m  j: Q) W格式不能完全满足客户需求7 G; B; y/ @3 P! T. A5 [3 Q
或非常难满足客户需求  |! C4 F' x' W$ m0 v
1:08 A3 D) w1 J" v% \
2
' ~8 p# I  O5 p$ X) i) C( N大量开发和代码维护
" \* N2 \" s" X- \# D. S! ]+ O或用POI,Excel报表, y3 F# i4 E1 ]$ m: q
开发量小,仅需简单配置7 `5 u- p  T' F+ ]- w* r
1:1
" |7 @2 m: e9 X31 L; w) ?8 v1 A. h/ f; O! i
遇到大数据量报表生成不了# {( B# u* u5 R4 i4 f! [- H
速度很慢
$ f+ ?: Z2 y0 H* X) B. M5 S处理大数据量有优势! z1 K6 o& ~2 n6 b" Z- U9 d
速度非常快! ~* R6 e; M5 m
1:20 h) A% e8 j- G6 V  i% u
4* F' |$ h9 p& d
开发周期长,BUG  w% h9 `$ T9 ~2 v" b2 j. N
开发迅速容易: k1 h& r$ j/ A3 V% O/ T
1:3
) e! G( S1 Z! Q4 W9 o9 {2 o 4 O8 b7 J$ y7 R2 d
一、报表生成5 R* |* w& v" s6 q
首先来开OOTB的零部件BOM% p; S# Q, B; ?( p& [% f  O  C

; S3 T# V4 V' y3 X! `右键点击顶层部件,生成报告。4 y, ^+ t  H, p9 I

4 _6 H. @) |) W( z* T出现报告生成向导界面,选择PS – BOM结构,下一步
6 H5 c! @' q2 z/ d# ^/ R: B0 R. d% u; f# ]
OOTB为我们提供了两种方式的报表:
" ~$ i0 G+ ^1 P7 O9 W HTML. W) Y  h: A4 q/ }
 XSL) M1 r, N, B/ X2 l) y7 q, l
每种报表都有对多国语言支持版本,所以下面对话框中有4个选项。我们选第一个。
: F7 T* Z. v0 z4 W' Y  \+ b0 _3 P% S: O9 z+ [3 V; R
生成报表如下:
# T. |* W, P1 A  e4 U* q
3 y0 x4 ^. K# l  Q
1 X: H; |/ @7 O! c# l二、报表配置
5 Z- C- e/ {- a, G6 @. J& w5 o' Q6 R报表配置涉及两个Teamcenter应用程序:
( w2 H, Q$ j, S' ^$ j* n 报表构建器
5 ^6 j" w5 Y3 m, q1 O  v& z PLMXML
0 b2 J& N5 [) v& t8 W) W报表构建器主要定义报表所应用的资源、模板文件和PLMXML导出规则
. X, g5 N" e+ O# M/ _* |; O3 T/ ]; c4 j, C
PLMXML主要负责以PLMXML格式导出BOM数据
6 {6 g; F4 W6 ~. ~
7 z1 A& M* ~: G- U5 _6 ~
7 [9 q$ s) i8 V% K. Z) g1 |三、应用举例
5 Y' W: R/ i! O   下面对于一个具有广泛统计意义的功能用OOTB报表方式来实现。需求是:统计零件在整个BOM中的使用次数。
) ?0 ?: Q" z! W8 Q$ b3 ~7 W   对于这个需求我们只需要增加一段带计算功能的代码就能实现。先通过系统的搜索功能找到html报表模板文件。" J; D: T2 `: g8 v
( s0 l( w3 l: y3 b( B3 h' g; d
选中找到的数据,右击,命名引用。) y7 c4 g3 S5 [5 q7 _

0 C7 m" P+ Z+ n1 g7 Q! B  I点击导出,把模板保存到本地。
4 g3 \; g- S# b' }& N& G
2 g7 ^* r, `: c1 _/ H下面对Javascript有一定要求。
- T) j0 E' l' Y* I/ R( `4 C, {首先对表格增加一列来容纳计算的总数量:
2 l/ ]& b- g& G9 t' s
0 K: S' C" i; N, ?7 s8 g, h在xsl中找到上面两处代码增加、修改红框部分。
. k8 p, D$ G; l4 h% o$ ~3 O定义如下函数,并且在onload事件中调用
( V7 ~# c1 m. U& V  ~9 D, [function showPart(){! f9 b% \+ i" ~: D- f$ L
​​​//获取html的表格对象$ H1 w* e9 d- @" m8 _9 o  s
​​​​var tb = document.getElementById("table");" G% [+ l2 J+ h
​​​​//获取表格行对象
# g3 }0 _) b% Z( q) y​​​​var rows = tb.rows;
6 Y0 |( v1 `& d- n# h9 e- I​​​​//循环遍历table所有行* x7 r3 Z' p9 m
​​​​for(var i = 3; rows.length>i; i++){
7 V" d5 l! B8 V3 ?​​​​​//获取每一行的零件号% r2 |7 `9 Y/ N6 Q" ?
​​​​​var itemName = rows[i].cells[1].childNodes[0].innerHTML;+ q% [  {, l1 }# |2 Z
​​​​​//初始化零件总个数0 A8 a' m$ t, B* j0 B3 @9 X9 Z' I8 b
​​​​​var quantity = 0;
& H% s5 R, ^: L0 Y; A​​​​​//循环进行比较
0 P# `5 t( R: Q) \4 M  t( m# T​​​​​for(var n = 3; rows.length>n; n++){
8 Z, m% y: C) k( J0 j( ^. e  n​​​​​​//获取每一行的零件号
5 G  o0 e& c0 M# t# i​​​​​​var itemStr = rows[n].cells[1].childNodes[0].innerHTML;6 n+ N" i, W0 q6 i  D
​​​​​​//获取零件数量9 b( l# T0 K, z% q- ]" R; i
​​​​​​var qt = rows[n].cells[4].childNodes[0].innerHTML;
8 f; e' e! C8 D​​​​​​//判断是否是相同的零件
/ L; N* I. @6 D; y$ K​​​​​​if(itemStr == itemName){: U& p6 D* L# A  H- h4 L! ?
​​​​​​​//若零件号相同,把数量进行累加
) @4 D9 e2 D* |- X4 Y​​​​​​​quantity = parseInt(quantity) + parseInt(qt);
- ]+ J/ _; z) q2 u" V​​​​​​}​  |$ n/ J2 L8 R5 ]" w: |/ Z
​​​​​}( p# x6 b: t3 Q3 y9 I
​​​​​//在统计列显示总数量
2 x; E9 L3 b. q' [2 Y- g​​​​​rows[i].cells[5].childNodes[0].innerHTML = quantity;
1 l1 b6 a8 ~% O1 V: z* f  w- `) C​​​​}/ \! s! x$ W5 ?1 q( J- i
​​​}
4 W; ~3 _* W7 t$ u修改好后,保存回源数据集。注意先删除原来的再导入新的。- s& H3 g9 ?- t3 h9 X4 y/ F
6 _' J* v) o- d) b+ j
0 h5 }* _) V" o! r. L9 D1 Y# a
重新生成报表测试下:, J# j8 I9 U8 p) P) o6 j3 h* j6 ~
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了