如何向水晶报表中动态添加ado.net中的数据??注意,我的水晶报表是单独安装的,不是与vs2002捆绑的。
我在水晶报表中生成rpt文件时,如果直接选择和数据库连接(用OLEDB)是没有问题。
下面我这么做:
先在.net项目里生成DataSet1.xsd,然后把要显示的表拖进去,形成结构。然后在水晶报表设计器中重新生成.rpt文件,数据库专家选ado.net,然后选XML文件,然后选择DataSet1.xsd,然后添加要显示的字段,一切正常。编译也正常,但是当在IE中打开时报错误:文件 d:\report1.rpt 内出错:无法连接:错误的登录参数。
注意,我的水晶报表是单独安装的,不是在vs.net中捆绑的。代码如下:
。。。。。。。。。
DataSet ds=new DataSet1();
da.Fill(ds);
conn.Close();
TableLogOnInfo logOnInfo = new TableLogOnInfo ();
logOnInfo.ConnectionInfo.ServerName ="192.168.30.48";
logOnInfo.ConnectionInfo.DatabaseName = "pubs";
logOnInfo.ConnectionInfo.UserID = "sa";
logOnInfo.ConnectionInfo.Password = "19";
reportDocument1.Load("d:\\report1.rpt");
reportDocument1.SetDataSource(ds);
reportDocument1.Database .Tables [0].ApplyLogOnInfo (logOnInfo);
CrystalReportViewer1.ReportSource=reportDocument1;
CrystalReportViewer1.DataBind();