1
CrystalDecisions.Shared.ConnectionInfo cinfo = new CrystalDecisions.Shared.ConnectionInfo();
cinfo.DatabaseName = "nanhuarc";
cinfo.ServerName = "192.168.134.2";
cinfo.UserID = " ";
cinfo.Password = " ";
//string reportPath = Server.MapPath("CrystalReport.rpt");
//CrystalReportViewer1.ReportSource = reportPath;
CrystalDecisions.Shared.TableLogOnInfos tableLogOnInfos = crystalReportViewer1.LogOnInfo;
foreach (CrystalDecisions.Shared.TableLogOnInfo tableLogOnInfo in tableLogOnInfos)
{
tableLogOnInfo.ConnectionInfo = cinfo;
}
2 ReportDocument rptDoc = new ReportDocument();
rptDoc.Load("x:\\crystalreport\\crPull.rpt");
TableLogOnInfo logOnInfo = new TableLogOnInfo();
logOnInfo = rptDoc.Database.Tables["tblMagUserInfo"].LogOnInfo;
ConnectionInfo connectionInfo = new ConnectionInfo();
connectionInfo = logOnInfo.ConnectionInfo;
connectionInfo.ServerName = "myserver";
connectionInfo.DatabaseName = "mydb";
connectionInfo.UserID = "myid";
connectionInfo.Password = "mypwd";
rptDoc.Database.Tables["tblMagUserInfo"].ApplyLogOnInfo(logOnInfo);
CrystalReportViewer1.ReportSource = rptDoc;
3 TableLogOnInfo logOnInfo = new TableLogOnInfo ();
ReportDocument oRpt = new ReportDocument();
string RptDir="f:\\bbs\\test\\crystal\\crystalreport1.rpt"; //crystalreport1.rpt文件所在的绝对路径
oRpt.Load(RptDir);
//设置logoninfo参数,注意这里如果不设?编译时最容易出现“登陆失败”的错误!
logOnInfo.ConnectionInfo.ServerName = "服务器名";
logOnInfo.ConnectionInfo.DatabaseName = "数据库名";
logOnInfo.ConnectionInfo.UserID = "用户名";
logOnInfo.ConnectionInfo.Password = "密码";
oRpt.Database.Tables [0].ApplyLogOnInfo(logOnInfo);
//建立.rpt文件与crystalreportviewer文件之间的连接
CrystalReportViewer1.ReportSource=oRpt;