Components All New MacOS Windows Linux iOS
Examples Mac & Win Server Client Guides Statistic FMM Blog Deprecated Old


Evaluates an expression after a given idle period.

Component Version macOS Windows Linux Server iOS SDK
Schedule 5.2 ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
MBS( "Schedule.EvaluateOnIdle"; DelaySeconds; Expression { ; ScriptFileName; ScriptName } )   More


Parameter Description Example Flags
DelaySeconds The Number of Seconds to wait before running the script. Moving the mouse or using keyboard will reset the counter. 10
Expression The expression to evaluate. "Get(CurrentTimeStamp)"
ScriptFileName The name of the file that contains the script to be run. Get(Filename) Optional
ScriptName The exact name of the script to run. "TestScript" Optional


Returns reference number or error.


Evaluates an expression after a given idle period.
This SQL query is performed in FileMaker whenever no user activity has been for the given amount of time.
If script is called, the user is idle the given time period. Then once user starts working again, the count is reset and next time the user is idle again, the script can be called. So our idle schedules repeat automatically.
Please use Schedule.Release later to remove schedule from list.
Our plugin does not provide persistence. You need to schedule things in your scripts if you need them. When FileMaker quits, the plugin forgets the list of schedules.

With plugin version 6.0 or newer the script name can be a script ID number. In that case the plugin queries the script name for the given script ID. This allows to call scripts by ID and avoid problems if scripts are later renamed.

Notice: FileMaker 19.2 adds a fmplugin extended privileges. If you have such an extended privileges to allow the plugin to trigger scripts, you need to grant permissions for it. If such a privilege is not defined, the plugin is allowed to trigger scripts. See FileMaker product documentation for details.

See also

This function checks for a license.

Created 21st May 2015, last changed 3th April 2021

Schedule.EvaluateAtTimeStamp - Schedule.ExecuteSQLAfterDelay