跪求:用CrystalReport9 连接Oracle登陆失败问题
amfb 2005-09-01 03:05:43 我做了一个水晶报表CrystalReport1.rpt,用下面的方法进行连接Oracle数据,可总出现“登陆失败'的错误,这个方法我在SQL server上是可以连的,为什么换到Oracle就不行了??
private void Page_Load(object sender, System.EventArgs e)
{
TableLogOnInfo logOnInfo = new TableLogOnInfo();
ReportDocument rpdMy0= new ReportDocument();
logOnInfo.ConnectionInfo.ServerName="y";
logOnInfo.ConnectionInfo.ServerName = "localhost";
logOnInfo.ConnectionInfo.Password="weibao";
logOnInfo.ConnectionInfo.DatabaseName="YINGTIAN_192.168.1.108";
logOnInfo.ConnectionInfo.UserID = "weibao";
rpdMy0.Load("C:\\mfb_develop\\weibao\\weibao\\CrystalReport1.rpt");
rpdMy0.Database.Tables[0].ApplyLogOnInfo(logOnInfo);
CrystalReportViewer1.ReportSource = rpdMy0;
}
接下来我又想用Dataset作为数据源,这个Dataset在datagrid 中是可以显示出来的,代码如下:
private void Page_Load(object sender, System.EventArgs e)
{
checksysbase = new Or_CheckSysBase();//这个是自定义的类
Dataset1 dataset=new Dataset1();
string cmdstr;
cmdstr="select id,equipmentnumber equipmentname,equipmentmodel,quantity,manufacturer,startuptime,status from wb_app_equipment";
DataTable userDataTable=new DataTable();
checksysbase.ExecuteSQL(cmdstr,userDataTable); //
checksysbase.FillDataSet(cmdstr,dataset,"wb_app_equipment");
oRpt.SetDataSource(dataset);
CrystalReportViewer1.ReportSource = oRpt;
}
可是总出现如下的错误,我是第一天上班,搞了一天都没弄出来,:(
未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。
源错误:
行 47: // this.DataGrid1.DataSource=dataset.Tables["wb_app_equipment"];
行 48: // this.DataGrid1.DataBind();
行 49: oRpt.SetDataSource(dataset);
行 50:
行 51: TableLogOnInfo logOnInfo = new TableLogOnInfo();
源文件: c:\mfb_develop\weibao\weibao\test\testcrystal.aspx.cs 行: 49
堆栈跟踪:
[NullReferenceException: 未将对象引用设置到对象的实例。]
weibao.test.TestCrystal.Page_Load(Object sender, EventArgs e) in c:\mfb_develop\weibao\weibao\test\testcrystal.aspx.cs:49
System.Web.UI.Control.OnLoad(EventArgs e) +67
System.Web.UI.Control.LoadRecursive() +35
System.Web.UI.Page.ProcessRequestMain() +731