精华内容
下载资源
问答
  • ![图片说明](https://img-ask.csdn.net/upload/201709/18/1505703567_624926.png) 想这个页面(log+印章)下载成一个Excel。请大家指教
  • POI的报表导出功能是软件开发中最常用的功能之一。 二. 实现步骤 构建报表导出的实体对象 构造Excel表格数据 创建工作簿 创建sheet 创建行对象 创建单元格对象 填充数据,设置样式 下载 三. 代码实现 1. ...

    一. 简介

    POI的报表导出功能是软件开发中最常用的功能之一。

    二. 实现步骤 

    • 构建报表导出的实体对象
    • 构造Excel表格数据
    • 创建工作簿
    • 创建sheet
    • 创建行对象
    • 创建单元格对象
    • 填充数据,设置样式
    • 下载

    三. 代码实现 

    1. 构建报表导出的实体对象

    package com.ihrm.domain.employee.response;
    
    import com.ihrm.domain.employee.EmployeeResignation;
    import com.ihrm.domain.employee.UserCompanyPersonal;
    //import com.ihrm.domain.poi.ExcelAttribute;
    import lombok.Getter;
    import lombok.NoArgsConstructor;
    import lombok.Setter;
    import lombok.ToString;
    import org.springframework.beans.BeanUtils;
    
    import javax.persistence.Id;
    
    @Getter
    @Setter
    @NoArgsConstructor
    @ToString
    public class EmployeeReportResult {
    
    //    @ExcelAttribute(sort = 0)
        private String userId;
    //    @ExcelAttribute(sort = 1)
        private String username;
        private String departmentName;
        private String mobile;
        private String timeOfEntry;
        private String companyId;
        private String sex;
        /**
         * 出生日期
         */
        private String dateOfBirth;
        /**
         * 最高学历
         */
        private String theHighestDegreeOfEducation;
        /**
         * 国家地区
         */
        private String nationalArea;
        /**
         * 护照号
         */
        private String passportNo;
        /**
         * 身份证号
         */
        private String idNumber;
        /**
         * 身份证照片-正面
         */
        private String idCardPhotoPositive;
        /**
         * 身份证照片-背面
         */
        private String idCardPhotoBack;
        /**
         * 籍贯
         */
        private String nativePlace;
        /**
         * 民族
         */
        private String nation;
        /**
         * 英文名
         */
        private String englishName;
        /**
         * 婚姻状况
         */
        private String maritalStatus;
        /**
         * 员工照片
         */
        private String staffPhoto;
        /**
         * 生日
         */
        private String birthday;
        /**
         * 属相
         */
        private String zodiac;
        /**
         * 年龄
         */
        private String age;
        /**
         * 星座
         */
        private String constellation;
        /**
         * 血型
         */
        private String bloodType;
        /**
         * 户籍所在地
         */
        private String domicile;
        /**
         * 政治面貌
         */
        private String politicalOutlook;
        /**
         * 入党时间
         */
        private String timeToJoinTheParty;
        /**
         * 存档机构
         */
        private String archivingOrganization;
        /**
         * 子女状态
         */
        private String stateOfChildren;
        /**
         * 子女有无商业保险
         */
        private String doChildrenHaveCommercialInsurance;
        /**
         * 有无违法违纪行为
         */
        private String isThereAnyViolationOfLawOrDiscipline;
        /**
         * 有无重大病史
         */
        private String areThereAnyMajorMedicalHistories;
        /**
         * QQ
         */
        private String qq;
        /**
         * 微信
         */
        private String wechat;
        /**
         * 居住证城市
         */
        private String residenceCardCity;
        /**
         * 居住证办理日期
         */
        private String dateOfResidencePermit;
        /**
         * 居住证截止日期
         */
        private String residencePermitDeadline;
        /**
         * 现居住地
         */
        private String placeOfResidence;
        /**
         * 通讯地址
         */
        private String postalAddress;
        /**
         * 联系手机
         */
        private String contactTheMobilePhone;
        /**
         * 个人邮箱
         */
        private String personalMailbox;
        /**
         * 紧急联系人
         */
        private String emergencyContact;
        /**
         * 紧急联系电话
         */
        private String emergencyContactNumber;
        /**
         * 社保电脑号
         */
        private String socialSecurityComputerNumber;
        /**
         * 公积金账号
         */
        private String providentFundAccount;
        /**
         * 银行卡号
         */
        private String bankCardNumber;
        /**
         * 开户行
         */
        private String openingBank;
        /**
         * 学历类型
         */
        private String educationalType;
        /**
         * 毕业学校
         */
        private String graduateSchool;
        /**
         * 入学时间
         */
        private String enrolmentTime;
        /**
         * 毕业时间
         */
        private String graduationTime;
        /**
         * 专业
         */
        private String major;
        /**
         * 毕业证书
         */
        private String graduationCertificate;
        /**
         * 学位证书
         */
        private String certificateOfAcademicDegree;
        /**
         * 上家公司
         */
        private String homeCompany;
        /**
         * 职称
         */
        private String title;
        /**
         * 简历
         */
        private String resume;
        /**
         * 有无竞业限制
         */
        private String isThereAnyCompetitionRestriction;
        /**
         * 前公司离职证明
         */
        private String proofOfDepartureOfFormerCompany;
        /**
         * 备注
         */
        private String remarks;
    
        /**
         * 离职时间
         */
        private String resignationTime;
        /**
         * 离职类型
         */
        private String typeOfTurnover;
        /**
         * 申请离职原因
         */
        private String reasonsForLeaving;
    
        public EmployeeReportResult(UserCompanyPersonal personal, EmployeeResignation resignation) {
            BeanUtils.copyProperties(personal,this);
            if(resignation != null) {
                BeanUtils.copyProperties(resignation,this);
            }
        }
    }
    

     2. Controller(最重要的就是第一步构造数据,将数据从表中查出)

    @RequestMapping(value = "/export/{month}", method = RequestMethod.GET)
    public void export(@PathVariable(name = "month") String month) throws Exception {
        //1.构造数据
        List<EmployeeReportResult> list =
                userCompanyPersonalService.findByReport(companyId,month+"%");
        //2.创建工作簿
        XSSFWorkbook workbook = new XSSFWorkbook();
        //3.构造sheet
        String[] titles = {"编号", "姓名", "手机","最高学历", "国家地区", "护照号", "籍贯",
                "生日", "属相","入职时间","离职类型","离职原因","离职时间"};
        Sheet sheet = workbook.createSheet();
        Row row = sheet.createRow(0);
        AtomicInteger headersAi = new AtomicInteger();
        for (String title : titles) {
            Cell cell = row.createCell(headersAi.getAndIncrement());
            cell.setCellValue(title);
        }
        AtomicInteger datasAi = new AtomicInteger(1);
        Cell cell = null;
        for (EmployeeReportResult report : list) {
            Row dataRow = sheet.createRow(datasAi.getAndIncrement());
            //编号
            cell = dataRow.createCell(0);
            cell.setCellValue(report.getUserId());
            //姓名
            cell = dataRow.createCell(1);
            cell.setCellValue(report.getUsername());
            //手机
            cell = dataRow.createCell(2);
            cell.setCellValue(report.getMobile());
            //最高学历
            cell = dataRow.createCell(3);
            cell.setCellValue(report.getTheHighestDegreeOfEducation());
            //国家地区
            cell = dataRow.createCell(4);
            cell.setCellValue(report.getNationalArea());
            //护照号
            cell = dataRow.createCell(5);
            cell.setCellValue(report.getPassportNo());
            //籍贯
            cell = dataRow.createCell(6);
            cell.setCellValue(report.getNativePlace());
            //生日
            cell = dataRow.createCell(7);
            cell.setCellValue(report.getBirthday());
            //属相
            cell = dataRow.createCell(8);
            cell.setCellValue(report.getZodiac());
            //入职时间
            cell = dataRow.createCell(9);
            cell.setCellValue(report.getTimeOfEntry());
            //离职类型
            cell = dataRow.createCell(10);
            cell.setCellValue(report.getTypeOfTurnover());
            //离职原因
            cell = dataRow.createCell(11);
            cell.setCellValue(report.getReasonsForLeaving());
            //离职时间
            cell = dataRow.createCell(12);
            cell.setCellValue(report.getResignationTime());
        }
        String fileName = URLEncoder.encode(month+"人员信息.xlsx", "UTF-8");
        response.setContentType("application/octet-stream");
        response.setHeader("content-disposition", "attachment;filename=" + new
                String(fileName.getBytes("ISO8859-1")));
        response.setHeader("filename", fileName);
        workbook.write(response.getOutputStream());
    }

     3. service

    public List<EmployeeReportResult> findByReport(String companyId, String month) {
        return userCompanyPersonalDao.findByReport(companyId, month);
    }

    4. dao

    @Query(value = "select new com.ihrm.domain.employee.response.EmployeeReportResult(a,b) from UserCompanyPersonal a " +
                "LEFT JOIN EmployeeResignation b on a.userId=b.userId where a.companyId=?1 and a.timeOfEntry like?2 or (" +
                "b.resignationTime like ?2)")
    List<EmployeeReportResult> findByReport(String companyId, String month);

    四. 测试

    使用postman进行测试, 注意:不要使用send要使用send and download

     

    展开全文
  • 报表导出

    2019-04-10 15:14:38
    最近在做一个报表导出,根据时间导出相应的表格数据;接下来我就来总结一下: 1、大概就是长这个样子,点击按月统计,会弹出一个时间 日期,查询对应的年月,显示对应 的数据, 2、具体的实现方法如下: js中的代码 ...

    最近在做一个报表导出,根据时间导出相应的表格数据;接下来我就来总结一下:

    1、大概就是长这个样子,点击按月统计,会弹出一个时间 日期,查询对应的年月,显示对应 的数据,
    在这里插入图片描述2、具体的实现方法如下:
    js中的代码

    
    $("#btn_export").click(function(){
    	var getSelectRows = $("#order-completion").bootstrapTable('getSelections', function (row) {
            return row;
    		});
    		
    	if(getSelectRows.length<=0){
    		ToastrOptions();
    		toastr.warning('请勾选需要导出的订单');
    	}else{
    		var orderItemid="";
    		for (var i = 0; i < getSelectRows.length; i++){
    		//获取选中的订单编号
    			orderItemid = orderItemid+getSelectRows[i].returnOrderItemId+",";
    		}
    		//获取xxx编号
    		var supplierId=getSelectRows[0].itemSupplieid;
    
    		var state=getSelectRows[0].itemState;
    		//对应的后台导出路径 以及传递的参数
    		location.href = "/exportOrderExcellReturn?supplierId="+supplierId+"&orderItemid="+orderItemid
    	}
    })
    

    3、controller层代码:
    设置表头以及表格名称:

    private static String[] columnNames= {"序号","订单编号","商品名称","品牌","规格","单价","数量","总价","下单时间","收货人","联系电话","收货地址"};
    private String allExcelFileName = "订单信息";
    	
    

    2、具体导出方法的实现

    	@ResponseBody
    		   @RequestMapping("/exportOrderExcellReturn")
    			public String findorderforexcelRrturn(Integer state,String supplierId,String orderItemid,HttpServletResponse response) throws Exception {
    			  List<Integer> itemids= new ArrayList<Integer>();
    			  //截取传递过来的编号,并且以逗号进行分割
    				String ids[]=orderItemid.split(",");
    				for (String string : ids) {
    					itemids.add(Integer.parseInt(string));
    				}
    			
    			
    			   //自定义的实体类,里面有你所需要的属性
    			   OrederTJPojo1 orderTJPojo=new OrederTJPojo1();
    			   orderTJPojo.setSupplierId(supplierId);//供应商id
    			   orderTJPojo.setItemState(state);;//产品状态
    			   orderTJPojo.setList(itemids);//商品集合
    			   
    			   //根据条件查询的方法
    			 List<ReturnTableBySelf>  orderList = orderServices.findAllReturnOrderTime(orderTJPojo);
    				int v=1;
    				HSSFWorkbook wb = new HSSFWorkbook();
    				response.setContentType("application/x-download");//下面三行是关键代码,处理乱码问题
    				response.setCharacterEncoding("utf-8");
    				response.setHeader("Content-Disposition", "attachment;filename="+new String(allExcelFileNameT.getBytes("gbk"), "iso8859-1")+".xls");
    			    HSSFSheet sheet = wb.createSheet();
    			    wb.setSheetName(0, allExcelFileNameT);
    			    HSSFRow row = sheet.createRow(0);
    			  
    			    for (int i = 0; i < columnNamesT.length; i++) {
    		           HSSFCell cell = row.createCell((short) i);
    		           cell.setCellValue(new HSSFRichTextString(columnNamesT[i]));
    		       }
    			    int xh=0;
    			    
    			    for (ReturnTableBySelf com : orderList) {
    			    		 xh++;
    				         String xuhao = String.valueOf(xh);
    				    	 String[] columnAsset = {xuhao,
    				    			com.getReturnOrderserialnumber(),//退货订单号
    				    			com.getProduct().getProductName(),//商品名
    				    			com.getProduct().getBrandName(),//品牌
    				    			com.getProduct().getProductSpec(),//规格
    				    			com.getProduct().getProductPrice().toString(),//单价
    				    			com.getReturnOrdernumber().toString(),//数量
    				    			com.getProduct().getProductPrice().multiply(new BigDecimal(com.getReturnOrdernumber())).toString(),//计算总价
    				    			sdf.format(com.getOrderTable().getOrderTime()),
    			    				com.getOrderTable().getUserName(),//收货人姓名
    								com.getOrderTable().getOrderPhone().substring(0,3)+"****"+com.getOrderTable().getOrderPhone().substring(7, com.getOrderTable().getOrderPhone().length()),//收货人手机号
    //				    			com.getOrderTable().getOrderShouhuodizhi(),//收货人地址
    				    	 };
    				    	 
    			           HSSFRow row01 = sheet.createRow(v++);
    			           for (int i = 0; i < columnNamesT.length; i++) {
    			               HSSFCell cell = row01.createCell((short) i);
    			               if("null".equals(columnAsset[i])){
    			               	columnAsset[i]="";
    			               }
    			               cell.setCellValue(columnAsset[i]);
    			           }
    			    	}
    			    
    		       Date currentTime = new Date();
    		       String dateString = DateUtil.data2String(currentTime);
    		       //将文件夹名字于对应格式拼接起来
    		       allExcelFileNameT+=dateString+".xls";
    		       try {
    		          response.setContentType("application/vnd.ms-excel;charset=utf-8");
    		           wb.write(response.getOutputStream());
    		           response.getOutputStream().flush();
    		           response.getOutputStream().close();
    				}catch (Exception e) {
    					e.printStackTrace();
    				}
    		     return null;
    			}
    	 	
    	 	
    

    4、注意点:
    介于是多表联查,所以字段比较多。映射关系的时候千万要仔细;
    关于数据库是Date类型的,而前台传递过来的却是String类型的数据,我有必要说明一下:
    后台处理可能会出现转换格式错误,当时解决这个办法找了好久,最后总结了一下往sql语句去变通

    select * form t_table where date_format(o.order_time ,'%Y-%m')=#{betime}
    
    

    这个是将它转为String类型的,后台and数据库通用。

    展开全文
  • 两种报表导出方式

    2017-12-03 00:08:41
    使用后台java代码实现报表导出的方法、 和前台页面导出的方法。 后台可根据查出来的值进行报表导出 前台导出,可设置接口默认导出全部,
  • 情景:一个决策报表中有三个参数控件,本报表显示的是总结后的报表块,但是业务方面需要用到另一种形式的报表块,在参数面板中添加导出空件,根据此时的参数值进行明细导出。 一开始的思路有点错误。想的是将两个...

    情景:一个决策报表中有三个参数控件,本报表显示的是总结后的报表块,但是业务方面需要用到另一种形式的报表块,在参数面板中添加导出空件,根据此时的参数值进行明细导出。

    一开始的思路有点错误。想的是将两个报表块放在一个决策报表中,但是帆软对决策报表的导出支持不是很够,而且要做到选择对单个报表块导出,需要用到JQUERY,本人不是很熟悉,只能转变一种思路。

    解决方案:

    帆软对于普通报表.cpt的支持较好。将需要导出的报表块单独做成一个普通报表文件,通过决策报表中控件的点击事件实现传参下载。

    点击事件的代码如下:

    var ware = this.options.form.getWidgetByName("warehouse")
    var seller = this.options.form.getWidgetByName("sellername")
    var charge = this.options.form.getWidgetByName("charger")
    console.log(ware.getValue())
    console.log(seller.getValue())
    console.log(charge.getValue())
    
    window.open(encodeURI('/webroot/decision/view/report?viewlet=库存相关/料品寄售明细.cpt&warehouse='+ware.getValue()+'&SellerName='+seller.getValue()+'&BusinessPeople='+charge.getValue())+'&format=excel')

    注意:我在这出了一个问题,只是绕开了,并没有找到原因。warehosue sellername charger 是三个全局参数绑定了三个参数控件,本来打算用全局参数对js事件进行传参,但是,点击导出按钮时,三个参数的值无法拿到,很费解。最后通过直接获取参数面板控件的值才解决功能需求的。

    展开全文
  • 报表导出功能

    千次阅读 2016-06-21 10:13:22
    项目中用到了报表导出功能,没有使用组件方法,直接从后台查出数据,用jxl直接写,现在做一下笔记:首先,在jsp页面中,按钮的代码是这样的: 下载订单 onclick=”downloadOrderMgr(); 对应的js方法: 然后,...

    项目中用到了报表导出功能,没有使用组件方法,直接从后台查出数据,用jxl直接写,现在做一下笔记:

    首先,在jsp页面中,按钮的代码是这样的:

    下载订单
    οnclick=”downloadOrderMgr();
    对应的js方法:
    这里写图片描述

    然后,我们来到对应的方法中:
    if (StringUtils.isBlank(method)) {
    model = “/model/sop/order/orderMgrQuery.jsp”;
    PageBean pageBean = sopBusiness.selectSopOrderListForPage(bo, pageNo, pageSize);
    view.addObject(“orderList”, pageBean);
    } else {
    List vendOrderBoList = sopBusiness.selectSopOrderList(bo);
    if (method.equals(“download”)) {
    WritableWorkbook book = null;
    try {
    String filename = “订单查看”;

                    ServletOutputStream servletoutputstream = response.getOutputStream();
                    book = Workbook.createWorkbook(servletoutputstream);
    
                    // 生成名为"sheet1"的工作表,参数0表示这是第一页
                    WritableSheet sheet = book.createSheet("sheet1", 0);
    
                    CellView cellView = new CellView();
                    cellView.setAutosize(true); // 设置自动大小
                    // 设置单元格的样式
                    WritableCellFormat fileNamecellFormat = new WritableCellFormat();
                    // 设置水平居中
                    fileNamecellFormat.setAlignment(jxl.format.Alignment.CENTRE);
                    // 设置垂直居中
                    fileNamecellFormat.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);
                    // 设置显示的字体样式,字体,字号,是否粗体,字体颜色
                    fileNamecellFormat.setFont(new WritableFont(WritableFont.ARIAL, 15));
    
                    sheet.addCell(new Label(0, 0, filename, fileNamecellFormat));
                    // 设置要合并单元格的下标
                    sheet.mergeCells(0, 0, columnName.length - 1, 0);
                    // 设置单元格的样式
                    WritableCellFormat titleCellFormat = new WritableCellFormat();
                    // 设置水平居中
                    titleCellFormat.setAlignment(jxl.format.Alignment.CENTRE);
                    // 设置垂直居中
                    titleCellFormat.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);
                    // 设置显示的字体样式,字体,字号,是否粗体,字体颜色
                    titleCellFormat.setFont(new WritableFont(WritableFont.ARIAL, 14));
    
                    if (columnName != null && columnName.length-1 > 0) {
                        for (int i = 0; i < columnName.length-1; i++) {
    
                            sheet.addCell(new Label(i, 1, columnName[i], titleCellFormat));
                            sheet.setColumnView(i, cellView);// 根据内容自动设置列宽
                        }
    
                    }
    
                    // 设置单元格的样式
                    WritableCellFormat centerCellFormat = new WritableCellFormat();
                    // 设置水平居中
                    centerCellFormat.setAlignment(jxl.format.Alignment.CENTRE);
                    // 设置垂直居中
                    centerCellFormat.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);
                    // 设置显示的字体样式,字体,字号,是否粗体,字体颜色
                    centerCellFormat.setFont(new WritableFont(WritableFont.ARIAL, 13));
    
                    // 设置单元格的样式
                    WritableCellFormat cellFormat = new WritableCellFormat();
                    // 设置显示的字体样式,字体,字号,是否粗体,字体颜色
                    cellFormat.setFont(new WritableFont(WritableFont.createFont("Arial"), 13));
    
                    if (vendOrderBoList != null && !vendOrderBoList.isEmpty()) {
                        for (int i = 0; i < vendOrderBoList.size(); i++) {
                            VendOrderBo vendOrderBo = vendOrderBoList.get(i);
                            sheet.addCell(new Label(0, i + 2, vendOrderBo.getCoNum(), cellFormat));
                            sheet.addCell(new Label(1, i + 2, vendOrderBo.getOrderTypeName(), cellFormat));
                            sheet.addCell(new Label(2, i + 2, vendOrderBo.getCustName(), cellFormat));
                            sheet.addCell(new Label(3, i + 2, vendOrderBo.getNickName(), cellFormat));
                            sheet.addCell(new Label(4, i + 2, vendOrderBo.getOrderAmt(), cellFormat));
                            double AbledAmout = Double.valueOf(vendOrderBo.getAbledAmout());
                            sheet.addCell(new Number(5, i + 2, AbledAmout, cellFormat));
                            sheet.addCell(new Label(6, i + 2, vendOrderBo.getUnAbleAmout(), cellFormat));
                            sheet.addCell(new Label(7, i + 2, vendOrderBo.getPayTypeName(), cellFormat));
                            sheet.addCell(new Label(8, i + 2, vendOrderBo.getStatusName(), cellFormat));
                            sheet.addCell(new Label(9, i + 2, vendOrderBo.getCrtTime(), cellFormat));
                        }
                    }
                    book.write();
    
                    filename = new String(URLDecoder.decode("查看订单", "UTF-8").getBytes("UTF-8"), "ISO-8859-1");
                    response.setHeader("Content-disposition",
                            new StringBuilder("attachment; filename=").append(filename).append(".xls").toString());
                    response.setDateHeader("Expires", 0L);
                    response.setContentType("application/vnd.ms-excel;charset=utf-8");
                    servletoutputstream.flush();
    
                } catch (Exception e) {
                    e.printStackTrace();
                } finally {
                    if (book != null) {
                        try {
                            book.close();
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                }
                return null;
            }
    

    这段代码中,前部分是设置了表格标题部分格式,数据从form表单中隐藏域获得;后面是设置了正文的格式,数据是从后台中获取:
    List vendOrderBoList = sopBusiness.selectSopOrderList(bo); 这个bo就是我们定义的实体类,其中包括了需要查找的所有信息,也包括起止页,查询条件;
    该方法是自定义的,就是从后台查数据,这个不同框架有不同框架方法,但是得到的结果是一样的,就是根据当前查询条件查出来的数据;
    后面是给浏览器写的消息头,固定写法;
    最后return null,是因为我们是在ModelAndView方法中写的,我们只需要导出表格,不需要返回任何页面,所以就return null;
    后来测试发现多次点击下载后会有标题重复现象,所以js中的代码改为:
    这里写图片描述

    展开全文
  • 润乾报表文件通过 TAG 标签方式发布,导出 EXCEL、word、PDF 的文件名称默认与报表文件名称相同,例如,报表文件名叫 gcxmsyqk.rpx, 那么这张报表导出 excel 时文件名称就是 gcxmsyqk.xlsx。 如果需要用其他规则...
  • 百万数据报表导出

    2019-04-21 22:15:10
    需求:使用Apache POI完成百万数据量的Excel报表导出 对比: 我们都知道Excel可以分为早期的Excel2003版本(使用POI的HSSF对象操作)和Excel2007版本(使用POI的XSSF 操作),两者对百万数据的支持如下: Excel ...
  • 报表导出excel提供了四种方式,在单元格属性“其他/导出excel方式”可以选择,如下图 一是导出缺省值:报表中的单元格包含两个值,一个真实值一个显示值,但是在excel中单元格只能有一个值,所以只能导出显示值和...
  • 报表导出功能实现

    千次阅读 2012-10-10 11:33:44
    近期做的项目中涉及到报表导出的功能,在这里进行小小总结一下,希望能帮助到到家。  首先实现报表导出到指定文件下,以excel格式报表为例进行说吧。 import java.io.File; import java.io.FileOutputStream; ...
  • 润乾报表导出pdf问题

    千次阅读 2016-11-28 09:53:26
    润乾V4 润乾报表 Linux下导出pdf文字模糊
  • 报表导出测试 可用性 准确性
  • 导出excel报表

    2014-03-03 20:40:15
    前段时间把报表导出成excel,代码分享给大家 /** * * @Title: doExport * @Description: 数据导出 * @param @param service 报表管理使用服务类 * @param @param category 报表类型 * @param @param json ...
  • [帆软报表]自定义报表导出文件名

    千次阅读 2015-07-23 11:49:00
    在帆软报表中,导出报表的名称默认是报表cpt文件...想要自定义报表导出的文件名则需要利用"_filename_"这个参数。 例如报表访问路径如下: http://localhost:8075/WebReport/ReportServer?reportlet=GettingStart...
  • element-ui报表导出

    千次阅读 2019-01-21 10:44:59
    有一个页面,需要报表导出 第一步 安装依赖并引入js文件 npm install -S file-saver xlsx npm install -D script-loader blob.js文件 /* eslint-disable */ /* Blob.js * A Blob implementation. * 2014...
  • 很多朋友都利用水晶报表技术来做报表,它支持直接将报表导出为包括Excel,Pdf在内的多种格式。它的导出操作是通过CrystalReportViewer上面的一个导出按钮实现的。我们无需为此编写任何代码。正因为我们没有为其编写...
  • 报表导出后加载失败的解决

    千次阅读 2005-06-22 09:53:00
    很多人可能都碰到过,正常预览和打印是没有问题,而把报表导出后再加载的时侯却出现“报表加载失败”的问题,这是由于路径原因导致的。导出报表后,其相对路径就变成了导出位置的路径,除非你关闭程序重新加载,否则...
  • 润乾报表导出txt文件

    2016-12-01 11:31:14
    在润乾报表的使用过程中,许多客户希望将润乾报表展现的数据导出成txt格式的文本文件,将报表的数据导出成txt文件需要写API代码来实现。下面就用一个简单的例子,实现导出txt的功能。 实现上面提到的导出txt文件的...
  • 谈谈SAP报表导出

    千次阅读 2014-11-05 10:56:48
    从SAP中导出报表方法   目的:有时候需要简化从SAP导出报表的步骤,如不想每次都看到下列的【Select Spreadsheet】对话框。可参考以下操作。 操作步骤: 1. 进入菜单List->Export->Spreadsheet... ...
  • easyui报表导出

    千次阅读 2016-02-21 12:21:48
    Java +EasyUI+SpringMvc实现Excle导入导出(上下) http://blog.csdn.net/zwk626542417/article/details/43150047 http://blog.csdn.net/zwk626542417/article/deta
  • 报表导出设计方案

    千次阅读 2008-03-26 10:23:00
    6.7 报表导出设计方案报表作为一种分析数据的工具,主要用来让用户查看分析结果,但如果用户的机器上没有安装报表工具,该如何查看呢?这是可以将其导出为各种文件格式,以供用户查看。本节将对报表导出设计方案...
  • ActiveReports 支持多种格式的报表导出,包括PDF、Excel、Word、RTF、HTML、Text、TIFF以及其它图片格式,用户可以将它们应用到Windows Forms、Web、WPF、Silverlight等应用系统中。 在专业版的 ActiveReports 里,...
  • web报表导出成XML文件

    2009-12-20 16:48:00
    润乾报表有着完善的输出功能,可以直接web报表导出为Excel、Word、Pdf、Txt等文件形式。但是一些web报表用户希望可以将报表导出到XML文件中以便对数据进行分析与解析,润乾报表同样可以实现这个需求,本文讲述如何...
  • birt报表导出word时内容全在一页里面,导致内容显示不完全,并且导出的word页数是2页,请大神支招!
  • 使用JEECG中的动态报表生成报表后,点击导出功能,如果有中文查询条件那么这个中文条件在经过JeecgExcelExport 或者 $.ajax的两种传输方式 在后台接收到的数据会产生乱码,为了能够通用性强,我们不可能每次用到就...
  • 有些客户的公司没有使用office系列的软件,而是使用wps系列的软件,他们在使用快逸报表的过程中遇到导出为外部word的需求时,就需要对应的导出word扩展名为doc的文档变成导出扩展名为wps的文档。 本文介绍在快逸...
  • 如题,用户需求如下:页面上有几个查询条件,基本上查询的是...有没有什么好的方案或报表框架,可以实现用户的自定义字段查询及报表导出? 2.在进行海量数据的导出时,有没有比较快速,并且系统资源占用较小的方案?
  • BIRT报表导出Excel2007格式文件时,内容过大导致分成多个sheet,如何只用一个sheet导出数据? ps:如果导出Excel2003格式文件时,是用一个sheet导出的。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 48,114
精华内容 19,245
关键字:

怎么把报表导出