Ver Mensaje Individual
  #1  
Antiguo 22-05-2006
reina reina is offline
Miembro
 
Registrado: ago 2005
Ubicación: Capital Federal-La Plata (Bs As)
Posts: 147
Reputación: 21
reina Va por buen camino
group by y problema de logica

Hola ver si me ayudan...
Tengo una tablas que tienen:
MOVIMIENTOS: comprobante, tipo de comprobante, cantidad, idarticulo, precio

OTRABAJO: autoid, IDmovil, efrio

VALES: autoid, IDmovil, efrio

MOVIL: idmovil, idinterno, ...

ARTICULOS: autoid, descripcion

El problema es el siguiente, yo deberia cruzar los comprobantes de Otrabajo y vales con todos los movimientos correspondientes a los moviles.. y sacar por movil la suma de la cantidad de articulos y la suma del costo total del articulo agrupado por movil. El tema es que no todas las OTrabajo son de moviles..algunas son de otros equipos y sucede lo mismo con los vales.
Hice la siguiente sentencia:

Código SQL [-]
select FLOTA."cID",MOVIMIENTOS."IDARTICULO",ARTICULOS."DESCRIPCION",SUM(MOVIMIENTOS."CANTIDAD"),SUM(MOVIMIE  NTOS."CANTIDAD" * MOVIMIENTOS."PRECIOUNITARIO")
from VALES,MOVIMIENTOS, FLOTA, ARTICULOS,OTRABAJOXMOVIL
WHERE
((VALES."IDMOVIL" = FLOTA."autoID") and
(VALES."autoID" = MOVIMIENTOS."COMPROBANTE") and
(MOVIMIENTOS."TIPOCOMPROBANTE" = 2) and  (MOVIMIENTOS."IDARTICULO" = ARTICULOS."autoID"))
OR 
((OTRABAJOXMOVIL."IDMOVIL" = FLOTA."autoID") and
( OTRABAJOXMOVIL."autoID" = MOVIMIENTOS."COMPROBANTE")
(MOVIMIENTOS."TIPOCOMPROBANTE" = 1) and 
(MOVIMIENTOS."IDARTICULO" = ARTICULOS."autoID" ))
GROUP By FLOTA."cID",MOVIMIENTOS."IDARTICULO",ARTICULOS."DESCRIPCION"
Order By FLOTA."cID"

Aqui lo que hace es mirar cada movil y fijarse si tienen Vales cruzarlo con sus respectivos movimientos de stock o si ese movil tiene Orden de trabajo y cruzarlo con sus respectivos movimientos. Lo que deberia hacer es juntar ese informacion agruparla por movil y sumar las cantidades (cantidad y precios).
Asi tendria un detalle del consumo de cada movil.
Pero cuando la ejecuto me tira registros repetidos...no sé en que le estoy errando. Si alguien me podria ayudar que es lo que tengo mal o si se puede hacer de otra manera!..
tkssss y saludos!

LA PATRIA SERA LIBRE!
Responder Con Cita