Función para un disparador (control del campo serial)

From: Joac <jgarcil(at)hotmail(dot)com>
To: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Función para un disparador (control del campo serial)
Date: 2010-03-17 13:46:26
Message-ID: COL118-W24583E378C6A7E46FDF20AB72C0@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda


Buenas a todos,

En el e-mail que envie sobre el problema que tenía con la modificación del campo serial cuando daba un error, he modificado la función pero sale un mensaje de error pero el indice del campo serial lo modifica correctamente, pero el error que sale es el siguiente: la consulta no tiene un destino para los datos de resultado. Si se quiere descartar los resultados de una select, utilice PERFORM y me indica la línea donde está ubicada la consulta que es un SELECT last_value INTO ultimo FROM salida_salcod_seq; Como ya he utilizado el SELECT INTO pero desde una tabla que controlaba un contador y no me dá problemas tendré que obtar por crear una tabla que lleve el contador por no utilizar los OID's.

Saludos,
Joac

conta entrada.entsto%TYPE;
ultimo integer;
BEGIN

-- Modificar el campo entrada Stock con las salidas que vayan produciendose.

Select entsto into conta from entrada where entpar=new.entpar;

IF conta = 0 THEN
SELECT last_value INTO ultimo FROM salida_salcod_seq;
SELECT setval('salida_salcod_seq',ultimo-1);
RAISE EXCEPTION 'No se puede registrar la salida ya que no hay stock';
END IF;

IF new.salcan > conta THEN
SELECT last_value into ultimo FROM salida_salcod_seq;
SELECT setval('salida_salcod_seq',ultimo-1);
RAISE EXCEPTION 'No se puede registrar la salida ya que la cantidad selecciona es mayor a la que hay en stock';
ELSE
conta := conta - new.salcan;
update entrada SET entsto = conta where entpar=new.entpar;
END IF;


RETURN NEW;

END;


_________________________________________________________________
Escucha a quienes ya han probado Windows 7 ¡Hazlo aquí!
http://www.sietesunpueblodeexpertos.com/index_windows7.html

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Carlos Bazán 2010-03-17 14:42:49 Re: Secuencias y tablas
Previous Message Manuel Fernando Aller 2010-03-17 13:33:04 Re: [OT] Fecha definitivas JSRL2010