I've been converting virtually all my unstored calcs into auto-enter calcs with a LET based trigger field using a timestamp field. Overnight, looping through all the records and setting the timestamp, forces a recalc of all the formerly unstored auto-enter calcs, creating, in effect, static field content. (note: Using a timestamp ensures that the data will have changed; you could use a Get (UUID) if desired for the same effect).
Let
[ ~TriggerTS = z_TriggerTS
]
;
ANY CALCULATION HERE
)
Any change to the z_TriggerTS field, will force the auto-enter to re-evaluate.
Then, during user interaction, every COMMIT sets that timestamp trigger field for the current record, keeping the data in the same state as if it were an unstored calc, but without the performance limitations.
There are potential "gotchas" in this design approach, where referenced unstored calcs that did not get converted, cause some radical performance degradation exacerbated by the force recalcs, but it is managable.... and YOU control when the data updates.
A more ideal [performant] approach would be to always set fields through scripts, but that increases complexity / potential for errors.