13.07.2014 01:31, slu...@iquanta.com wrote: > > CREATE TRIGGER ROVMRS_AU FOR ROVMRS AFTER UPDATE > AS > DEC LARE VARIABLE ff SMALLINT; > BEGIN > SELECT FIRING FROM TRIGGER_CONTROL WHERE EVENT = "GL_UPDATE" INTO :ff; > IF ((OLD.GL = NEW.GL) AND (:ff = 0)) THEN BEGIN > IF (OLD.RCHARGE <> NEW.RCHARGE) THEN BEGIN > UPDATE ROMECH M SET M.RCHARGE = NEW.RCHARGE WHERE (M.IDIV = > NEW.IDIV) AND (M.IRO = NEW.IRO) AND (M.IROVMRS = NEW.IC_ROVMRS); > UPDATE ROPART P SET P.RCHARGE = NEW.RCHARGE WHERE (P.IDIV = > NEW.IDIV) AND (P.IRO = NEW.IRO) AND (P.IROVMRS = NEW.IC_ROVMRS); > END > EXECUTE PROCEDURE TRGR_UPDATE_PMEVENT_CURRENT(NEW.IDIV,NEW.IRO,"I"); > END /*IF ((OLD.GL = NEW.GL) A ND (:ff = 0))...*/ > END~
Did you search one step deeper, inside AFTER triggers for ROMECH and ROPART? > so i don't get why firebird is throwing back this error nor do i > understand how to address it. You need to find an AFTER (supposedly AFTER UPDATE) trigger that assigns something into the NEW context. Dmitry