Bueno lo voy a revisar, pero sin consulta no era respecto a esa parte del procedimiento, sino es al momento de condicionar las busqueda del query general, que consulta a la tabla "insumos_servicios". Adjunto procedimiento modificado.
Código SQL
[-]
begin
for select id_item, i_s.nombre, i_s.id_clasificacion from insumos_servicios I_S
INNER JOIN clasificaciones c on c.id_clasificacion = i_s.id_clasificacion
where que_es = 'T' AND estructura = 0
and nombre like :nombre
into :id_item, :nombre, :id_clasificacion do
begin
execute statement
'select coalesce(sum(cantidad * precio)/sum(iif(cantidad = 0,1,cantidad)),0),
coalesce(sum(cantidad),0) from inventario
where id_item ='||:id_item||' and id_bodega in '||(:bodegas)
into recio_medio, :cantidad_ingreso;
execute statement
'select coalesce(avg(precio),0), coalesce(sum(cantidad),0) from inventario_egreso
where id_item ='||:id_item||' and id_bodega in '||(:bodegas)
into recio_egreso, :cantidad_egreso;
suspend;
end
end
Esto funciona bien siempre y cuando el usuario desee buscar por algún items en especifico, sin embargo, imaginense que el usuario desea revizar la lista completa de items, la nueva condición me impediría hacer esto, ya que si o si es necesario pasar este valor en el query original.
Nombre es una nueva variable de entrada.
Pueden existir mas de una nueva condicion de busqueda.
Se les ocurre como solucionar esto?