DROP FUNCTION IncrementadorTotal() CASCADE;
CREATE OR REPLACE FUNCTION IncrementadorTotal() RETURNS trigger AS '
DECLARE
	vreg record;
	vrec record;
	vnuevo numeric(10,2);
BEGIN
	-- Selecciona el curso de la tabla CursosEspeciales
	select into vreg * from CursosEspeciales where idcurso = new.idcurso;
	-- Selecciona el importe pagado por cada curso en el detalle de recibo
	select into vrec * from DetalleRecibo where folio = new.folio and cns = new.cns;
	-- Incrementa el pago del alumno
	vnuevo := vreg.TotalRecabado + vrec.subtotal;
	-- Actualizar TotalRecabado
	update CursosEspeciales set TotalRecabado = vnuevo where idcurso = new.idcurso;
	return new;
END;
' LANGUAGE 'plpgsql';