primaryButtons: { a!buttonWidget( label: "Approve", icon: "check", value: true(), saveInto: { a!save(ri!GFIM_User_Access_User_Information,ri!GFIM_User_Access_User_Information), a!save(ri!GFIM_User_Access_User_Information.supervisorsDecisionDate,now()), a!save(ri!GFIM_User_Access_User_Information.supervisorDecision,true) }, submit: true, style: "PRIMARY" ) },
Discussion posts and replies are publicly visible
In this case your Interface Output save for pv!User_Data is overwriting your interface updates. Only the Save Into from the Input tab is correct, you will want to delete the Output Save Into, as this is overwriting with the pv! value (what the variable was set at prior to the form save). If you had used ac!User_Data in the output this would function correctly but be redundant.
Oh yeah, good catch - I didn't even notice the interface output node was referencing the PV in saving the PV back into itself. That said I'm not clear (without testing) whether the save-out to the PV from the Input tab would happen before or after the Output save executes... but in any case there's no need for such confusion since there's a potential overwrite and/or race condition.
Yep! From overwriting my own data on a few occasions, I can confirm the Output expressions fire last and will essentially reset any of the Inputs if there is a conflict. Been there, done that! :)