簡體   English   中英

Crystal Reports 錯誤 數據庫登錄失敗

[英]Crystal Reports error Database Logon Failed

使用 C# 在 ASP.Net 中使用 VS2012 中的 Crystal Report 創建/導出 PDF 文件。

CR 版本:Crystal Report XI MVC 框架:4.0 操作系統:Window 7 64 位

代碼在開發人員機器上正常工作,但是當我在客戶端機器上上傳我的代碼時,它會引發錯誤。

在客戶端機器上,我為 .Net Framework(64 位)安裝了 MVC Framework 4.0 和 Crystal Reports 運行時引擎,還安裝了 SQL Server 2008 Native 客戶端。

錯誤列表:

1)無法加載文件或程序集“CrystalDecisions.ReportAppServer.CommLayer,版本=13.0.2000.0,Culture=neutral,PublicKeyToken=692fbea5521e1304”或其依賴項之一。 該系統找不到指定的文件。

要解決此問題,請從 C:\\Program Files (x86)\\SAP BusinessObjects\\Crystal Reports for .NET Framework 4.0\\Common\\SAP BusinessObjects Enterprise XI 4.0\\win32_x86\\dotnet 上傳 Crystal 報表的所有 dll

2)無法加載文件或程序集“log4net,版本=1.2.10.0,文化=中性,PublicKeyToken=692fbea5521e1304”或其依賴項之一。 該系統找不到指定的文件。 -> 為了解決這個問題,我為 .Net Framework(64 位)安裝了 Crystal Reports 運行時引擎

3)水晶報表錯誤數據庫登錄失敗異常詳情:System.Runtime.InteropServices.COMException:數據庫登錄失敗。

陷入了這個錯誤。

我嘗試了以下方法來解決,但無法獲得任何解決方案。 1) 正確檢查連接字符串。

string serverName = ConfigurationManager.AppSettings["ServerName"];
        rd.SetDatabaseLogon("userid", "password", serverName, 
        "databasename");
ConnectionInfo connectionInfo = new ConnectionInfo();
connectionInfo.Type = ConnectionInfoType.CRQE;
connectionInfo.ServerName = serverName;
connectionInfo.DatabaseName = "Databasename";
connectionInfo.UserID = "userid";
connectionInfo.Password = "password";
connectionInfo.IntegratedSecurity = false;

TableLogOnInfo tableInfo = new TableLogOnInfo();
tableInfo.ConnectionInfo = connectionInfo;
foreach (Table table in rd.Database.Tables)
{
    table.LogOnInfo.ConnectionInfo = connectionInfo;
    table.ApplyLogOnInfo(tableInfo);
}

這是我的連接字符串代碼,嘗試了不同的方法但有相同的問題。

為了在本地檢查這個,我已經上傳到 IIS,它在機器上工作正常(即開發者機器並且也在我的朋友機器上檢查它工作正常,因為他的 PC 也是開發者機器,但是當在其他 PC 上檢查時它沒有正確拋出數據庫登錄錯誤。

我們電腦的不同之處在於他的電腦沒有安裝 SQL Server,只安裝了 SQL Server 2008 Native 客戶端。

問題是我的 Crystal Report 無法連接到數據庫。

我通過以下方式創建了 Crystal Report:

1) Added the new item in the solution. Reports-> Selected Crystal Report
2) For connecting database in my report
   Right click on Database Fields-> Database Expert-> My Connection-> Server Name, showing me the dialog for OLE DB(ADO), selected my Server Name, Enter the User ID and Password and selected my Database and Integrated Security unchecked.

我的朋友 PC 是 window 7 64 位操作系統。

我還必須在 32 位操作系統中解決此錯誤。

您是否在 web.config 中添加了引用

<add assembly="CrystalDecisions.CrystalReports.Engine, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" />
<add assembly="CrystalDecisions.ReportSource, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" />
<add assembly="CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" />
<add assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" />
<add assembly="CrystalDecisions.ReportAppServer.ClientDoc, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" />

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM