Meines Wissens funktioniert @SetField nur für bearbeitbare Felder und nur während das Dokument im Bearbeitenmodus ist.
Den Wert berechneter Felder kannst du per Script über das korrespondierende Item im Backend überschreiben. Aber du musst halt zusehen, dass dir eine Frontend-Berechnung nicht dazwischen grätschen kann. Was du dazu tun musst, hat Rainer hier schon geschrieben (Berechnet beim Anlegen).
Aber vielleicht gibt es auch eine ganz andere Lösung für dein Problem.
Beschreib mal bitte, was du eigentlich tun willst.