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 4823 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

I have file because I want to understand theory when I see 'not IsEmpty(FilterValues( stuff ;;; stuff ))' ...

I did not get it and I still don't. I thought I did but I don't. Please in file. A vl list and a field with a value. two calculations same but reversed. How can they both give me the same results? one should filter the other. Can someone please explain this strangeness? It must be too simple that I am trying to look higher up for it.

Theory_filterLists.zip

Posted

What I mean is that we are filtering one side from the other. It is like saying that 3 less 1 is same as 1 less 3 and it is not. How can filtering 1 line by 3 be same as filtering 3 lines by 1. See my confusion?

Posted

Oh very good. It is easier to understand this way and I see that I went off in wrong directions and confused myself as I was trying to reverse it to get the opposite results by using 'not'. If the field contains j and c, I want a 1 because either line doesn't match the vl, if the field has one line or 10. Right now, if c matches, it breaks and I get a 0.

I guess this was the wrong calc here. I was hoping to avoid Position(( or PatternCount() because it will require coding so many lines. But I had read, most probably by you, about using not IsEmpty(FilterValue( in things like this and I was hoping it might work here. Thank you for any ideas.

Posted

Hi Comment,

"Here" is a need to find records with an invalid entry, all records in Ratios table Division field that has any data on any line which is not also in the "Divisions" value list. I have a field that someone, okay me, had accidentally put the wrong popup on the wrong field. That is why I need to figure it out.

So if any line is invalid give 1 and only if all lines in the Division field are true entries for Divisions give 0. Right now, it produces 0 because c is also in the field and it is valid. I need to find all records with any invalids. I will be happy to search for 0 or 1 whichever will help me find the mistakes. I also just want to know to know. :)

I think we have to go to someone like another calc by you with carriage returns on each end. I doubt that multiples can check against multiples except in custom function or something. I need 'is not contained within'.

Posted

Say you have a list of selected values "myList" and a list of allowed values "allowedValues".

FilterValues ( myList ; allowedValues )


 

will return only the allowed values from myList. If there are any other values in myList, then =

 


ValueCount ( myList ) > ValueCount ( FilterValues ( myList ; allowedValues ) ) 

will return 1 (True).

Posted

That makes perfect sense. So if I really do understand, I can use your second calc to find records which have invalid lines (search for 1 in that calc field) and then I can use your first calc to remove those bad lines. I know I should just try it and not ask but this is exciting to understand. So it might be like this

Set Field[ Ratios::Divisions ; FilterValues ( Ratios::Divisions ; ValueListItems( Delco.fp7; "Divisions") )

okay, free-typed but is that the idea had to set the field once I find the records? I just want to remove the invalids through all records. I am sure glad you are here!

Char()

Well do not waste your time responding. I know it will work if I put it in right. If I get stuck, I will come back.

This topic is 4823 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.