none
Error al invocar reporte. RRS feed

  • Pregunta

  • Buenos dias a todos!!

    El problema que tengo es que tengo una aplicacion web que acabo de agregarle la autenticacion de windows para la base de datos por medio del web config agregando lo siguiente, para activar la propiedad de impersonate de asp.net

     <authentication mode="Windows" />
        <identity impersonate="true" userName="Dominio\Arturo" password="xxxx"/>

    Ademas modifique el string de conexion a la base de datos y todo funciona genial a la hora de obtener datos del sql. El problema que tengo se me presenta a la hora de tratar de acceder a un reporte desde la pagina web, me devuelve la siguiente excepción:

    Microsoft.Reporting.WebForms.ReportServerException: The item '/xxxx/xxxxx' cannot be found. (rsItemNotFound) at Microsoft.Reporting.WebForms.SoapReportExecutionService.ServerReportSoapProxy.OnSoapException(SoapException e) at Microsoft.Reporting.WebForms.Internal.Soap.ReportingServices2005.Execution.RSExecutionConnection.ProxyMethodInvocation.Execute[TReturn](RSExecutionConnection connection, ProxyMethod`1 initialMethod, ProxyMethod`1 retryMethod) at Microsoft.Reporting.WebForms.SoapReportExecutionService.LoadReport(String report, String historyId) at Microsoft.Reporting.WebForms.ServerReport.EnsureExecutionSession() at Microsoft.Reporting.WebForms.ServerReport.GetParameters() at Ixxxxxxxx.Reportes.ReportList.Generar(Object sender, EventArgs e)

    El llamado del reporte lo estoy haciendo de la siguiente forma:

    repViewer.ProcessingMode = Microsoft.Reporting.WebForms.ProcessingMode.Remote;
                    repViewer.ServerReport.ReportServerUrl = new Uri(ConfigurationManager.AppSettings.Get("ReportServerUrl"));
                    repViewer.ServerReport.ReportPath = ---Aqui pongo la direccion del reporte en el servidor de reportes;
                    System.Collections.Generic.List<ReportParameter> paramList = new System.Collections.Generic.List<ReportParameter>();
                    ReportParameterInfoCollection pInfo = default(ReportParameterInfoCollection);
                    pInfo = repViewer.ServerReport.GetParameters();
                    paramList.Add(new ReportParameter("Cliente", ddlClientes.SelectedValue, true));
                    paramList.Add(new ReportParameter("NumeroDocumento", txtnumdoc.Text.Trim(), true));
                    paramList.Add(new ReportParameter("Oficina", ddloficinas.SelectedValue.Trim(), true));
                    repViewer.ServerReport.SetParameters(paramList);
                    repViewer.ServerReport.Refresh();                

    Si me pueden ayudar se los agradezco

    lunes, 29 de febrero de 2016 14:43

Respuestas

  • El error que te está saliendo (item '/xxxx/xxxxx' cannot be found) indica que el ReportPath está mal puesto, y no se consigue encontrar ese informe. Revisa el valor que le estás pasando, que debe tener algo mal escrito (por ejemplo, puede que hayas dejado el .rdl al final del nombre del report, o que hayas escrito una "/" de más o de menos, o algo por el estilo).

    También puede ser un problema de seguridad, en caso de que el usuario que estás impersonando no tenga permiso para ver ese reporte o la carpeta que lo contiene.

    lunes, 29 de febrero de 2016 18:21
    Moderador