Chinaunix首页 | 论坛 | 博客
  • 博客访问: 236495
  • 博文数量: 59
  • 博客积分: 2016
  • 博客等级: 大尉
  • 技术积分: 660
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-04 17:30
文章分类
文章存档

2013年(1)

2011年(2)

2010年(7)

2009年(30)

2008年(19)

我的朋友

分类:

2009-03-27 22:38:57


 

 使用ReportViewer出现以下问题:
An error occurred during local report processing.
The definition of the report 'Main Report' is invalid.
An unexpected error occurred in Report Processing.
Could not load file or assembly 'Microsoft.ReportViewer.ProcessingObjectModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. 系統找不到指定的檔案。

解决方法:
到微软主页,下载对应的组件安装程序,安装下,即可解决.
具体使用方法:
先要画好一张报表,报表里的字段要添加一个Dataset,然后在报表里一个一个拖到Table里,设计好的报表是.rdlc文件。
关键代码:
    private void rpt_refresh(string path, string sql, string ds_string)
    {
        if (Session["database"] != null)
        {
            DBClient db = new DBClient(Session["database"].ToString().Trim());
            ReportViewer1.LocalReport.ReportPath = MapPath(path); //设置报表所在路径        
            SqlConnection MyConn=db.createConnection();
            MyConn.Open();
            SqlDataAdapter MyAdapter = new SqlDataAdapter(sql, MyConn);
            DataSet ds = new DataSet();
            MyAdapter.Fill(ds, "aaa");//获得所需要的DATASET
            ReportDataSource rds = new ReportDataSource(ds_string, ds.Tables["aaa"]);//添加报表数据源,和数据表。注意:数据源里的字段必须要在数据表里能找到对应的字段。
            ReportViewer1.LocalReport.DataSources.Clear();
            ReportViewer1.LocalReport.DataSources.Add(rds);//添加数据源
            ReportViewer1.LocalReport.Refresh();//刷新报表
        }
        else
        {
            Response.Redirect("~/Default.aspx");
        }       
    }
本文来源于Woody的鸟窝(Woody's Blog) , 原文地址:http://www.smartgz.com/blog/Article/920.asp

阅读(2103) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~