Here is an assortment of minor FileMaker tips which can help you improve your performance:
Avoid Perform Find on Un-stored calculation fields.
Always use Freeze Window step if you are switching layouts in a script to do some operations internally.
Always use Blank Layouts (in Form View mode) when you have to do an add/update/import actions on a table internally within a script.
Try to minimize displaying Container fields on a layout used as an UI.
Minimal number of Stored Calculation fields should be there in a table. – There are some calculation fields which are unnecessarily defined in database tables. Let’s find some time to clean up those fields.
Minimal number of Auto-Enter Calculation fields in a table.
Indexing should be done on the Fields used in relationships and the fields on which a find is performed.
Fetching from relationships which is defined on an unstored calculation fields will result a poor performance.
Try to update less number of Global Fields in your scripts. If possible use Global Variables in place of Global Fields because Setting/Updating a Variable is much faster that Setting/Updating a Global Field.
Avoid using Refresh Window step in the scripts. Specifically don’t use it when you are on a layout showing a portal or you are on a list view mode.
You can use an additional field mapping as Cross Join (x) in the relationship to refresh that particular relationship instead of refreshing all other relationships used in the context.- We can try to remove the Refresh Window steps from the scripts and use the cross join concept to refresh a relational field value.
Minimize the number of unstored calculation fields on your UI. Specifically the unstored field dealing with a large set of relational data.
Remove unnecessary “Commit Record” steps from the script.
Avoid using New Window step. It takes time when operating on a remote file hosted at server.