PDA

Ver la Versión Completa : QuickReport 3.6.2 Prof - PDF


Jose Manuel
28-10-2003, 18:23:26
Hola, estoy trabajando con Delphi 6 Enterprise y Quickreport professional 3.6.2, y les escribo para ver si alguien sabe porque sale este error. Con Delphi 6 corriendo, al guardar un listado en formato PDF sale un error que el debugger señala con el siguiente mensaje:

“Project Visor.exe raised exception class ERangeError with message ‘Range check error’. Process stopped. Use Step or Run to continue.”

Y a continuación, abre la Unit que tiene el error QRPDFFilt y en el procedimiento:

procedure TQRPDFDocumentFilter.TextOut(X, Y : extended; Font : TFont; BGColor : TColor;
Alignment : TAlignment; Text : string);

Marca la línea 432 como causante del error:

strpcopy( fpdfitem.Fontname,Font.Name );
fpdfitem.fontsize := Font.Size;
fpdfitem.rgbfcolor.blue := getBvalue(font.color);
fpdfitem.rgbfcolor.red := getRvalue(font.color);
fpdfitem.rgbfcolor.green := getGvalue(font.color);
fpdfitem.fbold := fsBold in font.Style;

Lo curioso, es que hasta ayer no me daba este error, y que en otra aplicación que tengo tampoco me da este error, veo el código de ambas aplicaciones y no aprecio diferencias entre el código de una aplicación y la otra pero una me da error y la otra no.

Tal vez alguien pueda indicarme por que se produce un error del tipo ‘Range check error’, o alguna pista para resolver esta situación.

Un saludo
Jose Manuel

Jose Manuel
29-10-2003, 19:00:58
Hola, el problema era un "bug" en el fichero. Hice la consulta a QSOFT y me enviaron el fichero corregido que producia el error.

La respuesta de Qsoft fue esta:
...................................................
Hi,
this error is caused when one of the colours in the report is in the system palette.

The fix is to add a line like this before the colour decomposition like this
-
if Font.Color < 0 then Font.color := font.color and $FFFFFF;
The attached version of qrpdffilt.pas has the corrections.
....................................................

Un saludo a todos.
Jose Manuel