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

QQ登录

只需一步,快速开始

查看: 5387|回复: 5

[结贴] 大数据报表导出execl

[复制链接]

5

主题

13

帖子

89

积分

初级会员

Rank: 2

积分
89
QQ
发表于 2019-5-21 10:49:52 | 显示全部楼层 |阅读模式
版本: BeX5V3.5 小版本号:
数据库: MS SQLServer 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
sqlserver有三个表联合查询后导出30列2万多条数据到execl请问有什么好解决办法,现用ksqlQueryProcedure方法后只能导出1000条数据,再多就会出错

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36090
发表于 2019-5-21 11:23:01 | 显示全部楼层
报表中只是显示数据还是有计算的?推荐把计算的放到sql中处理,否则会占用很大的内存
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

5

主题

13

帖子

89

积分

初级会员

Rank: 2

积分
89
QQ
 楼主| 发表于 2019-5-21 13:22:31 | 显示全部楼层
没有计算,感觉用ksqlQueryProcedure做测试时 4000多行就不行了
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36090
发表于 2019-5-21 16:07:48 | 显示全部楼层
跟ksqlQueryProcedure无关,数据多excel中再加上计算需要画表格时会耗费很大的内存,可以把tomcat的内存配置调大点看看
不行就用报表分页实现,分开导出数据
http://docs.wex5.com/bex5-report-question-list-10017/
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

5

主题

13

帖子

89

积分

初级会员

Rank: 2

积分
89
QQ
 楼主| 发表于 2019-5-22 15:28:34 | 显示全部楼层
已解决,自定义action 返回字符串 再前台页面导出csv 5万条大概半分钟左右 因为一个月导一次可以接受
  var biz = require("$UI/system/lib/biz");
                var params = new biz.Request.ActionParam();
                params.setString("t1", t1);    //设参
                params.setString("t2", t2);  
                        biz.Request.sendBizRequest({
                                "context" : this.getContext(),
                                "dataType" : "application/json",
                                "action" : "allTOCsv",           
                                "parameters" : params,
                                "callback" : function(result) {
                                        if (result.state) {
                               
                                       
                                               
                                                       
                                                        var str = '标题1,标题2\n';//对应标题
               
       
                str+=result.response;
                var blob = new Blob([str], {type: "text/plain;charset=utf-8"});         
                //解决中文乱码问题
                blob =  new Blob([String.fromCharCode(0xFEFF), blob], {type: blob.type});  
                var object_url = window.URL.createObjectURL(blob);
                var link = document.createElement("a");
                link.href = object_url;
                link.download =  "数据导出.csv";
                document.body.appendChild(link);
                link.click();
                document.body.removeChild(link);                             
       
                                        }       
回复 支持 反对

使用道具 举报

5

主题

13

帖子

89

积分

初级会员

Rank: 2

积分
89
QQ
 楼主| 发表于 2019-5-22 15:31:17 | 显示全部楼层
public static String allTOCsv(String t1,String t2)  throws Exception{
               
                Connection conn = null;
                Statement stat = null;
                ResultSet rs = null;
                String count="";
                try {
                        conn = ModelUtils.getConnection("/XHWL/WLGL/data");
                        stat = conn.createStatement();
                        try {
                                String sqlQuery = "SELECT fdcmc,fdcxh ,fzl1 ,fxs,fsl,fxj,xh_ywdc.fbz as ywdcfbz,fywdh,fxtdh,fcj,fcw,fywy,xh_ywd.fdh as ywdfdh,fs,fdqs,fdqx,fxxshdz,fywjc,ftcbz,flxbz,ftcjg,fdhr,fdhsj,fpcr,fpcsj,ffhr,ffhsj,fhdr,fhdsj,ftbs,ffcdh,xh_ywd.fcjdept as ywdfcjdept,xh_ywd.fcjrname as ywdfcjrname,xh_ywd.fcjsj as ywdfcjsj,fhwzl,fhwlf,fldje,fydh,ffcsj,ffcr,fpczl,fch,fjsy,xh_yd.fdh as ydfdh,xh_yd.fbz as ydfbz,fgys FROM xh_ywdc left join XH_YWD on XH_YWD.fid = XH_YWDC.fZYWDH  left join XH_YD  on XH_YWD.fFCDH = XH_YD.fid where xh_ywd.fcjsj>'"+t1+"' and xh_ywd.fcjsj<'"+t2+"'";
                                rs = stat.executeQuery(sqlQuery);
                                //rs.next();
                                while(rs.next()){
                                        //        ;
                                        count=count+rs.getString("fdcmc")+","+rs.getString("fdcxh")+","+rs.getString("fzl1").toString()+","+rs.getString("fxs").toString()+","+rs.getString("fsl").toString()+","+rs.getString("fxj").toString()+","+rs.getString("ywdcfbz")+",'"+rs.getString("fywdh")+","+rs.getString("fxtdh")+","+rs.getString("fcj")+","+rs.getString("fcw")+","+rs.getString("fywy")+","+rs.getString("ywdfdh")+","+rs.getString("fs")+","+rs.getString("fdqs")+","+rs.getString("fdqx")+","+rs.getString("fxxshdz")+","+rs.getString("fywjc")+","+rs.getString("ftcbz")+","+rs.getString("flxbz")+","+rs.getString("ftcjg")+","+rs.getString("fdhr")+","+rs.getString("fdhsj")+","+rs.getString("fpcr")+","+rs.getString("fpcsj")+","+rs.getString("ffhr")+","+rs.getString("ffhsj")+","+rs.getString("fhdr")+","+rs.getString("fhdsj")+","+rs.getString("ftbs")+","+rs.getString("ffcdh")+","+rs.getString("ywdfcjdept")+","+rs.getString("ywdfcjrname")+","+rs.getString("ywdfcjsj")+","+rs.getString("fhwzl")+","+rs.getString("fhwlf")+","+rs.getString("fldje")+","+rs.getString("fydh")+","+rs.getString("ffcsj")+","+rs.getString("ffcr")+","+rs.getString("fpczl")+","+rs.getString("fch")+","+rs.getString("fjsy")+","+rs.getString("ydfdh")+","+rs.getString("ydfbz")+","+rs.getString("fgys")+"\n" ;
                                        //System.out.println(count);
                                        }
                                //count = rs.getNString("countname");
                        } finally {
                                rs.close();

                                rs = null;
                        }
                }
                finally {
                        stat.close();
                        stat = null;
                        conn.close();
                        conn = null;
                }
                //System.out.println(count);
                return count;
               
               
        }

评分

参与人数 1威望 +50 收起 理由
jishuang + 50 很给力!

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-15 12:31 , Processed in 0.062640 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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