Calculation performance: stored vs. unstored decision framework
BeginnerApply a systematic decision framework to determine whether a calculation field should be stored or unstored, balancing find performance, data currency, and server load.
What you'll learn
- The five conditions that force a calculation to be unstored
- How stored calculations enable fast finds and sorts
- The three-question decision framework for stored vs. unstored
- Workarounds for time-sensitive values that must be findable
The stored vs. unstored decision is one of the highest-leverage choices in FileMaker schema design. A stored calculation can be indexed and found in milliseconds across millions of records. An unstored calculation is recomputed every time a record is displayed, consuming CPU and preventing indexing. The correct choice depends on what the field is used for and what its inputs are.
1/4
1
Five things that force a calculation unstored
FileMaker automatically marks a calculation unstored if it references any of the following. You cannot override this.
FileMaker Script
// These ingredients always produce an unstored calculation: // 1. A related field Sum ( LineItems::Amount ) // unstored // 2. A global field Globals::gCurrentUserRole // unstored // 3. A Summary field SomeSummary // unstored // 4. A Get() runtime function Get ( CurrentDate ) // unstored Get ( AccountName ) // unstored // 5. Another unstored calculation field UnsteredCalcField & " suffix" // unstored (by inheritance)
Sign in to track your progress and pick up where you left off.
Sign in to FM Dojo