Trigger INSERT _ UPDATE

From: Dan <danstreet(at)gmail(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Trigger INSERT _ UPDATE
Date: 2006-12-13 16:09:09
Message-ID: 6f2857c50612130809g645bdbbrcbc4e32e958cfce8@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

buenos dias, tengo la sgt funcion, la idea es que cuando ingrese un dato en
la tabla "prueba", el campo "nro" se actualice con el valor maximo de
"nro+1". pero antes de poder insertar valido que en la tabla "cierre" el
campo "estado" sea true.
pero me sale el siguiente error: parse error at or near "updated"
espero su ayuda, gracias. ( version usada: PostgreSQL 7.2.2)

CREATE OR REPLACE FUNCTION "verifica_permisop" () RETURNS opaque AS'
DECLARE
estado boolean;
numero integer;
BEGIN
IF TG_OP = ''INSERT'' OR TG_OP = ''''UPDATED'''' THEN

SELECT status INTO estado FROM cierre WHERE anio=NEW.anio AND mes=
NEW.mes;

IF NOT found THEN --sino devuelve datos
return null;

ELSIF estado THEN --si esta cerrado ''t''
return null;

ELSE -- si esta abierto ''f''

SELECT max(nro) INTO numero FROM prueba WHERE anio=NEW.anio AND
mes=NEW.mes;
IF numero > 0 THEN
NEW.nro = numero + 1;
ELSE
NEW.nro = 1;
END IF;

''RETURN NEW;
END IF;
END IF;

END;
'LANGUAGE 'plpgsql';

-----------------------------------------

CREATE TRIGGER "verifica_permisop" BEFORE INSERT OR UPDATE
ON "prueba" FOR EACH ROW
EXECUTE PROCEDURE "verifica_permisop"();

--
-----------------
[) /-\ |\|

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Miguel Ortega 2006-12-13 16:23:18 Re: Trigger INSERT _ UPDATE
Previous Message ricardo yanguma 2006-12-13 16:00:34 Re: numrow