|
mas datos
Está en PARADOX. La consulta que tengo ahora es esta
SELECT Facturas.IdAbono As IdAbono,MAX(Facturas.NumeroFactura) as NumeroFactura,
MIN(PF1.FechaInicio) as MinFechaInicio,
MAX(PF1.FechaFinal) as MaxFechaFinal,
MAX(Abonos.Nombre) as NombreAbono,MAX(Clientes.Nombre) as NombreCliente,MAX(Contratos.NoContrato) NumContrato
FROM Clientes,Abonos,Facturas,PeriodosFacturados PF1,Contratos
WHERE Facturas.IdFactura = PF1.IdFactura
AND Abonos.IdAbono = Facturas.IdAbono
AND Clientes.IdCliente = Abonos.IdCliente
AND Facturas.IdContrato = Contratos.IdContratos
GROUP BY Facturas.IdAbono,PeriodosFacturados.IdFactura
ORDER BY NombreCliente,NombreAbono,MinFechaInicio
que me devuelve una fila por factura, pero yo sólo quiero la última factura. Hay una tabla de clientes, cada cliente puede tener varios abonos, a cada uno de los cuales le corresponde una factura. Para cada factura hay un único contrato válido y una serie de Periodos Facturados
Esta es mi última idea
SELECT Abonos.Nombre,facturas.NumeroFactura,PeriodosFacturados.FechaInicio
FROM abonos,facturas,periodosfacturados
WHERE Abonos.IdAbono = Facturas.IdAbono AND Facturas.IdFactura = PeriodosFacturados.IdFactura
AND PeriodosFacturados.FechaInicio =
(SELECT MAX(PF1.FechaInicio) FROM PeriodosFacturados PF1
WHERE PF1.IdFactura = Facturas.IdFactura
)
Pero no funciona. Se cuelga al intentarlo. Quizás sea un fallo de Paradox?
Última edición por pescriba fecha: 22-01-2004 a las 13:42:20.
|