Scipting - A Way to Know the Find of the Current Found Set?

If there a way from an If to test and see if the current found set is what you need it to be (or was)?  Lets say I have 2 types of records in a database; the RecType field is either 'IND' or 'ORG'.  I need the If to detect whether or not the current found set is the result of a specific find (RecType = 'IND').  I should probably mention that I am trying to duplicate something that is working in CDML.  In other words something like...

If Status(CurrentFilteredStatus) = True
   If Status(Current-FindValueItem) = "IND" And Status(Current-FindOpItem) = "="
      ' do nothing
   Else
      ' re-apply filter
   End If
End If
jfarranceAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Mariano_PetersonCommented:
This is much more tedious/difficult to accomplish in a client/server environment than it is using web scripting.  There is no direct way to do this in a client/server environment, you'll have to create a work around.  Basically, you have to create a script that sets a flag when you perform a search, and then you'll have to implement very strict control of the UI so that you can capture any events that effect the found set, and clear the flag when those events occurr.  (Clear the flag if a record is added, omitted, or 'go to related records' is run -- you'll have to be particularly careful if you allow control to leave the current file and go to another file.  Then, you have to check what type of record manipulations the other file performs on the main file as well).

Alternatively, you could also flag all the records in the found set, and record the size of the found set.  Then, when you need to determine if the set has changed, you could check if the current found count is still equal to the recorded found set count.  If the number of records are still the same, THEN you would loop through all the records, checking if each record in the current found count is flagged during the previous find.  THEN, if each record in the found set is flagged, you know the record set is still the same, otherwise, you have to re-apply the filter.  Be careful when flagging in multi-user situations.  You can run into record-locking problems and also you need to flag the records for each user, without affecting the flagged result from finds performed by other user's on the same network.

Sorry I don't have better news for you.  Good luck.

-Mariano
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
lesouefCommented:
I would do a script to do the find and disable the regular find.
That script would ask the find conditions and store the requested rectype in a global field. If you disable script abortion, then the found set has a known rectype for sure, unless the result is no record (can be detected with error 401).
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
FileMaker Pro

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.