QuickFind Coolness

You hear the announcement about FileMaker 11 and you make a quick scan of the new features. You decide to investigate them as best you can, (because you have real work that needs to be done) and you tell yourself "I'll look into them later."

Time passes and you've yet to use a few of those new features. This is my story with QuickFind. I've long created my own version of QuickFind with a scripted process which takes input from a global field and executes a search across multiple fields - even creating multi-query searches. No big deal.

In fact, there's still a reason to do that, if you want to build upon a previous search. QuickFind does not store the last find such that Modify Last Find script step will pull up the criteria.

However, recently, I hacked up a quick file and needed to do some quick and dirty searching. It turns out that doing so is a dream with QuickFind. You don't even need the actual fields on a layout. You can use text labels, which hide themselves with conditional formatting, in order to supply QuickFind with the proper search fields. Turn the fields you don't want off with a checkbox (FileMaker sillily assumes you want to search all fields known to your database).

Throw a global text field on your layout, add a constrain here, an extend there and adding the feature to any FileMaker 11+ database is a no brainer. Just do it, it's way too easy. If you need more of the details then watching this video will certainly help you out!

AttachmentSize
QuickFindCoolness.zip268.93 KB

Comments

Hi Matt,

You said there's no way to program a constrain. Try this script:

Enter Find Mode [] //no request specified
Set Field [Interface » People::state; Interface » People::%statePopup]
Constrain Found Set [] //no requests specified

I found a version of the script while developing a sample file to constrain a list of records by data chosen by the user from multiple fields using only generic buttons without specify any of the field names in scripts or buttons. The exercise was to create a generic filter tool that could be added to any list view without any specific field references. It does require one calc field to be added to the table (there may be better ways, but I didn't persue it once my sample worked).

Mike
mike@msquaredproductivitysolutions.com

Matt

In your video you claimed that there are no micro-time (sub-one second) in Filemaker. This is certainly true for the Pause/Resume script step and the Get ( CurrentTimeStamp) script - but not so for the Install OnTimer Script.

Here I've happily be using 10th or even 100th second intervals to count sub-second activity. To test it simply write a script to increment a $$GLOBAL and then watch that $$GLOBAL in your data viewer.

This is great as it has allowed me to produce a far better Double Click script for mouse click and it would allow you to tune your interface for searching.

Jim
jim@pitchford.org.uk

Hi Matt,

For constraining a found set using a calculation or field. You could set a variable of $_search set to the calculation field or field in your script. Then put the $_search variable as the search parameter attached to what ever field in the constrain script step.

The variable $_search will take on what ever the calculation or field content is and then process the search.

Is has worked for me on a few solutions.

Cheers,
Errol

Hi Matt,

I noticed that the search behaves differently from the actual quick find in the menu bar. If you type in a string that is not a match for anything, all records show up, instead of none. Also, if you begin to narrow down your search and then type something that should return no results, the last relevant result appears. I'm puzzled why this is happening. Any suggestions?

Thanks,
Eugene

Hi Matt,
Since this post is quite old and you mentioned the frustration of the constraining the found set and how time consuming the set up is I am wondering if with the new versions of FM16 (I have) if there is a better way to approach this solution? I am using a global field to find the company and the second field to drill down to the products I am searching. Thank you for the advice.

Bookalaka

Hi Matt,
Since this post is quite old and you mentioned the frustration of the constraining the found set and how time consuming the set up is I am wondering if with the new versions of FM16 (I have) if there is a better way to approach this solution? I am using a global field to find the company and the second field to drill down to the products I am searching. Thank you for the advice.

Bookalaka