I have used these many times but on one form I do the following:
Set_Item_Instance_Property( 'QUO', CURRENT_RECORD, UPDATE_ALLOWED,PROPERTY_FALSE);
Set_Item_Instance_Property( 'CPN', CURRENT_RECORD, UPDATE_ALLOWED,PROPERTY_FALSE);
Set_Item_Instance_Property( 'DESC', CURRENT_RECORD, UPDATE_ALLOWED,PROPERTY_FALSE);
And i can still overtype all the above fields.
To test i was doing nothing silly I did the following:
I amended the set item property to SET_ITEM_PROPERTY('CUST',ENABLED,PROPERTY_FALSE);
and it amended item to enabled false
I also amended the item_instance to change visual attribute and this worked fine
Its only the UPDATE_ALLOWED thats not taking affect.
I also put on when validate trigger an alert to show GET_ITEM_PROPERTY and this showed the correct property was assigned yet i can still overtype the value.
What else can i check i know i must be doing something silly.
Im on 10.1.2.3 Forms.
DId you populate your record using EXECUTE_QUERY on the block? If you populate your block bynhand or if the record is newly created, you have to use INSERT_ALLOWED instead of UPDATE_ALLOWED