Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×

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

Recommended Posts

Posted

I'm wondering if anyone can point me to a really clever use of the Find. My problem is an 11,000 record database of book titles (plus ISBN, author, various note & keyword fields). I need to be able to create a fast fuzzy search routine that will zero in on a title in many ways. If I give the user a global to insert find criteria, then click a button that activates a find script, I am partway there. What I need is how to make the script do a fast job. I have been thinking of various concatenation and calculation fields to search, but nothing is quite right.

Typically, the user would have someone on the phone rattling off book titles. She needs to be able to keep up with this. We are currently using an old DOS inventory system (ACCPAC) I am trying to replace with FM. ACCPAC does have a remarkable product search algorithm I have been unable to either acquire or reverse engineer. Here's an example. Say you need to find the book title "Gone with the Wind". Entering initials, key words, misspelled words will all find it, as:

G W T W

Gone Wind

Goan wit wend

In addition, it will return a weighted list, with most probable first, then next most, etc. It does this as fast as one can type.

If our customers would be so kind as to give us lists of ISBNs instead of titles, there would be no need for this!

I know this kind of thing has been solved many times, with many kinds of software (I've even been toying with creating the old Soundex algorithm in FM!). I'm hoping that there exists a clever FM solution that is close to what I need & modifiable.

Steve Brown

Posted

This may be what you are looking for. It's currently limited to 50 characters, but easily expanded by adding to the 'split' and 'relevance' fields. This is a tweaked version of a file LaRetta created. As such I never took the time to remove the superfluous components such as the 'Search' button, which is not necessary since the results are displayed via relationship and therefore only require the record to be exited.

Feel free to email me if you have questions about it.

SearchAndGo3.zip

Posted

Well,

The original file, posted by LaRetta, with a CopyAllRecords script (or am I dreaming) could also be useful here.

In order to succeed, you'd need to play on the right side and the left side of these relationships.

The Right Side could be splitted into multi words (or starting characters as your GWTW) and a multi line field, so that you use this field as a match key.

You could do the same on the left key, so that your index field won't be too heavy to store.

The tedious part, from your example could be the misspellings. I played with a file sometimes ago, but it was really difficult to set and wouldn't ensure a 100% result.

"MatchingMispellings"

Happy New Year.

Posted

Many thanks to Queue, Ugo and LaRetta. It looks like a combination of these two attachments may be just what I need. Now I'll be spending the next three months slowly figuring out how they work!

Incidentally, Ugo, I got your example from the attachment link in the 6-30-03 thread you reference. In the text of that thread, in your last post, you say "Done. Attachment updated. You're right. It's kind of more logical this way." But there is no new attachment link in this post. The link exists in the earlier post. You may have made the improvement you mentioned to the attachment that comes down that earlier link, but I need to make sure. The calcs are intimidating enough without trying to figure out a calc that is subtly different than I think it is! The file name is SpellCheckerv4.fp5.

Steve Brown

Posted

Steve,

Her's attached an update of the SpellChecker.

I've just added a few more steps to both the Left and Right keys.

Working with your "Gone With the Wind" gave some good results so far, as

GWTW

Gone wit de wind

Gune wit,..

lead me just to "Gone with the wind"

Still not 100% though

SpellCheckerv4.fp5.zip

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