Jump to content
Sign in to follow this  
cabbages

Limiting calculations to subsets

Recommended Posts

Hey, there --

I'm using FMPro 5.5. We have a database used to manage our mouse colony with >70k records. My problem is, I've created a field to give a current age for each record in weeks [(Today-birthdate)/7]. Works fine, but the value is recalculated every morning the first time filemaker is open. And with 70,000 records, this takes a long time. (~15 minutes, according to the coworker who pointed this out to me.) How can I reduce this problem? I'd like to somehow limit the calculation to only those records where a certain field has a certain value. Something like "If 'alive?' equals 'Y', then (Today-birthdate)/7" but I have no idea what the language for that would be and I'm not entirely sure this would speed the process up.

Any suggestions would be greatly appreciated. Thanks!

Share this post


Link to post
Share on other sites

Use Status(CurrentDate) instead of Today and make the calculation unstored in the Storage Options (Do not store calculation results).

You could do something like Case( IsEmpty(deathdate), (Status(CurrentDate) - birthdate)/7 ).

Share this post


Link to post
Share on other sites

Thank you! I'll try that.

One question about the deathdate case -- would that slow the calculations down again because the program would have to sort through date of death for all records?

Share this post


Link to post
Share on other sites

It won't recalculate for all records unless you have all records found and are using a list view layout with the field on it. Unstored calculations only calculate when they or calculation that references them is on the current layout.

Share this post


Link to post
Share on other sites

Everything seems to be working great -- no 15 minutes to open the file of a morning. Thanks very much, Queue!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site, you agree to our Terms of Use.