Jump to content

Trapping a user-cancelled find


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

Recommended Posts

I have a script which performs a rather lengthy find; I'd like the user to be able to cancel out of the find while it's running. Unfortunately, it seems that if the user cancels the find, the script gets halted as well. (It's a halt, not just an exit script -- I've tested running it as a subscript, and both scripts get halted.) The test script I'm using:

Set Field ["g:Current Error", "TextToNum("")"]

Set Error Capture [On]

Allow User Abort [On]

Perform Find [Restore, Replace Found Set]

Set Field ["g:Current Error", "Status(CurrentError)"]

Allow User Abort [Off]

Set Error Capture [Off]

Show Message ["Still running"]

If ["g:Current Error = 0"]

  <continue with the report here>

Else

  If ["g:Current Error = 1"]

    <user cancelled; do some cleanup tasks here>

  Else

    <oops, there was an error running the find>

  End If

End If

(g:Current Error is a Global Number.)

While the find is running, FileMaker pops up a dialog showing which field is currently being searched. Hitting the cancel button in this dialog halts the script as well as cancelling the find.

Interestingly, if I use a Sort step instead of the Perform Find step, I can hit the cancel button on the dialog and control returns to the script as I'd expect.

Any thoughts?

Link to comment
Share on other sites

This topic is 6582 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
 Share

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.