快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

如何让WEB应用程序在CLIENT端实现导出报表功能

在Web应用程序中,我们无法像在Windows应用程序那样导出报表,因为程序是在服务器端执行的,执行导出时,其结果也是在服务器端,那应该如何才能实现完整的客户端导出呢?其实这个也不难,方式是:把报表指定导出到某个网站上事先建立好的报表暂存文件,然后利用response.redirect()指令,将浏览器网址指向该报表位置,这样用户的浏览器就会尝试下载刚导出的文件,文件就会被下载到客户端,从而实现我们需要的效果。 部分代码如下:
public string ExportReport()
{
ExportOptions creo = new ExportOptions();
DiskFileDestinationOptions crdo = new DiskFileDestinationOptions();
string FileName = Request.PhysicalApplicationPath + "ExportFileExap.xls";

//设置导出选项
creo = Myrpt.ExportOptions;
creo.ExportFormatType = ExportFormatType.Excel;
creo.ExportDestinationType = ExportDestinationType.DiskFile;

//设置磁盘文件选项
crdo.DiskFileName = FileName;
creo.DestinationOptions = crdo;

//导出报表
MyRpt.Export();
return FileName;
}

private void buttonExport_Click(object sender, System.EventArgs e)
{
string FileName = ExportReport();
Response.Redirect(Replace(FileName,Request.PhysicalApplicationPath + "ExportFile",""));
}


要注重的是:当在web中进行导出时,需要对导出目录具有建立文件的权限,假如权限不足,将会出现“拒绝访问报表文件……”的错误。 让ASPNET用户(安装.NET Framework时自动生成的系统用户)在导出目录文具有“写入”权限即可。
返回类别: 教程
上一教程: 也谈ASP中的RESPONSE属性
下一教程: 客户端脚本验证码总结

您可以阅读与"如何让WEB应用程序在CLIENT端实现导出报表功能"相关的教程:
· 关于水晶报表10的WEB应用程序部署ADODB问题
· 在VS.NET中编写Web应用程序(一)
· WEB应用中报表打印的实现
· 基于SQL SERVER的WEB应用程序注入攻击具体介绍
· 在ASP中利用COM组件开发WEB应用程序
    微笑服务 优质保证 索取样品