Error: "Load report failed" with the Stack Trace showing: "Inner Exception: - Invalid file name" when trying to print a report

Version 4

    Verified Product Versions

    Service Desk 7.7.xService Desk 7.8.xService Desk 2016.xAsset Manager 2016.x

    Question

    When clicking on the print button for a case (Incident, Change...) like on the image below,

     

    Capture.PNG

     

    You get an error message:

     

    "

    There has been an unexpected error. Click Continue to return to the previous page.


    Load report failed.


    at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()

    at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename, OpenReportMethod openMethod, Int16 parentJob)

    at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename)

    at Touchpaper.Web.Console.Controllers.ReportController.RunCrystalReport(ObjectParameters parameters)

    at System.Web.Mvc.ActionMethodDispatcher.<>c__DisplayClass1.b__0(ControllerBase controller, Object[] parameters)

    at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)

    at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)

    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass37.<>c__DisplayClass39.b__33()

    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.b__49()

    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.b__49()

    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.b__49()

    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.b__49()

    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass37.b__36(IAsyncResult asyncResult)

    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.<>c__DisplayClass2a.b__20()

    at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.b__22(IAsyncResult asyncResult)


    Inner Exception: - Invalid file name.

    at CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.Open(Object& DocumentPath, Int32 Options)

    at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Open(Object& DocumentPath, Int32 Options)

    at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()

    "

    Answer

    It happens because the security rights on the Web Server for the folder C:\Windows\Temp doesn't let the identity account running the instance where the application Webaccess to read/write in it.

     

    To fix it, you need first to identify which identity runs your application and here are the steps;

    • Go on your WebServer in IIS Manager and select the application concerned like "<YourInstanceName>.Webaccess>"
    • In the right pane "Actions", click on Advanced Settings..., and write down the value shown in Application Pool
    • Still on your WebServer in IIS Manager, click on Application Pools and select the one you wrote down previously
    • In the right pane "Actions", click on Advanced Settings..., and write down the value shown in Indentity under section "Process Model" (Ex: NetWorkService)

     

    Now, you know which identity account runs your Web application and you need to give the Windows read/write security access for the local C:\Windows\Temp folder on this Web Server.

     

    Also, for other Load Report Failed error messages, have a look to the article  http://community.landesk.com/support/docs/DOC-19090 in order to define the DSN links with the LDSD database and also the Crystal reports if you personalise them.


    Environment

    Service Desk all versions