Perform Script on Server (PSOS)

Why Would I Want to Use PSOS?

The "Perform Script on Server" script step was introduced in FileMaker 13. PSOS lets a client of a hosted file run a sub script on the server. So with some careful planning, you can have the server do a lot of the heavy lifting the client machine would normally have to do (finding, sorting, processing, other data manipulation, etc.). More interestingly, you can also avoid moving large amounts of data over the network, which is what normally happens when the client machine runs a Perform Find or an SQL query on a hosted file.

Using PSOS can result in dramatic performance improvements in these types of operations when working over a WAN (i.e. opening your file from outside your local network).

You'll likely not see any improvement on a LAN (when you're ON the local network).

Note: This may be obvious, but PSOS will only work when your file is hosted in FileMaker Server 13+.

Why wouldn't everyone want PSOS on?

The speed improvements in PSOS are most dramatic when you're far away from your FileMaker Server (when there is a lot of latency in your connection to the server). But it does come with a trade off: scripts run with PSOS don't cache their results the way scripts running locally would. So if your server is close enough, you may not want PSOS running because you'd rather have the caching.

Here is an exaggerated example:

Without PSOS opening your calendar from another country takes 9 minutes to move from month to month. But once you've been to a given month, going back to that month takes only a couple seconds.
With PSOS on, it only takes 5 seconds to go from month to month... but it always takes 5 seconds. Going back to a previously visited month is no faster than going to a new month.

Thus, PSOS is a "switch" in DayBack. You can turn this on by default by editing the comment for PSOS in the script ""Load Calendar Settings - On Startup --- Edit Configuration Here ---".


If you've linked or embedded the calendar into your file check that your file's start up script bails out when run on FileMaker Server. Each PSOS script initiated runs the start up script in any required files and that can really slow things down. Feel free to use the same routine used as the first lines of DayBack's "Upon Opening" script:

If [PatternCount ( Get ( HostApplicationVersion ) ; "Server" )]
Exit Script []
End If

FileMaker Cloud

DayBack has a script that runs before enabling PSOS which verifies you are running FileMaker Server. In older versions of DayBack, the method we used to check for this did not return True when using FileMaker Cloud. If PSOS is not enabling and your server is on FileMaker Cloud, either update to the latest DayBack, or apply the specific change as described in this support article.

[email protected]
Follow us: