title: Failed to Load database information in Crystal Report for Visual Studio
body: <p>I'm having an issue with Crystal Reports for VS2013. I have a windows application developed in VS2010 with CR.</p>
  <p>When I try to run it in VS 2013, I get the following exception:</p>
  <pre class="lang-none prettyprint-override"><code>Failed to load database information.
  Error in File BillReport {E3FDAF36-9149-4F03-BCB6-EE66639AFFFB}.rpt:
  Failed to load database information.
     at CrystalDecisions.ReportAppServer.ConvertDotNetToErom.ThrowDotNetException(Exception e)
     at CrystalDecisions.CrystalReports.Engine.ReportDocument.SetDataSourceInternal(Object val, Type type)
     at CrystalDecisions.CrystalReports.Engine.ReportDocument.SetDataSource(DataSet dataSet)
     at Stock_Maintanance.PrintBillReport.PrintBillReport_Load(Object sender, EventArgs e) in e:\perforce\DudhatTechnologies\Users\jay vadiya\Stock Maintanance\Release 0.1\Stock Maintanance\PrintBillReport.cs:line 86
     at System.Windows.Forms.Form.OnLoad(EventArgs e)
     at System.Windows.Forms.Form.OnCreateControl()
     at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
     at System.Windows.Forms.Control.CreateControl()
     at System.Windows.Forms.Control.WmShowWindow(Message&amp; m)
     at System.Windows.Forms.Control.WndProc(Message&amp; m)
     at System.Windows.Forms.ScrollableControl.WndProc(Message&amp; m)
     at System.Windows.Forms.ContainerControl.WndProc(Message&amp; m)
     at System.Windows.Forms.Form.WmShowWindow(Message&amp; m)
     at System.Windows.Forms.Form.WndProc(Message&amp; m)
     at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message&amp; m)
     at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message&amp; m)
     at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
     at System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
     at System.Windows.Forms.UnsafeNativeMethods.CreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
     at System.Windows.Forms.NativeWindow.CreateHandle(CreateParams cp)
     at System.Windows.Forms.Control.CreateHandle()
     at System.Windows.Forms.Form.CreateHandle()
     at System.Windows.Forms.Control.get_Handle()
     at System.Windows.Forms.Form.SetVisibleCore(Boolean value)
     at System.Windows.Forms.Control.Show()
     at Stock_Maintanance.PrintBill.btPrint_Click(Object sender, EventArgs e) in e:\perforce\DudhatTechnologies\Users\jay vadiya\Stock Maintanance\Release 0.1\Stock Maintanance\PrintBill.cs:line 717
     at System.Windows.Forms.Control.OnClick(EventArgs e)
     at System.Windows.Forms.Button.OnClick(EventArgs e)
     at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
     at System.Windows.Forms.Control.WmMouseUp(Message&amp; m, MouseButtons button, Int32 clicks)
     at System.Windows.Forms.Control.WndProc(Message&amp; m)
     at System.Windows.Forms.ButtonBase.WndProc(Message&amp; m)
     at System.Windows.Forms.Button.WndProc(Message&amp; m)
     at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message&amp; m)
     at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message&amp; m)
     at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
     at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG&amp; msg)
     at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
     at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
     at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
     at System.Windows.Forms.Application.Run(Form mainForm)
     at Stock_Maintanance.Program.Main() in e:\perforce\DudhatTechnologies\Users\jay vadiya\Stock Maintanance\Release 0.1\Stock Maintanance\Program.cs:line 20
  </code></pre>
  <p>Following is my code to load crystal report from XML dataset which is populated by OLEDB connection</p>
  <pre><code>string sqlstr = &quot;&quot;;
  sqlstr = &quot;select * from billMaster where billid =  &quot; + billId + &quot; and merchantName = '&quot; + merchantName + &quot;' &quot;;
  // DataSet ds = m1.selectData(sqlstr);
  
  cmd = new OleDbCommand(sqlstr, m1.ccon);
  if (m1.ccon.State == ConnectionState.Closed) {
      m1.ccon.Open();
  }
  OleDbDataAdapter da = new OleDbDataAdapter(sqlstr, m1.ccon);
  
  BillPrint bp = new BillPrint();
  
  // dr = cmd.ExecuteReader();
  da.Fill(bp.billMaster);
  sqlstr = &quot;select srNo from billInfo where billId=&quot; + billId + &quot; order by srNo&quot;;
  DataSet dsTemp = m1.selectData(sqlstr);
  sqlstr = &quot;select (srNo+1-&quot; + dsTemp.Tables[0].Rows[0].ItemArray[0].ToString() + &quot;) as srNo,billId,itemType,itemName,length,width,thickness,squareMeter,billRate,Qty,subTotal from billInfo where billId=&quot; + billId;
  OleDbDataAdapter da1 = new OleDbDataAdapter(sqlstr, m1.ccon);
  // dr = cmd.ExecuteReader();
  da1.Fill(bp.billInfo);
  
  string path = &quot;&quot;;
  path = Application.StartupPath + &quot;\\reports\\BillReport.rpt&quot;;
  
  /* if (RateVisible == 1)
  {
      path = Application.StartupPath + &quot;\\reports\\BillReport.rpt&quot;;
  }
  else if (RateVisible == 2)
  {
      path = Application.StartupPath + &quot;\\reports\\BillReportWithoutRate.rpt&quot;;
  }*/
  //  MessageBox.Show(path);
  
  ReportDocument rd = new ReportDocument();
  rd.Load(path);
  rd.SetDataSource(bp);
  crv.ReportSource = rd;
  crv.RefreshReport();
  </code></pre>