Buen día...
Primero que todo darte Muchas gracias jc3000 por tus comentarios, eso (ademas de mi trabajo) hace que siga buscando cosas nuevas de oracle. Lo segundo es que toca aclarar es que esta instrucción solo funciona con Oracle 11g o superiores, es decir que si la BD es inferior toca hacer uso de la siguiente:
Código SQL:
Ver originalMAX(decode(CVJ_CO_INV_PAC_UEN_VNTAS_DIA.SubInventario(cod_item,org_code,SubInv,to_date('|| chr(39)||to_char(p_fec_ini_per,'DD/MM/YYYY') || chr(39)||','|| chr(39)||'DD/MM/YYYY'|| chr(39)||'),to_date('|| chr(39)||to_char(p_fec_final_per,'DD/MM/YYYY')|| chr(39)||','|| chr(39)||'DD/MM/YYYY'|| chr(39)||')),'''||inv.subinventario||''',round(CVJ_CO_INV_PAC_UEN_VNTAS_DIA.Cant_SubInv(cod_item, subinv,org_code,to_date('|| chr(39)||to_char(p_fec_ini_per,'DD/MM/YYYY') || chr(39)||','|| chr(39)||'DD/MM/YYYY'|| chr(39)||'),to_date('|| chr(39)||to_char(p_fec_final_per,'DD/MM/YYYY')|| chr(39)||','|| chr(39)||'DD/MM/YYYY'|| chr(39)||')),3),0)) "'||inv.subinventario||'[40]",''|'',';
Este codigo lo utilice en un reporte ya que la BD en la que trabajo es 10g para hacer lo mismo que tu tratas de hacer.
Scooby