-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- SIU-GUARANI 3
-- Version 3.0.0
-- Function: f_modalidad_cursada_elemento_plan
--
-- Retorna el nombre de las modalidades de cursadas definidas para un elemento_plan.
--
-- Recibe:  f_modalidad_cursada_elemento_plan(integer)
--              1. ID del elemento_plan
-- Retorna:
--      1. Nombre modalidad cursada
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

-- DROP FUNCTION f_modalidad_cursada_elemento_plan(integer);
create or replace function f_modalidad_cursada_elemento_plan(_elemento_plan integer)
returns text as
$BODY$
declare
	retorno text;
	rec record;
begin
	retorno := '';
	for rec in
		select 	sga_modalidad_cursada.nombre 
		from	sga_elementos_plan_modalidad
		inner join
			sga_modalidad_cursada
		on	sga_elementos_plan_modalidad.modalidad = sga_modalidad_cursada.modalidad
		where 	sga_elementos_plan_modalidad.elemento_plan = _elemento_plan
		order by 1
	loop
		retorno := retorno||' / '||rec.nombre;
	end loop;
	return substring(retorno from 4 for char_length(retorno));
end;
$BODY$
language 'plpgsql';
-- ++++++++++++++++++++++++++++++ Fin Function f_modalidad_cursada_elemento_plan(integer) ++++++++++++++++

-- REVOKE EXECUTE ON FUNCTION f_modalidad_cursada_elemento_plan (integer) FROM public;
GRANT EXECUTE ON FUNCTION f_modalidad_cursada_elemento_plan(integer) TO public;


