Nemám ponětí, proč se vám zobrazuje chyba, ale všechno jsem odstranil a přestavěl spoušť od základů a začal to fungovat:
CREATE OR REPLACE TRIGGER product_audit
BEFORE INSERT OR DELETE OR UPDATE ON DD_Products
FOR EACH ROW
DECLARE
VAR_ChangeType CHAR(1);
BEGIN
IF INSERTING THEN VAR_ChangeType := 'I';
ELSIF UPDATING THEN VAR_ChangeType := 'U';
ELSE VAR_ChangeType := 'D';
END IF;
INSERT INTO DD_PriceChange
(
PriceChangeNo,
Change_Type,
ChangeBy,
ChangeDate,
NewProductPrice,
NewRetailPrice,
OldProductPrice,
OldRetailPrice
) VALUES (
ProductHistory_SEQ.NEXTVAL,
VAR_ChangeType,
USER,
SYSDATE,
:NEW.ProductPrice,
:NEW.RetailPrice,
:OLD.ProductPrice,
:OLD.RetailPrice
);
END product_audit;
/
SQLFIDDLE