On Sat, Nov 15, 2008 at 5:44 AM, miguel <[EMAIL PROTECTED]> 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
--
TIP 8: explain analyze es tu amigo