Hi ,
you can use the Function module " STATUS_CHANGE_EXTERN"
call this function module in the change exit for sales order and try to force the User status when Quantity is changed
We used the same function module for Sales orders, This should work for contracts as well
try and seek the help of ABAPer to put the code
thanks
santosh