Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×
The Claris Museum: The Vault of FileMaker Antiquities at Claris Engage 2025! ×

This topic is 4234 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

I'm still learning as far as calculations go, particularly calculations within calculations. The other day I wanted to get a list of people from a contacts file that don't have an email address. I could get a list of everybody but I couldn't filter out the ones without email addresses.

 

Would you wrap a FilterValues calculation around the List function or vice versa or do something completely different? I managed to do it by establishing another relationship that did the filtering for me and then used the List function. Nothing wrong with this solution I feel other than having another table occurrence on the relationship graph just to accomplish this one thing.

 

In this instance I would have preferred to have been able to create a calculation field that filters the List function. Could somebody give me an example of a calculation that would work please?

Posted

The easiest thing is to do a basic find for contacts with no email. Show all records, Enter find mode, set field email "=", perform find. Then you can list the id's or whatever else you may want to do with the found set. Or am I missing your question entirely?

Posted

 I managed to do it by establishing another relationship that did the filtering for me and then used the List function.  Nothing wrong with this solution I feel other than having another table occurrence on the relationship graph just to accomplish this one thing.

 

It is better to add another table occurrence to the graph than the overhead of a filtering calculation.  With version 12, you can also use *ExecuteSQL() to pull the proper values but as Brooks indicates, performing a find behind a Freeze Window would leave the smallest footprint overall.

 

Good on you for asking the questions.

 

*ExecuteSQL() is a powerful tool but it too can become slow in large record sets unless the SQL statement is fairly simple.

Posted

The easiest thing is to do a basic find for contacts with no email. Show all records, Enter find mode, set field email "=", perform find. Then you can list the id's or whatever else you may want to do with the found set. Or am I missing your question entirely?

 

Sorry, it's a little more complicated than just a basic find I think. I was looking to pull contacts with no email address into a related memorandums file. As they have no email address they won't receive memos via email and will require the information by another means. It just act as a prompt for me to do this.

Posted

It is better to add another table occurrence to the graph than the overhead of a filtering calculation.  With version 12, you can also use *ExecuteSQL() to pull the proper values but as Brooks indicates, performing a find behind a Freeze Window would leave the smallest footprint overall.

 

Good on you for asking the questions.

 

*ExecuteSQL() is a powerful tool but it too can become slow in large record sets unless the SQL statement is fairly simple.

 

Thanks Laretta, I've no real issue by solving the problem with another table occurrence. I just fancied the idea of doing it by filtering the contents of the List function. A little personal challenge and adding another string to my bow so to speak. The more I use FM the more I realise there are multiple ways of doing things, although I don't suppose it's necessarily a good thing to get all fancy when something simpler and cleaner would suffice.

This topic is 4234 days old. Please don't post here. Open a new topic instead.

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
×
×
  • Create New...

Important Information

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