Saludos de nuevo, aqui en lo mismo no puedo realizar el update y eso que estoy colocando solamente una instruccion en el update no estoy haciendo select ni nada de eso solo un update help..helppppppppppppppppppppppppppppp..... les muestro la parte del codigo...
-- Function: act_concepto(id_sede int4, id_concepto int4, concepto "varchar", descripcion "varchar", clase int4, tipo int4, status_convenio int4, afecta_prestaciones int4, afecta_utilidades int4, afecta_vacaciones int4, unidad int4, formula "varchar", afecta_liquidacion int4, afecta_sueldomensual int4, ingreso_mensual float8, vigente int4, asociado int4)
-- DROP FUNCTION act_concepto(id_sede int4, id_concepto int4, concepto "varchar", descripcion "varchar", clase int4, tipo int4, status_convenio int4, afecta_prestaciones int4, afecta_utilidades int4, afecta_vacaciones int4, unidad int4, formula "varchar", afecta_liquidacion int4, afecta_sueldomensual int4, ingreso_mensual float8, vigente int4, asociado int4);
CREATE OR REPLACE FUNCTION act_concepto1(idsede integer, idconcepto integer,clase integer)
RETURNS SETOF conceptos AS
$BODY$
DECLARE
fila conceptos%rowtype;
sql character varying;
BEGIN
sql = 'UPDATE CONCEPTOS SET idsede = idsede,
idconcepto = idconcepto,
clase = clase
WHERE idconcepto like ''%' || ltrim(rtrim(idconcepto)) || '%''';
execute sql;
FOR fila IN EXECUTE sql
LOOP
RETURN NEXT fila;
END LOOP;
RETURN;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
ALTER FUNCTION act_concepto1(idsede integer, idconcepto integer,clase integer) OWNER TO postgres;
Nada mas estoy actualizando no estoy haciendo el select y cuando lo ejecuto me da el sigiente error::
ERROR: cannot open non-SELECT query as cursor
CONTEXT: PL/pgSQL function "act_concepto1" line 12 at for over execute statement
Si me pueden ayudar se lo agradeceria