Buenos dias.
Tengo la siguiente consulta con la que quiero obtener el ultimo precio de compra UPC y el ultimo precio de venta UPV y el margen a ultimo precio, que sera la resta del UPV - UPC.
La consulta funciona perfectamente, el problema es que si no ha habido ninguna compra me devuelve null, en UPC y UPV, cuando lo que quiero es que me devuelva 0 en UPC y en UPV el precio y no NULL como hace, aunque si que tiene movimiento.
pongo aqui la consulta SQL.
Estoy usando firebird 2.5
Código SQL
[-]
select coalesce(ult_precio_compra, 0) as Ult_Precio_Compra , Ult_Precio_venta , Ult_Precio_venta - ult_precio_compra as Margen_Ult_precio
from (select first 1 cast(coalesce(apl.precio_neto_regalo_dtocabe,0) as numeric(18,4) ) as ult_precio_compra from albaprovelineas apl
join albaprovecabe apc on apl.albaprovecabe_id = apc.albaprovecabe_id
where apc.estado > 9 and apl.precio_neto_regalo_dtocabe > 0
and apl.articulo_id = :xarticulo
order by apc.fecha_albaran desc )
,
( select first 1 li.precio_neto as Ult_Precio_venta from lineaalbaclie li
join cabealbaclie ca on ca.cabealbaclie_id = li.cabealbaclie_id
where ca.estado > 9 and li.precio_neto > 0
and li.articulo_id = :xarticulo
order by ca.fechaalbaran desc )
Gracias y un saludo.