Thread: PROBLEM WITH FUNCTION
HI list, i have a next function CREATE OR REPLACE FUNCTION "public"."contador_distrito_activos" (numeric, numeric, numeric) RETURNS SETOF "public"."ty_activo" AS' declare con bigint; act bigint; emp alias for $1; sed alias for $2; zon alias for $3; begin con := contador_distrito(1,2,5); if (con > 0) then act := ( select count(*) from activos where activos.co_empresa = 1 and activos.co_filial = 2 and activos.co_zona = 5); if act isnull then act := 0; end if; else con :=0; act :=0; end if; return con , act; end; 'LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER; But this function only return the value of con ; any idea Thank
"Mario Alberto Soto Cordones" <mario_soto@venezolanadeavaluos.com> writes: > CREATE OR REPLACE FUNCTION "public"."contador_distrito_activos" (numeric, > numeric, numeric) RETURNS SETOF "public"."ty_activo" AS' > declare > con bigint; > act bigint; > ... > return con , act; plpgsql has no shorthand for constructing a rowtype result, as you seem to be expecting here. Declare a variable of type ty_activo, fill it in, and return it. regards, tom lane