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

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

  [复制链接]

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

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

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

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

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

x
Teamcenter二次开发实例教程-报表开发教程5 w! I& g  S4 ^7 N, o

8 m+ Y) v( G' _. @- R! h: B   在大多数情况下,我们为客户做实施时,采用的是重新开发报表的功能。以满足客户多种多样的报表模板。然而Teamcenter8,9对报表开发有不错的支持。我们可以通过简单的配置开发出功能强大的报表。本文就Teamcenter OOTB报表技术展开讨论,希望能在众多报表开发方法中再增加一种可能性。
& O; t" u3 F  w3 G& _   下面我对两类报表开发方式优缺点做了个简单对比5 j& n% m( O# c* X3 B! G

6 G$ {' e4 ]) F传统报表开发手段
3 O+ `' [; Z0 ROOTB报表2 x1 i8 N4 c1 s; L; m
比分
# [0 o/ [( T. F; X6 G1" ~' R& ~6 ]  _
自定义模板,灵活多变5 I! v  M7 A# o- t7 ~
格式不能完全满足客户需求
1 ]. c. ]  L8 E1 J) R或非常难满足客户需求
7 J* W& e+ i" ]& @( d1:0
0 C% Z3 m6 {" w25 q+ F' |' W& b4 A
大量开发和代码维护) S7 W7 w+ R6 r( Q2 m% f
或用POI,Excel报表
9 n2 o  T3 \2 b9 p3 I( M1 p$ B开发量小,仅需简单配置. p6 y# i& F' n1 v6 a% J: J0 Q$ u; B' X
1:1" r6 Y; E0 d9 c, ]
3
' P- N8 C& g- [$ @遇到大数据量报表生成不了
' K; G7 h! U9 z; T" ^0 |速度很慢3 m: s3 ^% a  n; f) F4 }4 u
处理大数据量有优势2 P* c& g) q' q; Y' z* Y
速度非常快
. `4 S4 h# O4 P8 O5 _7 \1:2
6 a+ M, y1 Q+ b% J( s; Q4" q. @( C% w& T
开发周期长,BUG
2 X' N8 T, l+ I% O1 n+ P开发迅速容易+ C0 Z: h4 d8 T7 i& S
1:3$ f+ {/ C% E) H% N; n

9 u" R9 w+ p8 q% ?  F一、报表生成
4 M- M0 [. T5 v+ ~首先来开OOTB的零部件BOM" _" D& A/ V  O0 P. N5 R

9 \3 t* @2 T2 L右键点击顶层部件,生成报告。/ F! \# [% X; D  w

2 |" L5 I& q' [8 V1 y3 }% {: u$ n出现报告生成向导界面,选择PS – BOM结构,下一步
7 e) P" X5 A1 D, \. N! n/ @
$ @/ U7 C- B# aOOTB为我们提供了两种方式的报表:( L1 Q; a/ S2 }+ [
 HTML
3 D* G/ A  b1 F5 y6 q XSL( O, W2 [. U8 B+ \' |6 P
每种报表都有对多国语言支持版本,所以下面对话框中有4个选项。我们选第一个。9 z- i& [  J9 t: ]. w( E
- {* V" u3 G8 h, f
生成报表如下:
8 F' ?. M2 f' p+ m0 l# N: S& C3 X- K7 i* |

; }  N' B& t. t# z+ i7 c$ A二、报表配置
+ Y5 H' s9 L5 [: |' M2 z报表配置涉及两个Teamcenter应用程序:
# K+ C3 L( V7 \- |# R+ t1 } 报表构建器/ _6 S& J  q: v3 Z, R# i: z, Z
 PLMXML( a0 m% X$ @5 B* d5 i* }
报表构建器主要定义报表所应用的资源、模板文件和PLMXML导出规则
5 f1 @$ A! E% x3 y. o0 b
& T3 m: ~, x2 U. SPLMXML主要负责以PLMXML格式导出BOM数据
: ?, i5 n* x4 O7 X2 E
4 m5 G  J5 y* W  i
! Q' P0 L0 P/ j, G4 h三、应用举例
* V9 O5 \9 ?0 Y! l7 E# j3 m+ I4 l   下面对于一个具有广泛统计意义的功能用OOTB报表方式来实现。需求是:统计零件在整个BOM中的使用次数。
/ j: Y, `9 r0 y+ K   对于这个需求我们只需要增加一段带计算功能的代码就能实现。先通过系统的搜索功能找到html报表模板文件。' g0 z3 m/ b1 A$ _/ s' e; i' d& U

* {2 e$ v1 F# X7 v/ ~选中找到的数据,右击,命名引用。" o8 j' e" B; V9 z3 Z/ N

0 B# j# H9 z5 P9 u$ k2 K: C8 S& n点击导出,把模板保存到本地。
& L2 y. S% s, s
7 @* o4 |& B0 M1 C8 {下面对Javascript有一定要求。4 q/ j* Z- L/ W% L6 `; S
首先对表格增加一列来容纳计算的总数量:& q% K/ J& A; ~7 v

  t8 ]5 Q3 t" b, R/ r0 Y在xsl中找到上面两处代码增加、修改红框部分。
# ~- z3 \* l* [% y3 `5 F定义如下函数,并且在onload事件中调用# w/ D8 U$ V+ X( C
function showPart(){
1 S3 k/ F3 U* a; J* E​​​//获取html的表格对象
9 V& C  w  T0 w; v/ ^​​​​var tb = document.getElementById("table");" A7 X; H0 B$ a' ^8 t/ R& B
​​​​//获取表格行对象# `9 y0 d- n# x
​​​​var rows = tb.rows;+ I, w1 ?9 i7 L4 Q
​​​​//循环遍历table所有行5 w, A! z, K* Y) c! ^9 L9 N" o( P
​​​​for(var i = 3; rows.length>i; i++){/ y! K! A3 d% p1 h
​​​​​//获取每一行的零件号% K7 Y  g) w9 L
​​​​​var itemName = rows[i].cells[1].childNodes[0].innerHTML;
  A4 s( Z. c- k0 Y​​​​​//初始化零件总个数, g: I' e$ T8 L
​​​​​var quantity = 0;8 ]2 t+ |+ v: T
​​​​​//循环进行比较
- E* P' v1 Z, s! d$ x  A​​​​​for(var n = 3; rows.length>n; n++){
/ _0 ?0 ?2 v! z) z" a​​​​​​//获取每一行的零件号/ Q$ Y$ z9 M/ A! i  u2 e
​​​​​​var itemStr = rows[n].cells[1].childNodes[0].innerHTML;$ O0 i3 t, @7 A9 p$ `3 S, g
​​​​​​//获取零件数量
& X) O. p' y2 m5 v, `3 f​​​​​​var qt = rows[n].cells[4].childNodes[0].innerHTML;
) K- a' e9 r( B/ p​​​​​​//判断是否是相同的零件
# g' w. n/ a$ r( R​​​​​​if(itemStr == itemName){
8 [7 d$ a" x0 E- C1 Z​​​​​​​//若零件号相同,把数量进行累加! u6 t3 I. _- f+ M$ x
​​​​​​​quantity = parseInt(quantity) + parseInt(qt);
; o* N5 F! Y) x( R. J& f​​​​​​}​) K6 B/ t$ v0 J( y) k# z' i1 ~
​​​​​}
8 I- v: K6 D' a- ?5 e​​​​​//在统计列显示总数量$ {; x1 O; @3 I) q" J7 P* P/ ]( i
​​​​​rows[i].cells[5].childNodes[0].innerHTML = quantity;
3 P+ b1 @# Y( u* h$ S​​​​}/ c# q) C& u" X9 V
​​​}
& z8 e6 t3 R8 l" g修改好后,保存回源数据集。注意先删除原来的再导入新的。! w6 K- L$ f6 ]: r1 d
+ Z% x/ e: o$ C  U/ t; y
6 N. V$ `! ?$ j7 w+ ?
重新生成报表测试下:7 e3 e$ M0 I7 X$ j+ }( E' i
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

全部回复10

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
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了