Ver Mensaje Individual
  #19  
Antiguo 19-07-2007
NSL94 NSL94 is offline
Miembro
 
Registrado: abr 2007
Posts: 43
Reputación: 0
NSL94 Va por buen camino
partiendo de esta consulta:

Código SQL [-]
SELECT 
FRA.CLIENTE, EMP.NOMBRE, TEL.TELEFONO, SUM(FRA.BASE_IMP)
FROM
": DBFACTU2:FAC_EMI.DB" AS FRA,
": DBFICHEROS:EMPRESAS.DB" AS EMP,
": DBFICHEROS:TELS_EMP.DB" AS TEL
WHERE 
TEL.EMPRESA = EMP.ID_EMPRESA AND
EMP.ID_EMPRESA = FRA.CLIENTE
GROUP BY
FRA.CLIENTE, EMP.NOMBRE, TEL.TELEFONO
ORDER BY
FRA.CLIENTE

Esta consulta me funcciona(NO DA ERRORES), pero no como quisiera.

LO QUE QUIERO HACER:
Sacar un listado de empresas con codigo, nombre, una suma de todos los campos Base_Imp de los albaranes liados a esta empresa y por ultimo un numero de telefono liado a esta empresa, uno y solo uno.
EL PROBLEMA (LO QUE HACE ESTA CONSULTA ver arriba):
Cuando una empresa tiene varios numeros de telefono, me sale un registro por cada empresa, cada uno de estos registros tiene la suma.
Lo que provoca que el sumario del report (La suma final de las sumas) es erona.

EJEMPLO:
empresa 1 tiene 3 numeros de telefono
empresa 2 tiene 1 numero de telefono

LO QUE SACO YO (ERONEO)
cod \ nombre \ suma \ telefono
001 \ empresa1 \ 100 \ 930000
001 \ empresa1 \ 100 \ 930001
001 \ empresa1 \ 100 \ 930002
002 \ empresa2 \ 105 \ 931111
sumario: 405 ->totalmente falso!

LO QUE QUIERO SACAR:
001 \ empresa1 \ 100 \ el numero que sea, me da igual el que salga.
002 \ empresa2 \ 105 \ 931111
sumario: 205 -> suma final corecta.

te recuerdo que no puedo usar ni last ni first, ni condiciones en el group by ni tampoco selects en el from.
Responder Con Cita