CREATE OR REPLACE FUNCTION "Test1" (i_emp_id double precision, OUT o_emp_term_detail_id double precision, OUT o_term_id double precision, OUT o_term_start_date timestamp without time zone)
RETURNS SETOF record
LANGUAGE plpgsql
SECURITY DEFINER
AS $function$
begin
return query values(1.1::float,1.1::float,now()::timestamp);
END;
$function$;
CREATE OR REPLACE FUNCTION "Test2"(i_emp_id double precision, OUT o_emp_term_detail_id double precision, OUT o_term_id double precision, OUT o_term_start_date timestamp without time zone)
RETURNS SETOF record
LANGUAGE plpgsql
SECURITY DEFINER
AS $function$
begin
RETURN QUERY select * FROM "Test1"(i_emp_id) t;
END;
$function$;
В вашем запросе есть несколько синтаксических проблем. Вот рабочий пример, основанный на ваших данных.