Duplicidad de registros usando lLoadOnDemand
Publicado: Mar Nov 06, 2018 12:11 pm
Buenos días, adquirí recientemente Fast Report para xHarbour y está funcionando muy bien.
Ahora que ya lo tengo implementado estoy tratando de optimizar la velocidad de ejecución ya que tengo clientes con bases de datos de un tamaño considerable.
He optado por probar lLoadOnDemand tal como viene en el ejemplo BioLife de frconsole.prg y lo cierto es que la velocidad se dispara.
Sólo hay un problema, imprime todos los registros de la tabla dos veces (este hecho ocurre también en el ejemplo que mencione de frconsole.prg)
He observado que la dll (frx.dll) que viene con Xailer es más reciente que la que tengo yo. La mía data del 09/09/2016 y la de Xailer 09/05/2017, mi versión 1.5.1609.7 y la de Xailer 1.5.1705.9 . ¿No se si puede ser debido a esto?
El código :
La tabla, reducida a un registro :
El resultado del informe :
¿Alguna sugerencia o solución?
Gracias
Ahora que ya lo tengo implementado estoy tratando de optimizar la velocidad de ejecución ya que tengo clientes con bases de datos de un tamaño considerable.
He optado por probar lLoadOnDemand tal como viene en el ejemplo BioLife de frconsole.prg y lo cierto es que la velocidad se dispara.
Sólo hay un problema, imprime todos los registros de la tabla dos veces (este hecho ocurre también en el ejemplo que mencione de frconsole.prg)
He observado que la dll (frx.dll) que viene con Xailer es más reciente que la que tengo yo. La mía data del 09/09/2016 y la de Xailer 09/05/2017, mi versión 1.5.1609.7 y la de Xailer 1.5.1705.9 . ¿No se si puede ser debido a esto?
El código :
Código: Seleccionar todo
USE .\DATA\BIOLIFE SHARED VIA "DBFCDX"
WITH OBJECT oReport := TFastReport():New()
WITH OBJECT :AddDbf( "BIOLIFE" )
:lLoadOnDemand := .T.
:nMaxRecsOnDesign := 10
END WITH
:bOnAfterLoad := {|| QOut( "Report loaded" ) }
:bOnClickObject := {|oSender, cObject| QOut( "Mouse click on object: " + cObject ) }
:bOnEndPreview := {|| QOut( "Report preview window closed" ) }
:Create()
:cFilename := ".\Reports\Biolife.fr3"
:AddCategory( "personal" )
:AddVariable( "test", 123 )
? "Report description:"
? :oReportOptions:aDescription[ 1 ]
IF !lDesign
:ShowReport()
ELSE
:DesignReport()
ENDIF
:End()
END WITH
CLOSE ALL
El resultado del informe :
¿Alguna sugerencia o solución?
Gracias