CrystalReport1 nrp=new CrystalReport1();
sqlDataAdapter1.Fill(dataSet11,"basearchives");
nrp.SetDataSource(dataSet11);
this.crystalReportViewer1.ReportSource=nrp;

解决方案 »

  1.   

    数据集已经填充了啊:
    string connstr = "user id=sa;password=songerppass;initial catalog="+
    Query.database+";data source=ERPSERVER;Connect Timeout=30";
    string selstr = "select * from invoice2  WHERE rtrim(通知单别)="+
    "'"+db+"'"+" and rtrim(通知单号)="+"'"+dh+"'";

    SqlConnection cn = new SqlConnection(connstr);
    SqlCommand sd = new SqlCommand(selstr,cn);
    SqlDataAdapter tt = new SqlDataAdapter();
    dd ds = new dd();
    tt.SelectCommand = sd; ds.Clear();
    tt.Fill(ds,"invoice2");
      

  2.   

    string connstr = "user id=sa;password=songerppass;initial catalog="+
    Query.database+";data source=ERPSERVER;Connect Timeout=30";
    就是用了数据库了。试试下面
    using CrystalDecisions.Shared ;     // 负责解释 TableLogOnInfo 类 using CrystalDecisions.CrystalReports.Engine ;         // 负责解释 ReportDocument 类   private void Page_Load(object sender, System.EventArgs e) { TableLogOnInfo logOnInfo = new TableLogOnInfo (); // 这里必须事先申明一个 ReportDocument 对象 Report ,同时加载数据报表 ReportDocument oRpt = new ReportDocument(); // 获取 .rpt 文件真实路径 string path; path=Server.MapPath ("cr.rpt"); oRpt.Load (path);   // 从 web.config 中获取 logOnInfo 参数信息 string a,b,c,d; // 获取 ServerName a=System.Configuration.ConfigurationSettings.AppSettings ["servername"]; // 获取 DatabaseName b=System.Configuration.ConfigurationSettings.AppSettings ["database"]; // 获取 UserId c=System.Configuration.ConfigurationSettings.AppSettings ["userid"]; // 获取 password d=System.Configuration.ConfigurationSettings.AppSettings ["pass"]; // 设置 logOnInfo 参数 logOnInfo.ConnectionInfo.ServerName = a; logOnInfo.ConnectionInfo.DatabaseName = b; logOnInfo.ConnectionInfo.UserID = c; logOnInfo.ConnectionInfo.Password = d;   oRpt.Database .Tables [0].ApplyLogOnInfo (logOnInfo);   // 建立 .rpt 文件与 CryStalReportviewer 文件之间的连接 CrystalReportViewer1.ReportSource = oRpt;   DataBind(); } 
     
      

  3.   

    原来是把加载水晶报表的代码写在了CrystalReportViewer1_load的事件里,改为窗体初始化事件即可!