问题
I'm working with Oracle Forms. I have a field named SOLD_TO_CUST_PARTY_NAME
. I have to execute a process if I detect a change in the field's value. I tried using when_validate, but it's executed even if you just click the field and move to another field (validation ALWAYS occurs whether you change the value or not). Is there anyway I can check :old
and :new
or something similar to execute a process only if the field is modified?
EDIT:
Can't use personalizations. It has to be done with pl/sql
.
回答1:
There is a property called database value that let you check if the field has been modified and if it has not you just have to exit the validation trigger.
Ex.
BEGIN IF :BLOCK.ITEM = GET_ITEM_PROPERTY('BLOCK.ITEM', database_value) THEN RETURN; END IF; /* VALIDATION */ END;
来源:https://stackoverflow.com/questions/12606881/old-and-new-values-in-oracle-form