2014-04-09 60 views
0

我的错误就像无效的报告文件虽然Crystal报告正在加载文件....报告文件路径无效。在水晶报告中虽然

OrderWindow objRpt; objRpt = new OrderWindow(); 尝试 string str = ConfigurationManager.ConnectionStrings [“ConnData”]。ConnectionString.ToString(); SqlConnection con = new SqlConnection(str); OrderDelivery Od = new OrderDelivery(); Od.Activate(); DataSet ds = Od.GetProductDetails(); objRpt.SetDataSource(ds);

  ReportDocument rd = new ReportDocument(); 
      ConnectionInfo info = new ConnectionInfo(); 
      info.DatabaseName = "BillingAndAccounts"; 
      info.UserID = "sa"; 
      info.Password = "sai123"; 
      SetDBLogonForReport(info, rd); 
      rd.Refresh();//Here am Getting Error... 

      rd.VerifyDatabase(); 


      crystalReportViewer1.ReportSource = objRpt; 

回答

0

错误显示,没有得到水晶报告文件的路径。 一般好的编码是设置在您的工作目录中的一个文件夹中所有的水晶报表,只是创建web.config中存取路径一样

<add key="CrystalReportFilePath" value="\Reports"/> 

条目,每当你访问或使用的文件,只是追加上述与文件名(同在web.config中的连接字符串)就像

var ReportName = ConfigurationManager.AppSettings["CrystalReportFilePath"] 

此代码路径绝不会放弃上述错误并代码将进行维护。

0

的问题是,水晶报表运行时继续寻找在C报告文件:驱动器,即使该驱动器不存在,而且,它正在寻找在正确的报告日志文件报告盘符。

要解决此问题,您需要将C:驱动器的驱动器映射为指向您的实际驱动器。

如果您不知道计算机的机器名称,请右键单击我的电脑图标,然后转到属性,然后转到计算机名称选项卡。在完整的计算机名称:行中,我们需要一切。例如,如果它说jason.wasp.com,我们只需要知道“杰森”。同样对于这个例子,我们将使用I:作为现有的驱动器。

要映射驱动器,打开我的电脑图标,然后在工具菜单中选择映射网络驱动器。对于云端硬盘,请选择C :.如果您没有看到C:作为可用选项,则该信可能已分配给计算机管理的磁盘管理组件中的可移动驱动器。将该驱动器更改为另一封信;那么C:将可用于映射。