Repository navigation
Functions & Script Steps
For bBox Version 1.06
bBox_Applescript (mode; script {; handler; param1; param2} )
bBox_Bash ( mode; text {; param1; …; param5} )
bBox_Curl ( param1 {; param2; …; param5} )
bBox_DoScript (filename; scriptname ( {parameter} )
bBox_DuckDBClose ( reference )
bBox_DuckDBExec ( reference; statement; {parameters…} )
bBox_DuckDBOpen ( path; {; options} )
bBox_EvaluateList (values; expression {; delimiter} )
bBox_ExecuteSQL (filename; sqlQuery {; columnSeparator; rowSeparator; arguments…} )
bBox_FileRead ( path; type {; offset; filename} )
bBox_FileStatus (path {; parameter} )
bBox_FileSymLink (sourcePath; destinationPath {; useHardLink} )
bBox_FileWrite (data; path {; append} )
bBox_GetCharacterStyle ( text; position )
bBox_GraphicsMagick ( mode; param1; param2 {; param3; …} )
bBox_Grep ( mode; text; param1 {; param2; param3}; )
bBox_HTTP_POST ( base; path; credentials; data )
bBox_JavaScript ( expression {; delimiter; …}; )
bBox_JavaScriptNode ( mode; text; script {; param1; …}; )
bBox_JQ ( mode; text; param1 {; …} )
bBox_MacCalendar( operation {; parameter1; parameter2} )
bBox_MacNotification ( queue; delay; titleList; {; buttonList; scriptSpecifier} )
bBox_MacNotificationsGetSettings
bBox_ParsePositionList ( reference )
bBox_PasteboardFlavors ( {item} )
bBox_PasteboardGet ( mode; item; flavor )
bBox_PasteboardSet ( mode; flavor )
bBox_PerformKeystrokes ( text {; …} )
bBox_Python3Run( mode; script {; text; param1; ...} )
bBox_PythonCompile ( mode; script )
bBox_PythonEval( reference; expression )
bBox_PythonSetVar ( name; value {; type} )
bBox_ReferenceInfo ( reference )
bBox_Ruby ( mode; text; param1 {; param2; …; param5} )
bBox Schema Notifications [ type; pathOrURL; Script Name; Credentials ]
bBox_Scp( param1; param2 {; ...} )
bBox_SetEnvironmentVariable ( name; value )
bBox_Sips (mode; param1{; param2; …} )
bBox_Sort (mode; input, param1 {; param2; param3} )
bBox_SplitText ( text; position; length; skipRepeats; seperator1; seperator2; delimitor )
bBox Syslog ( path; {; options} )
bBox_URLHandlerInfo ( scheme )
bBox_Version ( { versionFormat } )
bBox_WebViewEstimatedProgress ( window; webviewer )
bBox_WebViewEvaluateJavaScript ( window; webviewer; script {; handlerFileName; handlerScriptName} )
bBox_WebViewIsLoading ( window; webviewer )
bBox_WebViewLoadFile ( window; webviewer; path )
bBox_WebViewLoadHTML ( window; webviewer; HTML {; baseurl} )
bBox_WebViewTitle ( window; webviewer )
bBox_XPathEvaluate ( expression {; delimiter} )
bBox_XPathInitializeFromText ( mode; text {; options; namespaceValues} )
These work much like their function based counterparts, and often call the exact same code internally. However, some simplification may be required for them to work as script steps, so for more complex scenarios also check for an equivalent function.
For much of this documentation, information on functions and script steps will be interchangeable.
- bBox Applescript
- bBox Bash
- bBox Curl (version 0.98+)
- bBox DuckDB Run
- bBox Perform Script
- bBox Execute SQL
- bBox File Read
- bBox File Status
- bBox File Symlink
- bBox File Write
- bBox Get Character Style
- bBox GraphicsMagick
- bBox Grep
- bBox File Symlink
- bBox File Write
- bBox JavaScript
- bBox JQ
- bBox Mac Notification
- bBox Pasteboard Flavors
- bBox Pasteboard Get
- bBox Pasteboard Set
- bBox Perform Keystroke
- bBox Perform Script
- bBox Python3 Run
- bBox Schema Notifications
- bBox Sips
- bBox Select Menu Item
- bBox Syslog
- bBox Syslog Close
- bBox Syslog Open
- bBox Text Window Action
- bBox Text Window Open
- bBox Version
- bBox WebView Evaluate JS
- bBox WebView Load HTML
- bBox Zsh
Extensions added to DuckDB to make queries to FileMaker.
Functions provided by the fm class to call FileMaker from JavaScript.
Functions provided by the fm class to call FileMaker from Python
Although many functions are compatible when run server-side, there are certain limitations to be aware of.
First, any functions interacting with windows or applications are problematic. Even if a user was logged in on the server, that session is largely inaccessible to any scripts running via FMS . This, for instance, rules out quite a bit of AppleScript functionality, since you have no way of launching an application or communicating with one that has already started.
Additionally, the FMS script engine is more conservative about its environment, and it is possible to hit limits imposed by this. For instance, the sample file includes a Python based prime number generator that uses the itertools module. For each iteration created, some data is pushed onto the stack for the process. If the upper range in the example is raised above 55,000 you are likely to hit a limit on the stack size, causing the FMS script engine to crash.
Another limitation to watch for is how much data can be used in your PSoS parameters returned as a result. FileMaker 14 limits this to 1,000,000 characters. Attempts to return more then this will cause the client to hang.
For some functions (Shell, Bash, Python, Ruby), functions will not work as expected if used in a stored calculation field. Use unstored calculations instead.
© 2026 Beezwax Datatools, Inc. All rights reserved.