ERROR AL EJECUTAR EL TRIGGER

sgtoledo
23 de Agosto del 2005
bUENOS DIAS
el CODIGO ES EL SIGUIENTE

CREATE OR REPLACE TRIGGER "SGTOLEDO"."MERCADO_PRUEBA" BEFORE
INSERT ON "PRUEBA" REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
DECLARE
V_MERCADO_ORIGEN VARCHAR2(20);
V_MERCADO_DESTINO VARCHAR2(20);
BEGIN
:NEW.CAMPO1:=rtrim(ltrim(:new.campo1));
:NEW.CAMPO2:=rtrim(ltrim(:new.campo2));
V_MERCADO_ORIGEN :='NR';
IF V_MERCADO_ORIGEN = 'NR' THEN
BEGIN
SELECT cod_ope
INTO V_MERCADO_ORIGEN
FROM Plan_num
WHERE :NEW.campo1 between DESDE and HASTA;
EXCEPTION
WHEN NO_DATA_FOUND THEN
V_MERCADO_ORIGEN := 'NR';
WHEN OTHERS THEN
V_MERCADO_ORIGEN := 'NR';
END;
END IF;
:NEW.MORIN:=V_MERCADO_ORIGEN
-- mercado destino
V_MERCADO_DESTINO :='NR';
IF V_MERCADO_DESTINO = 'NR' THEN
BEGIN
SELECT cod_ope
INTO V_MERCADO_DESTINO
FROM Plan_num
WHERE :NEW.campo2 between DESDE and HASTA;
EXCEPTION
WHEN NO_DATA_FOUND THEN
V_MERCADO_DESTINO := 'NR';
WHEN OTHERS THEN
V_MERCADO_DESTINO:= 'NR';
END;
END IF;
:NEW.MDEST:=V_MERCADO_DESTINO;
END;

eL PROBLEMA AL INSERTAR UNA FILA SIEMPRE ME DICE
no data found IN LINE 5 .


gRACIAS ...POR SU AYUDA

jc3000
23 de Agosto del 2005
Así a bote pronto, el codigo del trigger me parece correcto. Lo unco que no me cuadra algo es esto :


CREATE OR REPLACE TRIGGER "SGTOLEDO"."MERCADO_PRUEBA" BEFORE
INSERT ON "PRUEBA" REFERENCING NEW AS NEW OLD AS OLD

De todas maneras, ponme el create table de las dos tablas y mañana por la mañana te digo exactamente que es lo que pasa.