From: | "Jaime Casanova" <jcasanov(at)systemguards(dot)com(dot)ec> |
---|---|
To: | miguel <mvillagomez(at)sayab(dot)com(dot)mx> |
Cc: | "Lista Postgres" <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Pregunta sobre error en disparador |
Date: | 2008-11-16 01:10:46 |
Message-ID: | 3073cc9b0811151710h39173f95k63438c7a181007ff@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On Sat, Nov 15, 2008 at 5:44 AM, miguel <mvillagomez(at)sayab(dot)com(dot)mx> wrote:
> Tengo el siguiente disparador
>
> CREATE OR REPLACE FUNCTION movement_trg() RETURNS "trigger" AS $$
> DECLARE
> v_DateNull TIMESTAMP := TO_DATE('01-01-1900', 'DD-MM-YYYY');
> BEGIN
> IF
> (
> OLD.PROCESSED = 'Y' AND
> (/*Inicio Condicion 2*/
> (COALESCE(OLD.MOVEMENTDATE, v_DateNull) <>
> COALESCE(NEW.MOVEMENTDATE, v_DateNull))
no puedes usar NEW en un DELETE
> OR
> (COALESCE(OLD.AD_ORGTRX_ID, 0) <>
> COALESCE(NEW.AD_ORGTRX_ID, 0))
ni aqui
> OR
> (COALESCE(OLD.DOCUMENTNO, '.') <>
> COALESCE(NEW.DOCUMENTNO, '.'))
ni aqui
> OR
> (COALESCE(OLD.AD_ORG_ID, 0) <> COALESCE(NEW.AD_ORG_ID,
> 0))
ni aqui
> OR
> (COALESCE(OLD.AD_CLIENT_ID, 0) <>
> COALESCE(NEW.AD_CLIENT_ID, 0))
ni aqui
--
Atentamente,
Jaime Casanova
Soporte y capacitación de PostgreSQL
Asesoría y desarrollo de sistemas
Guayaquil - Ecuador
Cel. +59387171157
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2008-11-16 01:16:37 | Re: integridad ante fallo |
Previous Message | Jaime Casanova | 2008-11-16 01:07:11 | Re: integridad ante fallo |