代码如下,点击查询按钮时正常显示结果,再点击报表控件中的打印或缩放按钮时,就让我输入登录信息,user id,password ,database等log on 信息,谢谢。
DataSet ds = new ReportLogic().GetReport();
ConnectionInfo conn = new ConnectionInfo();
conn.ServerName = ConfigurationSettings.AppSettings["ConnectionServer"].ToString();
conn.DatabaseName = ConfigurationSettings.AppSettings["ConnectionDatabase"].ToString();
conn.UserID = ConfigurationSettings.AppSettings["ConnectionUserId"].ToString();
conn.Password =ConfigurationSettings.AppSettings["ConnectionPwd"].ToString(); ReportDocument customerReport = new ReportDocument();
string reportPath = Server.MapPath("CrystalReport.rpt");
customerReport.Load(reportPath); TableLogOnInfo tableLogonInfo = new TableLogOnInfo();
tableLogonInfo.ConnectionInfo = conn; customerReport.Database.Tables[0].ApplyLogOnInfo(tableLogonInfo);
customerReport.Database.Tables[0].SetDataSource(ds.Tables[0]); CrystalReportViewer1.ReportSource = customerReport;
CrystalReportViewer1.DataBind();
DataSet ds = new ReportLogic().GetReport();
ConnectionInfo conn = new ConnectionInfo();
conn.ServerName = ConfigurationSettings.AppSettings["ConnectionServer"].ToString();
conn.DatabaseName = ConfigurationSettings.AppSettings["ConnectionDatabase"].ToString();
conn.UserID = ConfigurationSettings.AppSettings["ConnectionUserId"].ToString();
conn.Password =ConfigurationSettings.AppSettings["ConnectionPwd"].ToString(); ReportDocument customerReport = new ReportDocument();
string reportPath = Server.MapPath("CrystalReport.rpt");
customerReport.Load(reportPath); TableLogOnInfo tableLogonInfo = new TableLogOnInfo();
tableLogonInfo.ConnectionInfo = conn; customerReport.Database.Tables[0].ApplyLogOnInfo(tableLogonInfo);
customerReport.Database.Tables[0].SetDataSource(ds.Tables[0]); CrystalReportViewer1.ReportSource = customerReport;
CrystalReportViewer1.DataBind();
string sql = "select * from record";
DataSet ds = new DataSet();
ds = sqlhelper.ExecuteDataSet(sql);
ReportDocument doc = new ReportDocument();
doc.Load(Server.MapPath("CrystalReport.rpt"));
doc.SetDataSource(ds.Tables[0]);
CrystalReportViewer1.ReportSource = doc;
/从web.config获得连接字符串
public string connStr = ConfigurationManager.ConnectionStrings["testConnectionString"].ConnectionString;
//定义要执行的strSql语句,你自己加
public string sql="";
SqlConnection cn = null;
SqlCommand cmd = null;
cn = new SqlConnection(connStr);
cn.Open();
cmd = new SqlCommand(strSql, cn);
SqlDataAdapter da = new SqlDataAdapter(strSql, cn);
DataSet ds = new DataSet();
da.Fill(ds);
ReportDocument doc = new ReportDocument();
doc.Load(Server.MapPath("CrystalReport.rpt"));
doc.SetDataSource(ds.Tables[0]);
CrystalReportViewer1.ReportSource = doc;你再试下。
//定义要执行的strSql语句,你自己加
public string strSql="";
每次点击按钮时很正常,没有问题
但是点击报表控件的打印或缩放时,就会出现登录提示
真是烦人
crystalreport是vs2008自带的
报表控件上还看到powered by business objects图标。