Solucionado! Un parámetro de salida tenía igual nombre que el de entrada y eso me armaba un despiole.
Guillermo Villanueva El 4 de junio de 2014, 12:01, Guillermo E. Villanueva < [email protected]> escribió: > perdón la línea raise notice current_query();era solo una prueba que no > funcionó > > Guillermo Villanueva > > > > El 4 de junio de 2014, 11:57, Guillermo E. Villanueva < > [email protected]> escribió: > > Buenas, una función plpgsql me está dando dolores de cabeza y necesito >> debuguear lo que está haciendo. >> Es muy simple, tiene un return query con un select que le paso algunos >> parámetros. >> Concretamente la pregunta es: >> Existe alguna forma de que vea el select que ejecuta la función tal cual >> como la ejecuta? >> Desde ya muchas gracias. >> Por si quieren ver la función: El código es: >> >> CREATE OR REPLACE FUNCTION nacer.fn_embarazadas_sin_control(IN pt_periodo >> timestamp without time zone, IN pi_cant_controles integer DEFAULT 3, >> pi_semanas integer DEFAULT 34) >> RETURNS TABLE(pt_nombreefector text, pv_clavebeneficiario character >> varying, pv_afitipodoc character varying, >> pv_afidni character varying, pv_afiapellido character varying, >> pv_afinombre character varying, pc_aficlasedoc character, >> pc_activo character, pv_cuieefectorasignado character varying, >> pt_fechainscripcion timestamp without time zone, >> pi_afitipocategoria smallint, pt_fechadiagnosticoembarazo timestamp >> without time zone, pi_semanasembarazo integer, >> pt_periodo timestamp without time zone, pi_controles bigint ) AS >> $BODY$ >> >> BEGIN >> RETURN QUERY >> SELECT >> efe_conv.nombreefector, >> clavebeneficiario, >> afitipodoc, >> afidni, >> afiapellido, >> afinombre, >> aficlasedoc, >> activo, >> cuieefectorasignado, >> fechainscripcion, >> afitipocategoria, >> fechadiagnosticoembarazo, >> semanasembarazo, >> periodo, >> count(id) cuenta >> FROM >> nacer.historicotemp h >> inner join nacer.efe_conv on h.cuieefectorasignado = efe_conv.cuie >> left join facturacion."trz_I_II" t on h.afidni = t.nrodoc >> WHERE >> h.afitipocategoria = 1 AND >> h.activo = 'S' AND >> ((((date_part('DAY', (pt_periodo::timestamp - >> h.fechadiagnosticoembarazo::timestamp))) / 7)+ h.semanasembarazo) > >> pi_semanas) AND >> (h.periodo = pt_periodo::timestamp) AND >> t.fechactrl > (pt_periodo::timestamp - (pt_periodo::timestamp - >> h.fechadiagnosticoembarazo::timestamp - (h.semanasembarazo*7) * interval '1 >> days')) >> GROUP BY 1,2,3,4,5,6,7,8,9,10,11,12,13,14 >> having count(id) < pi_cant_controles; >> raise notice current_query(); >> END; >> $BODY$ >> LANGUAGE plpgsql >> >> Guillermo Villanueva >> >> >
