Mostrando entradas con la etiqueta Crystal Report. Mostrar todas las entradas
Mostrando entradas con la etiqueta Crystal Report. Mostrar todas las entradas

miércoles, 20 de octubre de 2010

Crystal Report en ASP.NET: Se ha alcanzado el límite máximo de tareas de procesamiento de informes configuradas por el administrador del sistema

El amigo JoseMa ya encontró la solución a este problema:

"Se ha alcanzado el límite máximo de tareas de procesamiento de informes configuradas por el administrador del sistema"

En resumiendo:

a) o bien es un problema de liberar los objetos crystal que has creado, haciendo un close y un dispose en el form_unload

b) o bien, si lo del punto a) lo tienes resuelto, tu aplicación web recibe tantas peticiones simultáneas de impresión que llegas al límite de objetos crystal que el server puede tener en memoria, que son 75 por defecto. Para ampliarlo (usando vs2005):
HKEY_LOCAL_MACHINE\SOFTWARE\Crystal Decisions\10.2\Report Application Server\Server\PrintJobLimit

En el 2008 creo que cambia a
HKEY_LOCAL_MACHINE\SOFTWARE\BUSINESS OBJECTS\SUITE 12.0\REPORT APPLICATION SERVER\SERVER\Printability

miércoles, 9 de abril de 2008

CrystalReportViewer. Establecer zoom desde código.

Poner el zoom en ancho de página:

CrystalReportViewerX.Zoom(1)


Poner el zoom en página completa:
CrystalReportViewerX.Zoom(2)


Fácil, ¿verdad?

miércoles, 13 de febrero de 2008

Crystal Report. Ocultar cabecera de página cuando no hay detalle.

Típico listado de campos en columna, con una cabecera para cada columna y una línea de detalle por cada registro. También tenemos un ReportFooter con una firma. Queremos que si el detalle ocupa varias páginas la cabecera se repita en todas ellas. Sin problemas: creamos un PageHeader con nuestra cabecera de columnas.

El problema con este diseño viene cuando el reportFooter salta de página pero las líneas de detalle se quedan en la página anterior: tendremos una última página con el ReportFooter coronado con una bonita cabecera de columnas (el contenido del PageHeader) pero sin lineas de detalle.

Para solucionarlo hay que montarse una buena pajilla mental:

En el reportHeader poner esta fórmula oculta:

NumberVar x := 9999; //poner un número tan grande como el máx número de páginas previsto


En la sección de detalle, poner esta fórmula, oculta también:

NumberVar x;
If OnLastRecord and PageNumber < TotalPageCount Then x := PageNumber


Y al PageHeader poner en la fórmula asociada a su supresión:

NumberVar x;
PageNumber > x


Básicamente lo que hacemos es guardarnos el número de página en el que se acaba el detalle y usarlo para no imprimir la cabecera.(Solución copiada de aquí)

Si existe una solución más fácil ya saben, a comentarla.

jueves, 20 de diciembre de 2007

Evolución .net versus Crystal Report

Clarificador diagrama: