Action queries, the kind that can alter data, typically indicate a poor table structure or a developer who doesn't fully understand how databases should work.
So far so good, that's how things should be done
Nope. You don't store calculated values. Your reports shouldn't be based on those tables where you are storing the calculated values, but on the queries that are doing the calculation. You do that and there's no need to update anything, the user selects a report to run, the underlying query runs and produces the correct dataset and the report is generate from that.
Action queries are for the weak.