Página 1 de 1

Totales en reports

Publicado: Sab Abr 18, 2009 9:26 pm
por juanc
Hola Grupo, gusto en saludarlos.
Tenemos un reporte con grupos y columnas con totales, pero no queremos que
se impriman los totales finales o gran total, se puede ? He buscado en la
ayuda pero no doy con la solucion. Alguien ya lo hizo ?

Saludos Cordiales

Juan Castillo Arteaga.

Totales en reports

Publicado: Lun Abr 20, 2009 7:20 pm
por juanc
Hola Grupo, gusto en saludarlos :{)
Viendo el codigo c:xailer2sourcereport.prg esta el metodo PrintTotals() y
alucinando, seria aceptable agregar una data en la clase lNoGrandTotal ? y
en el metodo condicionar la linea
#Linea 886 AEval( ::aColumns, {|v| v:PrintTotal( ::nRow ) } )
con la siguiente condicion ?
If ::Finished
If ! ::lNoGrandTotal
AEval( ::aColumns, {|v| v:PrintTotal( ::nRow ) } )
EndIf
EndIf
La data lNoGrandTotal en su valor de default seria .F.
Alguna recomendacion o sugerencia ?
PD La version que estamos usando es la 2.0.0 (March 2009)
"Juan Castillo A." <juanc@lasnovedades.com.mx> escribió en el mensaje
news:49ea1aba$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Hola Grupo, gusto en saludarlos.
>
> Tenemos un reporte con grupos y columnas con totales, pero no queremos que
> se impriman los totales finales o gran total, se puede ? He buscado en la
> ayuda pero no doy con la solucion. Alguien ya lo hizo ?
>
>
> Saludos Cordiales
>
> Juan Castillo Arteaga.
>

Totales en reports

Publicado: Mar Abr 21, 2009 11:43 pm
por juanc
Leyendo y buscando, encontramos en http://xailer.info/esp/?p=21#more-21 el
norte de la solucion, pusimos el siguiente codigo en el Forma Principal y al
momento de definir los reportes ponemos :
oReporte:lGrandTotal := .F. y funciono!
Class TReport From xReport
PUBLISHED:
Property lGrandTotal Init .T. // Variable agregada
PROTECTED:
METHOD PrintTotals()
EndClass
METHOD PrintTotals() CLASS TReport
LOCAL cText
::nBottomDataRow := ::nRow
IF ! ::lTotal .OR. ( ! ::lPageTotal .AND. ! ::Finished() )
RETURN Nil
ENDIF
IF ::Finished()
cText := ::cGrandTotal
ELSE
cText := ::cPageTotal
ENDIF
If ::lGrandTotal // Condicion agregada
::PrintHorzLine( ::nTotalLine, .T. )
EndIf
IF ! Empty( cText )
WITH OBJECT ::oDevice:oCanvas
:SelectFont( ::aFonts[ 1 ] )
:nTextAlignment := taLEFT
:TextOut( ::nLeftCol, ::nRow, cText )
END WITH
ENDIF
If ::lGrandTotal // Condicion agregada
AEval( ::aColumns, {|v| v:PrintTotal( ::nRow ) } )
EndIf
::nRow += ::nLineHeight
RETURN Nil