水晶报表10 打印.导出按钮不能用

水晶报表10 打印、导出按钮不能用

2012-10-28 20:52 2467人阅读 评论(1) 收藏 举报

  分类:

Report(16)

  ASP.NET VS(43)

最近公司接了一个项目,要给客户做许多报表,并且是中国式的报表,本人就用了c#+水晶报表10进行了开发,但是中间遇到了一个问题,”动态设置水晶报表的数据源后,打印、导出、查找等按钮不能用,即使用水晶报表的工具栏时,出现的不是打印、导出、查找的结果,而是一张空白”。出现这个问题挺郁闷的,于是在网上也查找了一番,但是网友们也都遇见到这个问题,都 没有给出解决的办法。无奈之下,本人专门研究了一番,最后费了十牛三虎之力,终于找到了解决的办法,下面列出来,以飨读者,希望能给遇到此问题的朋友一定的帮助。

WEB窗体中有两个控件,CrystalReportViewer1  和   CrystalReportSource1, 数据源:Dataset

代码:

protected CrystalDecisions.Web.CrystalReportViewer Crv;

ReportDocument ReportDoc=new ReportDocument() ;

if (!IsPostBack)

{

SqlConnection sqlConnData=new SqlConnection(ConfigurationSettings.AppSettings["dsn"]) ;

sqlConnData.Open();

string str="select * from brigderoad where (station='"+UserStr+"') or (year='"+yearStr+"') ";

//查询特定的表

SqlDataAdapter MyAdapter=new SqlDataAdapter (str,sqlConnData);

addressDS ds=new addressDS();

MyAdapter.Fill (ds,"brigderoad");//绑定到数据源

string FilePath=Server.MapPath("report/bridgeCrR.rpt"); //指定到特定的报表

if (!ReportDoc.IsLoaded )

ReportDoc.Load(FilePath);

ReportDoc.SetDataSource(ds);

Crv.ReportSource=ReportDoc;

}

上面就是常见的代码,并且代码不存在错误,那读者要问了,上面没有错误,但是到预览报表时,要打印、导出、查找特定的页面时为什么还是空白页面呢?

哈哈,下面将解决这个问题,请往下看

if (!IsPostBack)

{

//

}

SqlConnection sqlConnData=new SqlConnection(ConfigurationSettings.AppSettings["dsn"]) ;

sqlConnData.Open();

string str="select * from brigderoad where (station='"+UserStr+"') or (year='"+yearStr+"') ";

//查询特定的表

SqlDataAdapter MyAdapter=new SqlDataAdapter (str,sqlConnData);

addressDS ds=new addressDS();

MyAdapter.Fill (ds,"brigderoad");//绑定到数据源

string FilePath=Server.MapPath("report/bridgeCrR.rpt"); //指定到特定的报表

if (!ReportDoc.IsLoaded )

ReportDoc.Load(FilePath);

ReportDoc.SetDataSource(ds);

Crv.ReportSource=ReportDoc;

看到了吧,只需要if语句后的代码放在if (!IsPostBack){ //}

的后面就可以了,呵呵,啰唆了那么多,就这么简单。Ispostback指示该页是否正为响应客户端回发而加载,或者它是否正被首次加载和访问,当执行完if (!IsPostBack){ //}之后有比讯把所查询的表重新绑定数据源,这样报表中有了数据,所以水晶报表的工具栏就可以用了。

总结:

if (!IsPostBack){ //}执行之后要把表重新绑定到数据源,这样才不会错误。

转自:http://blog.csdn.net/matail/article/details/1789489

水晶报表10 打印、导出按钮不能用

2012-10-28 20:52 2467人阅读 评论(1) 收藏 举报

  分类:

Report(16)

  ASP.NET VS(43)

最近公司接了一个项目,要给客户做许多报表,并且是中国式的报表,本人就用了c#+水晶报表10进行了开发,但是中间遇到了一个问题,”动态设置水晶报表的数据源后,打印、导出、查找等按钮不能用,即使用水晶报表的工具栏时,出现的不是打印、导出、查找的结果,而是一张空白”。出现这个问题挺郁闷的,于是在网上也查找了一番,但是网友们也都遇见到这个问题,都 没有给出解决的办法。无奈之下,本人专门研究了一番,最后费了十牛三虎之力,终于找到了解决的办法,下面列出来,以飨读者,希望能给遇到此问题的朋友一定的帮助。

WEB窗体中有两个控件,CrystalReportViewer1  和   CrystalReportSource1, 数据源:Dataset

代码:

protected CrystalDecisions.Web.CrystalReportViewer Crv;

ReportDocument ReportDoc=new ReportDocument() ;

if (!IsPostBack)

{

SqlConnection sqlConnData=new SqlConnection(ConfigurationSettings.AppSettings["dsn"]) ;

sqlConnData.Open();

string str="select * from brigderoad where (station='"+UserStr+"') or (year='"+yearStr+"') ";

//查询特定的表

SqlDataAdapter MyAdapter=new SqlDataAdapter (str,sqlConnData);

addressDS ds=new addressDS();

MyAdapter.Fill (ds,"brigderoad");//绑定到数据源

string FilePath=Server.MapPath("report/bridgeCrR.rpt"); //指定到特定的报表

if (!ReportDoc.IsLoaded )

ReportDoc.Load(FilePath);

ReportDoc.SetDataSource(ds);

Crv.ReportSource=ReportDoc;

}

上面就是常见的代码,并且代码不存在错误,那读者要问了,上面没有错误,但是到预览报表时,要打印、导出、查找特定的页面时为什么还是空白页面呢?

哈哈,下面将解决这个问题,请往下看

if (!IsPostBack)

{

//

}

SqlConnection sqlConnData=new SqlConnection(ConfigurationSettings.AppSettings["dsn"]) ;

sqlConnData.Open();

string str="select * from brigderoad where (station='"+UserStr+"') or (year='"+yearStr+"') ";

//查询特定的表

SqlDataAdapter MyAdapter=new SqlDataAdapter (str,sqlConnData);

addressDS ds=new addressDS();

MyAdapter.Fill (ds,"brigderoad");//绑定到数据源

string FilePath=Server.MapPath("report/bridgeCrR.rpt"); //指定到特定的报表

if (!ReportDoc.IsLoaded )

ReportDoc.Load(FilePath);

ReportDoc.SetDataSource(ds);

Crv.ReportSource=ReportDoc;

看到了吧,只需要if语句后的代码放在if (!IsPostBack){ //}

的后面就可以了,呵呵,啰唆了那么多,就这么简单。Ispostback指示该页是否正为响应客户端回发而加载,或者它是否正被首次加载和访问,当执行完if (!IsPostBack){ //}之后有比讯把所查询的表重新绑定数据源,这样报表中有了数据,所以水晶报表的工具栏就可以用了。

总结:

if (!IsPostBack){ //}执行之后要把表重新绑定到数据源,这样才不会错误。

转自:http://blog.csdn.net/matail/article/details/1789489


相关文章

  • 国家统计局工业企业联网直报系统
  • 国家统计局工业企业联网直报系统 企业用户快速入门 国家统计局工交司 国家统计局计算中心 2005.9 目 录 第一章 系统概述.................................................... 1 1. ...查看


  • 多秤称重管理系统说明书
  • 多秤称重管理系统 操作说明书 目录 一. 上位机软件操作............................................................................................ ...查看


  • 机构编制实名制管理系统用户手册(机关事业单位)
  • 机关事业单位 用 户 手 册 2010年11月 目 录 第一章 引言 ..................................................................................... ...查看


  • 流动人口管理
  • 1 流动人口管理 1.1 统计分析 1.1.1 全员流动人口基本情况统计 用于县及县以上人口计生委在线填报< 年度全员流动人口基本情况统计表>. 1.1.1.1 报表填录 1.1.1.1.1功能描述 在系统设置的时间段内,县级人 ...查看


  • 退休人员统一体检管理系统--劳动局医疗保险专用
  • 公司首页公司概况软件下载定制开发进入社区返回主目 录 返回主目录系统介绍<退休人员统一体检管理系统-- 劳动局医疗保险专用>集基本信息.体检报告和体检查询统计与一体,适合各参与体检的医院统一 为劳动局医疗报销专用.软件在功能方面 ...查看


  • 2014年正常调资工作工资软件操作步骤
  • 2014年正常调资工作工资软件操作步骤 2014年正常调资工作工资软件操作步骤 首先确认单位是否已在软件中做了2014.01.01年度考核业务,如果已做,请进行第二项报表打印.如果没做,请参照以下批量年度考核业务操作进行一键年度考核. 确认 ...查看


  • 国税网上申报系统操作流程
  • 网上报税和网上申报的流程 一.网上报税和网上申报的操作流程 (一)运用防伪税控开票子系统进行抄税. (二)运用网上抄报税系统进行远程报税. (三)运用网上申报软件,发送申报数据.申报成功后,查看申报结果,根据系统提示作相应处理.申报表审核成 ...查看


  • 软件产品登记指南
  • 北京软件行业协 会系统 企业级用户使用手册 国产产品申报功能 2011年1月 目录 1 国产软件产品登记申请.................................................................. ...查看


  • 网上企业资质申请流程
  • 目录 第一章 用户登录.注册与系统管理 ....................................................................... 3 1.1 用户登录与注册 .............. ...查看


热门内容