Buenas tardes compañeros.
Disculpen que no se me ocurrio un titulo mas claro
Pero la cuestion es la siguiente tengo una consulta para generar estadisticas de articulos vendidos.
Y necesito entre varias cosas calcular el margen de ganancia
I para evitar error de division por 0 uso IIF
Y resulta que al agregar esa linea me pide que agrupe por el campo detalleventa.costo (que es algo que no quiero porque no sirve)
Ese campo es siempre distinto, seria el ultimo costo del articulo vendido, y lo utilizo para calcular el costo promedio de un articulo a lo cargo del tiempo y como cambia no seria un campo para agrupar, pero al calcular con el IIF me pide que agrupe por ese campo.
¿de que forma podria evitar que me lo pida en group by?
Código SQL
[-]select
detalleventa.art, detalleventa.descripcion, alicuotas.porcent, sum(detalleventa.costo* alicuotas.porcent)/sum(detalleventa.cant)as costoprom, articulos.costo as costoactual,
sum(detalleventa.total) as total, sum(detalleventa.cant) as cant, sum(detalleventa.cant) * articulos.peso as kilos,
IIF ( (detalleventa.costo * alicuotas.porcent) > 0,(sum(detalleventa.total)/sum(detalleventa.cant))/(detalleventa.costo * alicuotas.porcent), 0) as Margen
from detalleventa
inner join facturas
on detalleventa.numero = facturas.id
inner join articulos
on articulos.id = detalleventa.art
inner join alicuotas
on articulos.iva = alicuotas.id
where facturas.fecha > :fe
group by detalleventa.art, detalleventa.descripcion, alicuotas.porcent, articulos.costo, articulos.peso
order by cant asc