Una pregunta con la que me he encontrado ya en varias ocasiones es si es necesario tener un Report Server para poder usar informes en una aplicación .NET.
La respuesta es sencilla; no.
Visual Studio dispone de un control llamado ReportViewer que permite visualizar informes en dos modos; en modo local y en modo servidor. El modo local permite carga un fichero RDL desde un recurso local de la aplicación, sin necesidad de instalar ningún servidor adicional. El modo servidor permite acceder a un informe que se encuentre en un servidor de reportes y ser visualizado en la aplicación.
Sencillo….pero ¿ cuál debo usar ? ¿ Cuál es mejor ? Pues depende, ya que cada método tiene sus ventajas e inconvenientes.
Report Server
Ventajas
Rendimiento. El servidor de reportes tienes características interesantes desde el punto de vista de rendimiento, como es el cacheado de informes y la posibilidad de generar snapshots de informes generados previamente.
Escalabilidad. Es muy fácil de escalar añadiendo más servidores.
Administración. Se pueden administrar todos los aspectos relacionados con los informes; subscripciones, envío automático de informes, gestión de la seguridad….
Inconvenientes:
Mayores costes de despliegue. Hay que disponer de al menos un servidor adicional, implica mayores costes de administración, mayores coste de licencias etc…
Modo local
Ventajas
Simplicidad. No necesita una infraestructura adicional de servidores. El despliegue es más simple. Sólo hay que distribuir los ficheros RDL junto con la aplicación.
Reducción del coste. No hay costes adicionales en licencias ni en hardware.
Inconvenientes
Menor rendimiento. No se pueden usar las características de cacheo o de generación de snapshots.
Menor flexibilidad. No hay subscripciones, no hay posibilidad de administración centralizada..
Usando el ReportViewer, hay que instalar algo adicional cuando se pase de pase al servidor de produccion.
Tendrás que tener instalado, a parte del Framework 2.0, el Microsoft Report Viewer Redistributable 2005
http://www.microsoft.com/downloads/details.aspx?FamilyID=8a166cac-758d-45c8-b637-dd7726e61367&displaylang=en
También puede ser que sea necesario que instales algún paquete del idioma.
http://www.microsoft.com/downloads/details.aspx?familyid=E3D3071B-D919-4FF9-9696-C11D312A36A0&displaylang=es
ps windows server 2008 ya tiene esas cosas integradas para facilitar esos procesos tediosos. puedes bajar una versión de prueba que dura 60 días para probarlo en
http://www.microsoft.com/windowsserver2008/en/us/trial-software.aspx
suerte
Hola, que tal: Sergio, vi un articulo tuyo en msdn, lo que me atrajo tu blog, estoy muy ineteresado en tus conocimientos y quisiera saber si puedes orientarme para que una aplicación de C# genere reportes HTML, tengo conocimientos de HTML, c# y visual debeloper, pero desconosco el tema de la generación de reportes,… agradecere mucho cualquier información para lograr este tipo de reporte
GRACIAS
MANUEL AYALA
hola tengo instalado windows 2008 server en modo Datacenter pero al correr la aplicacion asp.net se me ven los reportes de hecho al verlos desde I.E 7 me deja la barra de herramientas bloqueada y el reporte no se ve nada , al verlo desde firefox o de chrome me sale el error 404 que no puede acceder al reporte y que la ruta no la pilla.
¿alguien tiene alguna idea?
gracias
Rodrigo, para tu problema visita el siguiente enlace:
http://otkfounder.blogspot.com/2007/11/solving-reportviewer-rendering-issue-on.html
Hola Sergio mira mi duda es como hago para imprimir el contenido de los textbox de un form. yo hice un report.rdlc y solo lo puedo relacionar con los datos de la base de datos no con el contenido de los textbox como podria hacer esto¿? muchas gracias
TEngo instalado SQLserver y SERver Report instalado, en la maquina servidor ejecuto mis reportes y se ven sin ningun problema todo funciona OK, pero desde otra maquina imposible se que son problemas de permisos pero ya puse permisos dentro de SQLserver , el sitio de administracion del server report, y nomas no logro hacerlo funcionar desde una maquina externa a menos que me logee como admin