首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >水晶报告:数据库登录失败

水晶报告:数据库登录失败
EN

Stack Overflow用户
提问于 2014-01-25 13:11:55
回答 6查看 40.4K关注 0票数 1

我正在尝试打印PDF格式的水晶报告,在我的本地机器上,它工作得很好。但是,当我将应用程序发布到服务器时,它会给我以下打印按钮上的错误。我使用的是VS2012、IIS 2012、IIS7.5和CR版本13.5。注意:我使用的是集成安全性,所以我将用户名和密码留空。请帮帮忙。我的代码行:

代码语言:javascript
运行
复制
    string Constring1 = ConfigurationManager.ConnectionStrings["dbRMCConnectionString"].ConnectionString;
    SqlConnection conn = new SqlConnection(Constring1);
    conn.Open();

    ReportDocument rpt = new ReportDocument();

    rpt.Load(Server.MapPath("RMCChallan.rpt"));

    ParameterFieldDefinitions crParameterFieldDefinations;
    ParameterFieldDefinition crParameterFieldDefination;
    ParameterValues crParameterValues = new ParameterValues();
    ParameterDiscreteValue crParameterDiscreteValue = new ParameterDiscreteValue();
    crParameterValues.Clear();

    crParameterDiscreteValue.Value = lbl_Cno.Text;
    crParameterFieldDefinations = rpt.DataDefinition.ParameterFields;
    crParameterFieldDefination = crParameterFieldDefinations[0];
    crParameterValues = crParameterFieldDefination.CurrentValues;

    crParameterValues.Add(crParameterDiscreteValue);
    crParameterFieldDefination.ApplyCurrentValues(crParameterValues);
    rpt.SetDatabaseLogon("", "", "ADMIN-PC\\ADMIN", "dbRMC"); 
    rpt.ExportToHttpResponse(ExportFormatType.PortableDocFormat, Response, true, Guid.NewGuid().ToString());

谢谢你提前提供帮助!)

堆栈跟踪:我正在尝试打印PDF格式的水晶报告,在我的本地机器上,它工作得很好。但是,当我将应用程序发布到服务器时,它会给我以下打印按钮上的错误。我使用的是VS2012、SQl Server 2012、IIS7.5和CR版本13.5。注意:使用分配给我的数据库的windows authentication..No用户名和密码。'/‘应用程序中的服务器错误。

数据库登录失败。

代码语言:javascript
运行
复制
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

异常详细信息:System.Runtime.InteropServices.COMException: Database logon failed.

源错误:

代码语言:javascript
运行
复制
Line 178:        crParameterFieldDefination.ApplyCurrentValues(crParameterValues);
Line 179:        rpt.SetDatabaseLogon("", "", "ADMIN-C\\ADMIN","MyDatabase"); 
Line 180:        rpt.ExportToHttpResponse(ExportFormatType.PortableDocFormat, Response, true, Guid.NewGuid().ToString());
Line 181:
Line 182:

源文件:e:\25jan14\WebSite1\RMC.aspx.cs Line: 180

堆栈跟踪:

代码语言:javascript
运行
复制
[COMException (0x8004100f): Database logon failed.]
  CrystalDecisions.ReportAppServer.Controllers.ReportSourceClass.Export(ExportOptions pExportOptions, RequestContext pRequestContext) +0
  CrystalDecisions.ReportSource.EromReportSourceBase.ExportToStream(ExportRequestContext reqContext) +257

[LogOnException: Database logon failed.]
   CrystalDecisions.ReportAppServer.ConvertDotNetToErom.ThrowDotNetException(Exception e) +332
   CrystalDecisions.ReportSource.EromReportSourceBase.ExportToStream(ExportRequestContext reqContext) +310
   CrystalDecisions.CrystalReports.Engine.FormatEngine.ExportToStream(ExportRequestContext reqContext) +654
   CrystalDecisions.CrystalReports.Engine.ReportDocument.ExportToStream(ExportOptions options) +92
   CrystalDecisions.CrystalReports.Engine.ReportDocument.ExportToHttpResponse(ExportOptions options, HttpResponse response, Boolean asAttachment, String attachmentName) +96
   CrystalDecisions.CrystalReports.Engine.ReportDocument.ExportToHttpResponse(ExportFormatType formatType, HttpResponse response, Boolean asAttachment, String attachmentName) +119
   RMC.Button5_Click(Object sender, EventArgs e) in e:\25jan14\WebSite1\RMC.aspx.cs:180
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +9553594
   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +103
   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +35
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1724
EN

Stack Overflow用户

发布于 2019-02-12 10:48:53

如果其他人也发现了这个问题,下面是我的问题所在,以及我是如何解决问题的:

我不得不编辑一些旧的报告,以便给它们添加一个新的表。作为该过程的一部分,我必须创建一个新的连接,并更改先前存在的表的表位置。所有这些都运行良好,直到尝试部署到生产环境,在该环境中,表位置在代码中被动态更改。

于是我在谷歌上搜索了这个问题,并意识到@Chet (+1)的答案可能是一条线索。它是-我创建了新的连接为Sql server native client ##

但是,我没有干扰prod服务器,而是使用OLE DB (Sql server)连接重新构建了新连接,然后它在所有相关的地方(dev、test、prod env)都能工作。

票数 1
EN
查看全部 6 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21350995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档