Hello, I want to create an update trigger and I need the value of updateted (old) columns. My statement looks like ...
CREATE TRIGGER TR_UPD_DBV FOR DBA.T_DBV AFTER UPDATE EXECUTE ( VAR altes_ende DATE; neues_ende DATE; alter_beginn DATE; neuer_beginn DATE; neuer_beginn_anschluss Date; neues_ende_anschluss Date; set altes_ende=old.ende; set alter_beginn=old.beginn; set neues_ende=new.ende; set neuer_beginn=new.beginn; set neues_ende_anschluss=SUBDATE(neuer_beginn,1); set neuer_beginn_anschluss=ADDDATE(neues_ende,1); TRY SELECT seq_dbv_nr.CURRVAL INTO :dbv_nr_alt FROM dba.t_dbv; IF (alter_beginn<neuer_beginn and altes_ende>neuer_beginn) THEN Begin SELECT seq_dbv_nr.NEXTVAL INTO :dbv_nr_neu FROM dba.t_dbv; INSERT INTO dba.T_DBV (DBV_NR,PERS_NR,AMT_SL,EING_BD_SL,BEAMTSTATUS_SL,SCHUL_NR,STDBASIS_SL,TAETIGKT_SL,BEGINN,ENDE,VERTRAGDATUM,BEGINNTARANSPR) VALUES (:dbv_nr_neu,:old.PERS_NR,:old.AMT_SL,:old.EING_BD_SL,:old.BEAMTSTATUS_SL,:old.SCHUL_NR,:old.STDBASIS_SL,:old.TAETIGKT_SL,alter_beginn,neues_ende_anschluss,:old.VERTRAGDATUM,:old.BEGINNTARANSPR); END; IF (alter_beginn<neues_ende and altes_ende>neues_ende) THEN Begin SELECT seq_dbv_nr.NEXTVAL INTO :dbv_nr_neu FROM dba.t_dbv; INSERT INTO dba.T_DBV (DBV_NR,PERS_NR,AMT_SL,EING_BD_SL,BEAMTSTATUS_SL,SCHUL_NR,STDBASIS_SL,TAETIGKT_SL,BEGINN,ENDE,VERTRAGDATUM,BEGINNTARANSPR) VALUES (:dbv_nr_neu,:old.PERS_NR,:old.AMT_SL,:old.EING_BD_SL,:old.BEAMTSTATUS_SL,:old.SCHUL_NR,:old.STDBASIS_SL,:old.TAETIGKT_SL,neuer_beginn_anschluss,altes_ende,:old.VERTRAGDATUM,:old.BEGINNTARANSPR); END; ... After confirming the trigger statements I get the message: General error;-8010 POS(212) Table name must be in from list. What is wrong? Ines _______________________________________________ sapdb.general mailing list [EMAIL PROTECTED] http://listserv.sap.com/mailman/listinfo/sapdb.general
