博计报表js实现导出当前页导出excel


博计报表js实现当前页导出excel


客户需求背景:


一些客户由于报表数据量很大,使用分页标签后报表分的页数很多,所以导出excel后会出现很多的sheet页,这样很不方便客户查看,很难找到客户需要的数据,所以客户希望只对


目前正在查看的当前页导出excel


 


实现思路:


由于这种需求希望只对当面页面的数据导出,所以无法直接使用报表计算的缓存,而换一种思路,如果直接使用js对当前html里面里面的table导出成excel,这样就很容易实现导出当前页的需求了。


 


实现方法:


htmltable导出成exceljavascript的代码如下:


<script language=”javascript”>


  function excel() {


 


    var curTbl = document.getElementById(“report1″);


    var oXL = new ActiveXObject(“Excel.Application”);


    var oWB = oXL.Workbooks.Add();


    var oSheet = oWB.ActiveSheet;


    var sel = document.body.createTextRange();


    sel.moveToElementText(curTbl);


    sel.select();


    sel.execCommand(“Copy”);


    oSheet.Paste();


    oXL.Visible = true;


 


}                                  


</script>


把这段代码加到jsp中,然后在aspx加入如下内容:<input type=”button” value=”导出当前页” onclick=”excel()”>,也就是写了一个按钮,调用上面导出当前页的js函数。


用这张aspx发布报表,可以看到如下图的效果:



点击上图中的导出当前页按钮,可以看到弹出一个excelexcel的内容为当前页的数据,具体的情况如下图所示:



然后对这个excel进行保存就可以了。


 


这样博计报表导出当前页的需求就实现了。


浏览次数:0 ; 发布日期:2011/06/21

热门文章

  • 申请试用授权 - 49,853 views
  • 使用入门教程简介 - 30,987 views
  • .NET报表产品概况 - 27,730 views
  • 联系我们 - 13,867 views
  • 技术支持 - 10,185 views
  • 高效报表设计 - 9,033 views
  • Web报表工具的新起点 - 7,563 views
  • 复杂报表的制作 - 7,033 views
  • Web报表软件的采购成本 - 6,530 views
  • Web报表软件的集成方案 - 5,075 views