adyf Posted June 15, 2013 Posted June 15, 2013 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?
Brooks Posted June 16, 2013 Posted June 16, 2013 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?
LaRetta Posted June 17, 2013 Posted June 17, 2013 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.
adyf Posted June 17, 2013 Author Posted June 17, 2013 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.
adyf Posted June 17, 2013 Author Posted June 17, 2013 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.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now