2011-09-11 104 views
1

問題:我在加載報告時看到登錄信息窗口。Crystal Report登錄失敗訪問

嘗試了很多。閱讀很多論壇,但沒有成功。以下是代碼。我在VS2010中使用最新的Crystal Report。 Windows窗體。

我使用訪問數據庫2010年只有密碼。我不確定要使用用戶名,我在訪問中從未提及過。我的CrystalReportViewer連接到DataSet,它是ReportingDS.xsd。

請幫忙。

private static string StrCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Application.ExecutablePath.ToString().Substring(0, Application.ExecutablePath.ToString().LastIndexOf('\\')) + "\\Reporting.accdb;Jet OLEDB:Database Password=abc;"; 
     public Report_Frm() 
     { 
      InitializeComponent(); 
     } 

     private void Report_Frm_Load(object sender, EventArgs e) 
     { 

      ReportDocument cryRpt = new ReportDocument(); 

      cryRpt.Load(@"C:\Users\chris\Documents\Visual Studio 2010\Projects\ReportingSystem\ReportingSystem\myReport.rpt"); 

      cryRpt.SetDatabaseLogon("Admin", "abc", @"C:\Users\chris\Documents\Visual Studio 2010\Projects\ReportingSystem\ReportingSystem\ReportingDS", "Reporting.accdb"); 

      crystalReportViewer.ReportSource = cryRpt; 
      //crystalReportViewer.Refresh(); 



      } 
+0

您的數據庫是否需要密碼?如果你打開MDB文件,它會提示你輸入一個(用戶名/密碼)嗎? – craig

+0

@craig,是的我需要db的密碼。 – Pirzada

+0

當您使用Microsoft Access打開此.MDB文件時,是否提示您提供用戶標識和密碼?如果是這樣,請執行這些值('Admin'/'abc')工作(讓您訪問文件)? – craig

回答

0

的代碼爲我工作沒有數據庫提示:

Dim reportDocument As New CrystalDecisions.CrystalReports.Engine.ReportDocument 

'load report 
reportDocument.Load("C:\Documents and Settings\Administrator\Desktop\customer.rpt") 

'set user-id/password 
reportDocument.SetDatabaseLogon("Admin", "abc") 

'bind to viewer 
Me.CrystalReportViewer1.ReportSource = reportDocument 

該報告使用通過OLEDB連接Access數據庫。

+0

據我瞭解這個問題,他的Access數據庫需要密碼。 – paulmelnikow

+0

@craig,是的,我需要密碼。 – Pirzada