水晶报表加载失败??????????????

lzp2728606 2007-10-07 02:52:26
string constring = "Data Source=LZP;Initial Catalog=Northwind;User ID=sa;Password=sa";
SqlConnection aa = new SqlConnection(constring);
aa.Open();
SqlDataAdapter bb = new SqlDataAdapter("select * from Products", aa);

DataSet1 ss = new DataSet1();
bb.Fill(ss, "Products");

ReportDocument rpt = new ReportDocument();
rpt.Load("CrystalReport2.rpt");
rpt.SetDataSource(ss);
CrystalReportViewer1.ReportSource = rpt;

错误提示,水晶报表加载失败,该如何解决啊????????????///
...全文
115 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lzp2728606 2007-10-08
  • 打赏
  • 举报
回复
我的报表就在根目录下,该如何改啊????????????
水晶报表和数据集不必在一个文件夹中吧??????
C5662601 2007-10-08
  • 打赏
  • 举报
回复
删除后重新添加下试试
songsu 2007-10-08
  • 打赏
  • 举报
回复
Pull模式与Push模式

1 使用 CrystalReportViewer控件显示
CrystalReportViewer.ReportSource = "";

Pull模式
被请求时,水晶报表直接根据指定的驱动连接数据库然后组装这些数据

Push模式
此时开发者不得不自已编写代码连接数据库并组装DataSet,同时将它传送至报表。在这种情况下,通过使用连接共享以及限制记录集合的大小,可以使招报表性能最大化。
songsu 2007-10-08
  • 打赏
  • 举报
回复
Pull模式实例代码

using CrystalDecisions.Shared;
using CrystalDecisions.CrystalReports.Engine;

ReportDocument ReportDoc;

private void Page_Load(object sender, System.EventArgs e)
{
ReportDoc = new ReportDocument();
ReportDoc.Load(Server.MapPath("Report.rpt"));
TableLogOnInfo logonInfo = new TableLogOnInfo();
foreach(CrystalDecisions.CrystalReports.Engine.Table tb in ReportDoc.Database.Tables)
{
logonInfo = tb.LogOnInfo;
logonInfo.ConnectionInfo.ServerName = "(local)";
logonInfo.ConnectionInfo.DatabaseName = "SchoolOA";
tb.ApplyLogOnInfo(logonInfo);
}
CrystalReportViewer1.ReportSource = ReportDoc;
}
songsu 2007-10-08
  • 打赏
  • 举报
回复
Push模式实例代码

private void Page_Load(object sender, System.EventArgs e)
{
myReport ReportDoc = new myReport();
string strProvider = "Server=(local);DataBase=myDatabase;UID=sa;PWD=111";
SqlConnection MyConn = new SqlConnection(strProvider);
MyConn.Open();
string strSel = "Select * from SaleOfCuntry";
SqlDataAdapter MyAdapter = new SqlDataAdapter(strSel,MyConn);
DataSet1 ds = new DataSet1();
MyAdapter.Fill(ds,"SaleOfCuntry");//必须要加数据表名称
ReportDoc.SetDataSource(ds);
Crv.ReportSource = ReportDoc;
}
chenxu4277 2007-10-08
  • 打赏
  • 举报
回复
应该是路径问题
楼主可以试试
rpt.Load("..\..\CrystalReport2.rpt");
chuxue1342 2007-10-08
  • 打赏
  • 举报
回复
解决了吗??
lbaeolus 2007-10-08
  • 打赏
  • 举报
回复
VS 2005的问题,把RPTDOCUMENT对象删了重新脱一个或者重开系统就可以了
Cherish20 2007-10-08
  • 打赏
  • 举报
回复
rpt.Load("CrystalReport2.rpt");
水晶报表的路径不对吧,改为相对路径,路径写全

62,073

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧