FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Totales en REPORT
Posts: 610
Joined: Wed Oct 19, 2005 08:20 PM
Totales en REPORT
Posted: Mon Sep 08, 2008 05:38 PM

Hola amigos:

Necesito poner varios campos numéricos de un registro en varias lineas de un REPORT. Lo hago así:

COLUMN TITLE "Título" ;
DATA SALDO->T1,SALDO->T2,SALDO->T3 PICTURE "@E 9,999,999.99" TOTAL SIZE 9 RIGHT GRID

y perfecto. El problema es que el TOTAL es la suma de los 3 campos.
¿Podrían obtenerse 3 totales con la suma de cada campo igual que se obtienen tres lineas por cada registro listado ?

Un saludo,

Manuel



xH 1.2.3, FWH 23.07 32 bits, BC++ 7.4, xVerce CW 1.0, PellesC
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Totales en REPORT
Posted: Mon Sep 08, 2008 08:00 PM

Manuel:

Hasta donde entiendo no es posible que la TReport lo haga automatico pues como te has dado cuenta se suman los tres campos que hay en la misma columna, tendras que hacerlo "a pie" usando el ON CHANGE.

Saludos

SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 610
Joined: Wed Oct 19, 2005 08:20 PM
Totales en REPORT
Posted: Mon Sep 08, 2008 08:04 PM

Gracias, Armando.
Agradecería un ejemplillo de lo que comentas. Precisando un poco más necesitaría totalizar el primer y tercer campo en el TOTAL, sin que apareciera el segundo.

Un saludo,

Manuel



xH 1.2.3, FWH 23.07 32 bits, BC++ 7.4, xVerce CW 1.0, PellesC
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Totales en REPORT
Posted: Mon Sep 08, 2008 08:32 PM
Manuel:

A ver si me explico

COLUMN TITLE "Efectivo"		DATA (cDetalle)->DET_ICE				SIZE  7 RIGHT PICTURE "@Z 999,999.99" TOTAL
END REPORT
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Totales en REPORT
Posted: Mon Sep 08, 2008 09:00 PM
Manuel:

A ver si me explico (Disculpa la respuesta anterior, me equivoque de botón :-) )

Dfines tus columnas de la forma tradicional

COLUMN TITLE "Efectivo"		DATA (cDetalle)->DET_ICE				SIZE  7 RIGHT PICTURE "@Z 999,999.99" TOTAL
END REPORT


Despues en el ACTIVATE usas el método ON CHANGE para definir una función donde crearas los acumulados.

ACTIVATE REPORT oReporte;
	ON STARTPAGE (Alinea(oReporte,1,3),Alinea(oReporte,2,3));
	ON STARTLINE Sombra(oReporte);
	ON CHANGE Detalle(oReporte,nTot,nSub);
	ON END MessageBeep()


Este es un ejemplo de la función DETALLE()
STATIC FUNCTION Detalle(oReporte)
LOCAL cFact := ""
oReporte:aColumns[8]:nTotal := nTotFle
RETURN(.T.)


Observa el código oReporte:aColumns[8]:nTotal es un arreglo donde la TReport acumula los totales, puedes usar esos arreglos o definir tus propias variables.

Sigo a tus ordenes por si no fui muy claro

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 610
Joined: Wed Oct 19, 2005 08:20 PM
Totales en REPORT
Posted: Mon Sep 08, 2008 09:15 PM

Muchas gracias Armando. Estaba esperando una segunda respuesta, pues me habia quedado un poco descolocado con la primera parte.
Lo pruebo y ya te contaré.

Un saludo,

Manuel



xH 1.2.3, FWH 23.07 32 bits, BC++ 7.4, xVerce CW 1.0, PellesC

Continue the discussion