services query microsoft sql-server reporting-services reportviewer

sql server - query - Alternativa a Report Viewer para SQL Reporting Services



sql server reporting services 2016 download (3)

Estoy de acuerdo contigo. Es realmente un control con errores. Jugué con mi configuración de DOCTYPE para ajustar mi salida html.

Si puede probar los comerciales, eche un vistazo al control de Telerik.

También mira esta discusión:

http://siddhumehta.blogspot.com/2011/07/ssrs-reportviewer-webpart-control.html

Estamos buscando desarrollar una actualización a nuestra aplicación ASP.NET existente en MVC3. Nuestra aplicación actual está basada únicamente en IE y la actualización será neutral para el navegador, es decir, debe funcionar en IE8 +, firefox, cromo y safari.

El principal problema que tenemos es que tenemos varios informes basados ​​en SQL Reporting Services 2008 R2 y utilizamos el control Report Viewer 2010.

Realmente no queremos usar esto en el futuro porque:

  • Tiene errores (por ejemplo, no podemos usar la versión SP1 ya que algunas veces se renderiza HTML que rompe nuestro sitio)
  • Tiene problemas con los navegadores que no son IE (por ejemplo, el error IterationId falta en la URL)
  • Está basado en Viewstate
  • Es difícil localizar algo de la salida representada del control

Realmente me gustaría reemplazarlo con una alternativa (incluso si está basado en viewstate y tenemos que hackear una solución con MVC) pero no he podido encontrar uno. ¿Existe un control alternativo que represente los informes de Reporting Services? Es el espectador que queremos reemplazar, no RS.


Queríamos integrar SSRS con nuestro sitio web existente, pero no queríamos usar la interfaz de usuario de SSRS (ya que es en gran medida su propio sitio web) y no queríamos usar los controles de vista de informe (aunque tenemos un sitio web ASP.NET, los controles del visor de informes tienen opciones limitadas para hacer que haga lo que usted desea). La solución que funcionó para nosotros fue:

  1. Llame al servicio web de SSRS para devolver una lista de informes y coloque los valores en una lista desplegable.

  2. Lea la ruta del informe desde la lista desplegable y obtenga el servicio web de SSRS que devuelve los parámetros del informe seleccionado.

  3. Cree controles de entrada basados ​​en lo que regresó en el # 2.

  4. Los usuarios proporcionan los valores de entrada y envían el formulario.

  5. La página pasa los valores al servicio web de SSRS y obtiene un documento PDF, Excel, Word basado en lo que solicitó el usuario.

Esto no fue tan difícil (tomó <40 horas programar y probar) y funciona realmente bien. El mayor problema que tenemos es el soporte de diferentes versiones del Servicio web de SSRS a medida que pasa de una versión de SSRS a otra.

Supongo que si quisiera generar los informes como HTML y transferirlos a la IU, también podría hacerlo.

Obviamente, si desea que todos los usuarios editen las propiedades del informe, creen suscripciones, etc., tendrá que realizar un trabajo adicional.


Es posible que solo pueda ver la versión HTML y configurar los controles para que el servicio lo vincule en un URI REST. P.EJ:

http:// (servername)/(ReportServer)/(PathtoReport)&(Parameter=Value)&rs:Command=Render

Nunca he intentado nada más que alojar esto en un objeto html ''Formularios'', pero me pregunto si podrías irte solo usando un objeto de navegador html predeterminado y simplemente forzando al URI REST a tener condiciones.

También puede hacerlo si realmente desea sumergirse en VB.NET o C # .NET en su código ASP.NET. Tal vez solo pueda procesar la matriz de bytes de Reporting Services en un tipo de PDF o HTML, y luego presentarlo en un visor también. Puede que esta no sea una solución viable ya que no estoy seguro de su nivel de deseos para tratar de presentar un objeto binario en un formato propietario frente a solo una porción web de una llamada existente. Esto puede ser más trabajo y estaría más adaptado a una representación de ese tipo de PDF, Excel, HTML, etc. Pero se puede hacer. Básicamente hice un proyecto de biblioteca con la lógica para hacer las llamadas después de hacer una clase proxy del Servicio SSRS. Más sobre eso aquí: Exportar mediante programación el informe de SSRS desde Sharepoint usando ReportService2010.asmx