Yesterday i found a good tip about Oracle Forms Item validation . I was having a form which had a item with both Trigger WHEN-VALIDATE-ITEM and KEY-NEXT-ITEM . As you know we can not navigate in validation trigger so there was hell lot of code written on key next item trigger so if any user entered wrong data ( character instead of number or decimal instead of integer) then it crashed.
To change the validation scope you should write following line on top of KEY-NEXT-ITEM—
validate(item_scope);
if form_failure then
raise form_trigger_failure;
end if;
Now it will fire WHEN-VALIDATE-ITEM first and validate input before getting into code written on KEY-NEXT-ITEM.