FoxPro/Visual FoxPro - ¿Cómo agruparían estos datos?

   
Vista:

¿Cómo agruparían estos datos?

Publicado por Novato (325 intervenciones) el 10/02/2011 03:37:15
Buenas noches

Tengo una tabla con los movimientos de los clientes y necesito filtrar y sumar todos los productos que llevó un determinado cliente:

Como ejemplo les escribo 4 registros

Cliente Articulo Nombre Cantidad
001 1-12 Perno 3
003 2-60 Tornillo 2
001 5-88 Tuerca 1
001 1-12 Perno 6

La idea es que al pedir un cliente, me sume las cantidades del mismo producto.

En el ejemplo, si filtro por el cliente 001, necesitaría que me queden los pernos sumados

Cliente Articulo Nombre Cantidad
001 1-12 Perno 9
001 5-88 Tuerca 1

Según lo que tengo entendido se hace con el comando SELECT SQL , pero no sé cómo hacerlo...

GRACIAS POR SUS SUGERENCIAS!
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:¿Cómo agruparían estos datos?

Publicado por Novato (325 intervenciones) el 10/02/2011 03:42:57
Pido perdón por la forma en que salieron apilados los datos (yo les puse espacio)

Cliente - Articulo- Nombre- Cantidad
001___1-12___ Perno____3
003___2-60___ Tornillo___2
001___5-88___ Tuerca___ 1
001___ 1-12___ Perno ___6

El resultado debería ser...

Cliente- Articulo- Nombre- Cantidad
001___ 1-12___ Perno____ 9
001___ 5-88___ Tuerca____1

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:¿Cómo agruparían estos datos?

Publicado por Juan Manuel Cruz (508 intervenciones) el 10/02/2011 10:24:18
Una consulta estándar se vería mas o menos así:

Select cliente, articulo, nombre sum(cantidad) as total
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:¿Cómo agruparían estos datos?

Publicado por Juan Manuel Cruz (508 intervenciones) el 10/02/2011 10:26:54
Una consulta estándar se vería mas o menos así:

MiVariable= '001'

Select articulo, nombre sum(cantidad) as total
where cliente= MiVariable
group by articulo, nombre
order by nombre asc

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:¿Cómo agruparían estos datos?

Publicado por angel ricardo (88 intervenciones) el 10/02/2011 13:14:37
como el "nombre" esta asociado al "articulo" (numero de articulo) mi propuesta es agrupar solo por "articulo", asi que el codigo de Juan Manuel Cruz, quedaria de la siguiente forma:

MiVariable= '001'

Select articulo, nombre, sum(cantidad) as total;
from "tabla de movimientos";
where cliente= MiVariable;
group by articulo;
order by nombre asc
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:¿Cómo agruparían estos datos?

Publicado por Juan Manuel Cruz (508 intervenciones) el 10/02/2011 14:04:12
Toma en cuenta que a lo mejor en VFP eso funciona, pero no es una consulta estandar SQL.

Funciona en VFP si tienes el ENGINEBEHAVIOR puesto en 70

En 80 ó 90 te exigirá que incluyas todos los campos no calculados como parte de la agrupación.
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:¿Cómo agruparían estos datos?

Publicado por angel ricardo (88 intervenciones) el 10/02/2011 14:39:10
Hola Juan Cruz:
Tiene usted toda la razón!. la mia no fue una consulta estandar y solo funciona bien hasta VFP 7 (acabo de probarlo :-) ), por lo tanto NOVATO deberias incluir todos los campos
Saludos cordiales.
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