2017-10-20 39 views
2

J'essaie d'entrer une valeur dans le rapport de cristal qui ne correspond pas à son masque d'édition. Il renvoie une erreur de serveur d'application de rapport a échoué. Y at-il de toute façon attraper cette exception et jeter une exception compréhensible par l'utilisateur. Le problème est que la trace de la pile ne montre aucune partie de mon code.By la façon dont mon code est écrit en .netEchec du serveur d'application de rapport

 
System.Runtime.InteropServices.COMException: The Report Application Server failed 
     at CrystalDecisions.ReportAppServer.Controllers.ReportSourceClass.GetParamPromptingInfo(PromptingRequestInfo promptingRequestInfo, Object& promptingUnits, Object& promptingInfoProvider) : Line 0 
     at CrystalDecisions.ReportSource.EromReportSourceBase.DoParameterPrompting(PromptingRequestContext reqContext) : Line 0 
     at CrystalDecisions.Web.ReportAgent+ReportClosedExceptionHandlingReportSource.DoParameterPrompting(PromptingRequestContext reqContext) : Line 0 
     at CrystalDecisions.Web.ReportAgentBase.DoPrompting(PromptingHTMLRenderOption htmlOption) : Line 0 
     at CrystalDecisions.Web.Components.ParamComponent.ShowFullPrompt() : Line 0 
     at CrystalDecisions.Web.Components.ParamComponentBase.HandleException(Exception e) : Line 0 
     at CrystalDecisions.Web.CrystalReportViewer.HandleExceptionAndPromptIfNeeded(Exception x, EnumAspNetLifeCycleStage stage) : Line 0 
     at CrystalDecisions.Web.CrystalReportViewer.OnPreRender(EventArgs e) : Line 0 
     at System.Web.UI.Control.PreRenderRecursiveInternal() : Line 0 
     at System.Web.UI.Control.PreRenderRecursiveInternal() : Line 0 
     at System.Web.UI.Control.PreRenderRecursiveInternal() : Line 0 
     at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) : Line 0 
+0

Vous pouvez essayer d'appuyer sur Ctrl + Alt + E pour ouvrir la fenêtre Exceptions, puis de cocher la case Exceptions d'exécution Common Language. Cela permettra de réduire finement où cette exception est jeté dans votre code. – gunr2171

+0

Comment affichez-vous le rapport dans votre vue? – gunr2171

Répondre

0

Asp.net ReportViewer a événement ReportError qui u peut gérer et personnaliser l'erreur OnReportError="ReportViewer1_OnReportError"

Vérifiez CrystalReportViewer si elle a quelque chose comme ça:

CrystalReportViewer.onHandleException or 
CrystalReportViewer.OnHandleExceptionAndPromptIfNeeded 

HandleException() Fired when an exception occurs. 

ref: http://www.crystalreportsbook.com/Crystal_Reports_Net_Ch14_3.asp pas facile de trouver une documentation frais pour cela.