起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13647|回复: 13

[处理中3] 在非报表页面下载报表

[复制链接]

27

主题

101

帖子

413

积分

中级会员

Rank: 3Rank: 3

积分
413
QQ
发表于 2018-4-25 16:41:49 | 显示全部楼层 |阅读模式
版本: 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
版本:BeX5_V3.7。
需求:在项目信息的详细展示页面,有一个报表下载的按钮,点击按钮,可下载当前项目的十多个excel统计报表(即报表用当前项目做查询参数)。这十多个报表已经做好了模板(有.w、.xls、.xml文件)。
请问如何实现?

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2018-4-25 17:05:43 | 显示全部楼层
可以自己打开报表页面进行下载

或者直接在页面中放report组件可以设置不显示下载的时候去调用进行下载
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

27

主题

101

帖子

413

积分

中级会员

Rank: 3Rank: 3

积分
413
QQ
 楼主| 发表于 2018-4-25 17:36:14 | 显示全部楼层
jishuang 发表于 2018-4-25 17:05
可以自己打开报表页面进行下载

或者直接在页面中放report组件可以设置不显示下载的时候去调用进行下载 ...

1、“可以自己打开报表页面进行下载”,不用这个方法。
2、“或者直接在页面中放report组件可以设置不显示下载的时候去调用进行下载”,用这个方法的话,我有30张报表,不想放一个页面,太多了,想每个报表做一个页面,能在下载按钮里调用那些报表模板么?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2018-4-25 17:38:03 | 显示全部楼层
那就是第一个方法打开页面去操作
不放报表组件要有操作报表只能打开页面去操作
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

27

主题

101

帖子

413

积分

中级会员

Rank: 3Rank: 3

积分
413
QQ
 楼主| 发表于 2018-4-26 08:39:05 | 显示全部楼层
jishuang 发表于 2018-4-25 17:38
那就是第一个方法打开页面去操作
不放报表组件要有操作报表只能打开页面去操作 ...

没有办法去调用报表页面生成报表并下载么?必须要在下载按钮页面有报表组件?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2018-4-26 09:16:30 | 显示全部楼层
要调用报表页面就需要打开页面啊

没有不打开页面就操作的
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

27

主题

101

帖子

413

积分

中级会员

Rank: 3Rank: 3

积分
413
QQ
 楼主| 发表于 2018-4-28 10:48:33 | 显示全部楼层
jishuang 发表于 2018-4-26 09:16
要调用报表页面就需要打开页面啊

没有不打开页面就操作的

我在主页面用了windowContainer控件,src地址绑定的是报表的w文件,将报表页面作为子页面,为了页面优化将windowContainer的autoLoad设置成false,然后在主页面建了一个下载按钮,要求实现点击按钮下载子页面的报表。
目前我代码是先判断windowContainer是否load,没有load则先load,然后调用子页面对象,并调取子页面方法来刷新报表和下载报表。
按钮的JS代码如下:
  1.         Model.prototype.button4Click = function(event){
  2.                 if(this.comp("windowContainer1").getInnerModel()){               
  3.                 }else{
  4.                         this.comp("windowContainer1").load();
  5.                 }
  6.                 var xmbhVal = this.getElementByXid("fZZNX").value;
  7.                 if(xmbhVal){
  8.                         var self = this.comp("windowContainer1").getInnerModel();
  9.                         self.comp('a1').setStringVar("p",xmbhVal);
  10.                         self.comp('b1').setStringVar("p",xmbhVal);
  11.                         self.comp('title1').setStringVar("p",xmbhVal);
  12.                         self.comp('report2').refresh();
  13.                         self.comp("report2").exportExcel();
  14.                 }               
  15.         };
复制代码


但是会报错,看报错信息是没有找到子页面对象,看页面的实际效果也是先弹出报错框然后再刷新出子页面,我想问这个问题怎么解决。
报错信息如下:

Cannot read property 'comp' of undefined
隐藏详细
TypeError: Cannot read property 'comp' of undefined at n.Model.fnRep (http://127.0.0.1:8080/x5/UI2/v_4 ... ainActivity.js:34:8) at n.Model.button4Click (http://127.0.0.1:8080/x5/UI2/v_4 ... inActivity.js:48:20) at n.fire (http://127.0.0.1:8080/x5/UI2/v_f ... re.min.js:71:237473) at n.fireEvent (http://127.0.0.1:8080/x5/UI2/v_f ... re.min.js:71:238637) at n.callParent (http://127.0.0.1:8080/x5/UI2/v_f ... re.min.js:71:234912) at n.fireEvent (http://127.0.0.1:8080/x5/UI2/v_2 ... mmon.min.js:15:3768) at n._doClick (http://127.0.0.1:8080/x5/UI2/v_b ... mp.min.js:144:86899) at HTMLAnchorElement.i (http://127.0.0.1:8080/x5/UI2/v_f ... ore.min.js:71:19322) at HTMLAnchorElement.dispatch (http://127.0.0.1:8080/x5/UI2/v_f ... ore.min.js:71:53815) at HTMLAnchorElement.g.handle (http://127.0.0.1:8080/x5/UI2/v_f ... ore.min.js:71:50452)
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2018-4-28 11:00:15 | 显示全部楼层
debugger调试具体执行到哪个地方报错的?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

27

主题

101

帖子

413

积分

中级会员

Rank: 3Rank: 3

积分
413
QQ
 楼主| 发表于 2018-4-28 11:39:45 | 显示全部楼层
jishuang 发表于 2018-4-28 11:00
debugger调试具体执行到哪个地方报错的?

代码中的第九行self.comp('a1').setStringVar("p",xmbhVal);
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2018-4-28 13:42:33 | 显示全部楼层
this.comp("windowContainer1").getInnerModel();debugger调试看看是什么
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-29 17:48 , Processed in 0.119374 second(s), 27 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表