The problem here is that sometimes the users click 'save' not understanding why the state went back to 'New'.

 

I think i have it fixed,

I created an OnChange Client Script on the field 'State' with the following code. Is this going to cause any adverse effects?

So far when i go through the approval steps, the window refreshes and the expected state it shown!

function onChange(control, oldValue, newValue, isLoading, isTemplate) {
   if (isLoading || newValue === '') {
      return;
   }

     location.reload();   
}