Totales en REPORT

Totales en REPORT

Postby Manuel Aranda » Mon Sep 08, 2008 5: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
User avatar
Manuel Aranda
 
Posts: 604
Joined: Wed Oct 19, 2005 8:20 pm
Location: España

Postby Armando » Mon Sep 08, 2008 8: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
User avatar
Armando
 
Posts: 3239
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Postby Manuel Aranda » Mon Sep 08, 2008 8: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
User avatar
Manuel Aranda
 
Posts: 604
Joined: Wed Oct 19, 2005 8:20 pm
Location: España

Postby Armando » Mon Sep 08, 2008 8:32 pm

Manuel:

A ver si me explico

Code: Select all  Expand view  RUN
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
User avatar
Armando
 
Posts: 3239
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Postby Armando » Mon Sep 08, 2008 9:00 pm

Manuel:

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

Dfines tus columnas de la forma tradicional

Code: Select all  Expand view  RUN
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.

Code: Select all  Expand view  RUN
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()
Code: Select all  Expand view  RUN
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
User avatar
Armando
 
Posts: 3239
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Postby Manuel Aranda » Mon Sep 08, 2008 9: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
User avatar
Manuel Aranda
 
Posts: 604
Joined: Wed Oct 19, 2005 8:20 pm
Location: España


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 27 guests