excel导出.docx
- 文档编号:29566114
- 上传时间:2023-07-24
- 格式:DOCX
- 页数:14
- 大小:19.13KB
excel导出.docx
《excel导出.docx》由会员分享,可在线阅读,更多相关《excel导出.docx(14页珍藏版)》请在冰豆网上搜索。
excel导出
一、前台的实现:
1.导入excelExport的swc包
2.在绑定国际化文件的下方加入进度条的样式
Stylesource="progress.css"/> 3.在mxml文件中,定义一个导出excel按钮对象 privatevarexcelBtn: ExcelExportButton; 4.要实现excel的导出功能,需要传递六个参数: 1)获取数据的URL地址,不能包含参数 //URL地址,不包含参数 varrequestUrl: String=application.parameters.basepath+"/invoice_management/invoice/invoiceinfo/invoiceinfo_exportInfo.ml"; excelBtn.requestUrl=requestUrl; 2)可用“? ”拼接所需传递的entity里所拥有的字段的参数(一般用于查询条件的判定) //参数字符串 varparamString: String=""; //拼接合同号参数 if(systemContractId! =null&&systemContractId.length>0){ paramString+="? vo.entity.systemContractId="+httpEncoding(systemContractId); } //拼接客户名称参数 if(customerName! =null&&customerName.length>0){ if(paramString.length>0){ paramString+="&vo.entity.customerName="+httpEncoding(customerName); }else{ paramString+="? vo.entity.customerName="+httpEncoding(customerName); } } excelBtn.paramString=paramString; 3)请求需要的参数字符串(用于传递在datagrid中数据列以0、1类数据存入的数据,要把此类数据转换为字符串导入到excel中) 其中,需要注意的是excelHead此参数在国际化中的写入为要导入到excel表中表头所排列的位置顺序。 invoice_management.invoice.excel_export_data.head=序号,开票日期,发票号码,打印状态,开票人,发票状态,最后收款日期,票据类型,收款联系人姓名,合同编号,客户联系地址,业务合同编号,收款联系人邮编,客户名称,联系人电话,收款类型,EMS号码,收款金额,寄送日期,租金月份,备注,开票金额,传输或录入 //参数对象 varparamObj: Object=newObject(); paramObj.excelHead=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.excel_export_data.head"); paramObj.printStatus0=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_print_status_not.label"); paramObj.printStatus1=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_print_status.label"); paramObj.invoiceStatus0=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_status_cancel.label"); paramObj.invoiceStatus1=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_status.label"); paramObj.invoiceStatus2=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_status_rubric.label"); paramObj.invoiceType0=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_type_gqfq.label"); paramObj.invoiceType1=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_type_lakh.label"); paramObj.transferOrEntry0=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_transfer.label"); paramObj.transferOrEntry1=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_entry.label"); paramObj.printStatus2=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_print_status_unknow.label"); paramObj.invoiceStatus3=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_status_unknow.labell"); paramObj.invoiceType2=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_type_unknow.label"); paramObj.transferOrEntry2=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_unknow.label"); //判断开始日期不为空 if(startDate! =null&&startDate.length>0){ paramObj.startDate=startDate; } //判断结束日期不为空 if(endDate! =null&&endDate.length>0){ paramObj.endDate=endDate; } //判断起始金额不为空 if(startMoney! =null&&startMoney.length>0){ paramObj.startMoney=startMoney; } //判断结束金额不为空 if(endMoney! =null&&endMoney.length>0){ paramObj.endMoney=endMoney; } excelBtn.paramObj=paramObj; 4)错误提示信息(为自己定义的国际化里的错误提示信息) //错误提示信息 varerrorMessage: String=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_info_excel_export_alert.error"); excelBtn.errorMessage=errorMessage; 5)所需要传递的结果集(用于生成excel里的序号) //为导出按钮的dataList赋值 excelBtn.dataList=gridData; 6)传递当前的窗体对象 //application赋值 excelBtn.application=Application(application); 7)整个excel导出方法体如下: //定义导出excel按钮对象 privatevarexcelBtn: ExcelExportButton; //初始化导出excel按钮 privatefunctioninitExcelExportButton(): void{ excelBtn=newExcelExportButton(); //URL地址,不包含参数 varrequestUrl: String=application.parameters.basepath+"/invoice_management/invoice/invoiceinfo/invoiceinfo_exportInfo.ml"; excelBtn.requestUrl=requestUrl; //参数字符串 varparamString: String=""; //拼接合同号参数 if(systemContractId! =null&&systemContractId.length>0){ paramString+="? vo.entity.systemContractId="+httpEncoding(systemContractId); } //拼接客户名称参数 if(customerName! =null&&customerName.length>0){ if(paramString.length>0){ paramString+="&vo.entity.customerName="+httpEncoding(customerName); }else{ paramString+="? vo.entity.customerName="+httpEncoding(customerName); } } excelBtn.paramString=paramString; //参数对象 varparamObj: Object=newObject(); paramObj.excelHead=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.excel_export_data.head"); paramObj.printStatus0=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_print_status_not.label"); paramObj.printStatus1=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_print_status.label"); paramObj.invoiceStatus0=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_status_cancel.label"); paramObj.invoiceStatus1=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_status.label"); paramObj.invoiceStatus2=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_status_rubric.label"); paramObj.invoiceType0=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_type_gqfq.label"); paramObj.invoiceType1=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_type_lakh.label"); paramObj.transferOrEntry0=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_transfer.label"); paramObj.transferOrEntry1=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_entry.label"); paramObj.printStatus2=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_print_status_unknow.label"); paramObj.invoiceStatus3=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_status_unknow.labell"); paramObj.invoiceType2=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_invoice_type_unknow.label"); paramObj.transferOrEntry2=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_unknow.label"); //判断开始日期不为空 if(startDate! =null&&startDate.length>0){ paramObj.startDate=startDate; } //判断结束日期不为空 if(endDate! =null&&endDate.length>0){ paramObj.endDate=endDate; } //判断起始金额不为空 if(startMoney! =null&&startMoney.length>0){ paramObj.startMoney=startMoney; } //判断结束金额不为空 if(endMoney! =null&&endMoney.length>0){ paramObj.endMoney=endMoney; } excelBtn.paramObj=paramObj; //错误提示信息 varerrorMessage: String=resourceManager.getString("invoice_management_invoice","invoice_management.invoice.invoice_info_excel_export_alert.error"); excelBtn.errorMessage=errorMessage; //为导出按钮的dataList赋值 excelBtn.dataList=gridData; //application赋值 excelBtn.application=Application(application); } 5.在当前页面的初始化方法的回调函数里调用此方法: //初始化及查询发票信息列表请求回调gridData privatefunctionsearchResult(event: ResultEvent): void{ 。 。 。 。 。 。 。 代码省略部分。 。 。 。 。 。 。 。 。 。 。 initExcelExportButton(); 。 。 。 。 。 。 。 代码省略部分。 。 。 。 。 。 。 。 。 。 。 } 6.在excel导出的按钮click触发事件里调用excelBtn.doExportExcel()方法 GridRowid="excelgrid"width="100%"useHandCursor="true"buttonMode="true"mouseChildren="false"mouseMove="showExcelBorder()"mouseOut="noExcelBorder()"click="excelBtn.doExportExcel()"> GridItempaddingTop="3"paddingLeft="7"> Imagesource="@Embed('views/invoicemanagement/images/page_white_excel.png')"/> GridItem> GridItempaddingTop="2"paddingLeft="7"paddingRight="7"> Labeltext="{resourceManager.getString('invoice_management_invoice','invoice_management.invoice.operation_excel_export_btn.label')}"horizontalCenter="right"/> GridItem> GridRow> 二、后台的实现: 1.定义excel导出服务接口 /** *excel导出服务接口 */ privateIExcelExportServiceexcelExportService; 2.配置spring文件,在自己的service配置下注入excelExportService --注入excel导出服务接口--> 3.获取当前实体的数据结果集 List 4.跟据前台所传递的excel表头对象,并以逗号进行分割,从而获取到当前所传递的表头数量。 intcolumnCounnt=vo.getExcelHead().split(",").length; 5.A.定义list,用于调excel导出所需传递的参数。 B.循环遍历当前实体的数据结果集,获取实体对象。 C.定义一个数组,数组长度是表头的数量,用于分别向excel表中赋值,所赋值要对应上表头信息的顺序。 D.把数据对象添加到所定义的list里,用于参数的传递 //定义list,用于调excel导出所需传递的参数 ListvoList=newArrayList(); for(inti=0;i InvoiceInfoEntityentity=entityList.get(i); //定义数组,用于分别向excel表中赋值 String[]rowValue=newString[columnCounnt]; rowValue[0]=String.valueOf(i+1); rowValue[1]=entity.getBillingDate();
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- excel 导出