Bei einem regulären Formular (mit 1 Datensatz) wird der Speicherbutton aktiv, wenn sich mindestens 1 Wert eines Attributinputs geändert hat. Der bisherige Datensatz wird quasi mit den aktuellen Inputs verglichen.
Das ist bei Massenbearbeitungsformularen nicht genauso möglich, da wir die bestehenden Datensätze nicht ins Formular laden. Aktuell verlässt sich das Massenbearbeitungsformular auf eine Benutzereingabe, um den Speicherbutton zu aktivieren. Deswegen passiert nichts, wenn du per Funktion einen Wert setzt.
Aktuell kommst du deswegen um einen dedizierten Speicherbutton nicht rum. Ich kann mir das Thema für R3.10.3 anschauen, vllt. können wir die Logik ändern, dass auch diese Änderung zählt.