FoxPro/Visual FoxPro - sumar cortes en reportes

 
Vista:

sumar cortes en reportes

Publicado por Marcelo Lafuente (6 intervenciones) el 23/06/2006 16:14:33
Hola amigos.
Tengo una tabla con nombre y total. los nombre pueden estar repetidos. en el reporte hago un corte de control por nombre. y al final del reporte deseo totalizar cuantos cortes hubo o sea cuantos nombres distintos tengo.
debo hacerlo dentro del reporte y no por fuera (cosa que ya hice).
Ejemplo :

luis
8
9
pedro
3
juan
5
5
6

totalnombres : 3

desde ya gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:sumar cortes en reportes

Publicado por saul (362 intervenciones) el 23/06/2006 16:35:39
si quieres sumar el total de nombres diferentes..

Pues en tu consulta SQL puedes hacerlo con group..

y en tu reporte igualmente. con group y te va detallando por nombre que ha tenido o bien lo puedes solo totalizar.

ojo.. tu ordenado de la tabla tiene que ser igual al grupo que eligas en tu reporte.

bye
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sumar cortes en reportes

Publicado por marcelo (6 intervenciones) el 23/06/2006 16:57:01
Hola saul.
Mira, no tengo consulta sql. solo tengo una tabla ordenada por nombre, y un reporte en donde :

Group Header : coloco el campo nombre
en Details : van los totales .

y deseo en el Page Footer o en un Summary colocar un resultado que deberia ser la suma de los nombre diferentes. Algo asi como una variable de resultado.
NO se si me explico bien. Supongamos que yo hago un corte de pagina por cada nombre distinto, me daria 4 en el ejemplo que pase. Ese valor 4 es correcto pues hace 4 cortes , pero resulta que no deseo hacer cambio de pagina y me tiene que dar el mismo resultado.

gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sumar cortes en reportes

Publicado por Efraím (31 intervenciones) el 23/06/2006 17:28:31
Lo que puedes utilizar es una instrucción sql antes de llamar al reporte:
Por ejemplo:
Public Var1
SELECT COUNT(distinct(nombre)) FROM clientes into cursor c1
select c1
Var1 = C1.DCNT_EXP1

La anterior instrucción te envia el total de nombres diferentes, sólo asignala a una variable pública y muéstrala en el reporte. Así Var1 contendrá el total de nombres diferentes.

Espero y te sirva.

Saludos .

Juan Efraím Martínez Lira.
Guanajuato, México.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sumar cortes en reportes

Publicado por Marcelo (6 intervenciones) el 23/06/2006 17:52:53
Gracias Efraim, pero tengo que resolverlo o no dentro del reporte. Ya lo hice por afuera con un select y anda bien. Pero debe haber alguna forma desde adentro del reporte, creo yo.
de todos modos gracias por el aporte.

Marcelo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:sumar cortes en reportes

Publicado por Ernesto Hernandez (4623 intervenciones) el 23/06/2006 23:50:43
y por que no usas variables dentro del reporte y asignas el valor del cursor a esa variable

Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sumar cortes en reportes

Publicado por carlos ayala galarza (169 intervenciones) el 23/06/2006 17:23:10
Hola haber si te puedo ayudar :

para tu ploblema existen barrias formas de solucion pero la mas facil podria ser la siguiente :

tu reporte debe esatr agrupado por nombre (supongo que ya lo esta) luego pones un campo ( cualquiera de tu tabla) luego le das un doble click y te aparecera un cuadro de dialogo de propiedades haces click en el boton CALCULO y activas la opcion que dice RECUENTO o en su defecto COUNT
de acuerdo a tu version del fox que tengas inatalado y das aceptar.

Luego hacer click en el boton que dice IMPRIMIR-CONDICIONES es el ultimo de los 4 que esta a la derecha ai hay una opcion que dice IMPRIMIR VALORES REPETIDOS tu le das no luego aceptas y listo . ejecutas tu reporte para que veas el recultado ok

Recuerda que tu reporte tiene que estar agrupado para que funciones ( MENU-INFORME-AGRUPAR DATOS--- escribes el nombre del campo por el que bas agrupor los datos) a se me olvidava la tabla tiene que estar ordenada por ese mismo que estas agrupando ok... espero que te halla ayudado para algo es muy facil en realidad.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sumar cortes en reportes

Publicado por Marcelo (6 intervenciones) el 23/06/2006 17:41:16
Hola Carlos.
Mira lo hice como me dijistes, pero me da un total de 7, que es el total de registros que tiene la tabla y no 4 que es el total de nombres distintos.
no se que estoy haciendo mal.
un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sumar cortes en reportes

Publicado por carlos ayala galarza (169 intervenciones) el 23/06/2006 18:13:49
Hola Marcelo

seguramenete que no le le diste la opcion de no imprimir datos repetidos ai recuerda que esto esta en las propiedades del campo el cuarto boton.

o derepente tu datos no estan ordenados o grupados aver fijate y me contestas ok
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sumar cortes en reportes

Publicado por Marcelo (6 intervenciones) el 23/06/2006 18:24:07
Carlos, me asegure que estan correctamente tildadas las dos opciones, tanto la count() en Calculation y NO imprimir valores repetidos en las condiciones.
La tabla tiene 7 registros (2 para un nombre, 2 para otro, 2 para otro y 1 para el restante). me sigue dando 7 el valor del campo final, en vez de 4.
gracias por la ayuda.

saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sumar cortes en reportes

Publicado por Carlos Ayala Galarza (1 intervención) el 23/06/2006 18:47:58
Te doy otra solucion :

primero has una consulta SQL la dual la agrupas por el campo de NOMBRE
por ejemplo

SELECT NOMBRE FROM LISTA GROUP ORDER BY NOMBRE BY NOMBRE INTO CURSOR TEM1

luego cuentas los registros y lo mandas a una variable asi

select TEM1
XDAT=RECCOUNT()

luego esta variable la colocas al final de tu reporte y listo aver como te va OK ...

NOTA : la prime opcion que te di si funciona lo habo de probar y me funca ¿? sequeala bien pero ya tienes otra pruebala y me dice como te fue ....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sumar cortes en reportes

Publicado por Marcelo (6 intervenciones) el 23/06/2006 18:52:28
Gracias Carlos. La opcion del select ya la habia probado y me andubo bien. Pero el tema es que queria resolverlo desde adentro del reporte, con el uso de variables o funciones. Por afuera anda bien. Me parece que el report es un poco limitado para esas cosas, deberia haber alguna forma.
de todos modos te agradezco la atencion.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sumar cortes en reportes

Publicado por Saul (362 intervenciones) el 23/06/2006 23:28:19
Marcelo se me hace que tu andas mal..

te voy a decir que opinion yo .. .

yo entre menos tenga que hacer en el reporteador mucho mejor..

Agrupo, cuento, selecciono ect. fuera del reporteador a modo que si quieres mandar tus datos a excel o un archivo x no se te haga dificil mi consejo..

no te compliques la vida.

bye
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar