Re: Se pueden usar Transacciones desde una funcion?

From: Gilberto Castillo Martínez <gilberto(dot)castillo(at)etecsa(dot)cu>
To: Jorge Jacques <jorge(at)eskalonnetwork(dot)com>
Cc: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Se pueden usar Transacciones desde una funcion?
Date: 2010-02-16 17:59:40
Message-ID: 1266343180.12484.33.camel@gilbertoc.mtcorp.etecsa.cu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El mar, 16-02-2010 a las 11:31 -0600, Jorge Jacques escribió:
> Hola, buen día
>
> Estoy intentando usar transacciones en una función:
>
> CREATE OR REPLACE FUNCTION "public"."fx_hacer_entrada_por_concepto" (in
> int4, in float8, in int4) RETURNS bool AS
> $BODY$
> DECLARE
> id_usuario ALIAS FOR $1;
> id_concepto ALIAS FOR $3;
> cant ALIAS FOR $2;
> id_caja INT;
> id_ticket INT;
> BEGIN
> SAVEPOINT rescate;
> id_caja := nextval('caja_caja_id_seq'::regclass);
> id_ticket :=
> nextval('entradas_por_concepto_entrada_por_concepto_id_seq'::regclass);
>
> INSERT INTO caja VALUES (id_caja, id_ticket, cant, true);
> IF NOT FOUND THEN
> ROLLBACK TO rescate;
> RETURN FALSE;
> END IF;
> INSERT INTO entradas_por_concepto VALUES (id_ticket, id_concepto);
> INSERT INTO transacciones (transaccion_id, caja_id, usuario_id,
> tipo_de_transaccion_id, registro_id, fecha_hora) VALUES (DEFAULT,
> id_caja, id_usuario, 2, id_ticket, CURRENT_TIMESTAMP);
> COMMIT;
> RETURN TRUE;
> END
> $BODY$
> LANGUAGE 'plpgsql'
>
> Pero al llamarla:
> select fx_hacer_entrada_por_concepto(1, 10000, 1);
>
> Obtengo un error:
> >[Error] Script lines: 1-3 --------------------------
> ERROR: SPI_execute_plan failed executing query "SAVEPOINT rescate":
> SPI_ERROR_TRANSACTION
> Line: 1 
>
> Alguna idea? Desde ya muchas gracias.
>

No se puede.

--
Saludos,
Gilberto Castillo
Edificio Beijing. Miramar Trade Center. Etecsa.
Miramar, La Haban.Cuba.

Attachment Content-Type Size
unknown_filename text/plain 179 bytes

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2010-02-16 18:08:17 Re: Se pueden usar Transacciones desde una funcion?
Previous Message Jorge Jacques 2010-02-16 17:31:15 Se pueden usar Transacciones desde una funcion?