Software Venture Consulting

FileMaker Pro downloads & Resources
FileMaker Custom Functions
FileMaker Web Viewer Examples
FileMaker Pro & Lasso Consulting
FileMaker Books
FileMaker Articles
FileMaker Error Reference

Free Web Tools
Free FileMaker Tools

Personal Pages

Shopping Cart
Shopping Cart


Free Newsletter


Privacy Policy

FileMaker is a registered trademark of FileMaker, Inc. in the U.S. and other countries.


 FileMaker Pro Custom Functions

List  |  Show Random  |  Upload  |  Add This to Your Site

OpenFolder ( path ; name )

Rate this function:  

  Average rating: 3.8  (38 votes)
  Discuss this Custom Function

Matt Petrowsky, ISO Productions, Inc.

A custom function to create and open a folder on the Mac OS X operating system.

Sample Input:
f = folderName;
mypath = "/Volumes" & Substitute ( Get ( FilePath ) ; ["file:" ; ""]; [ Get ( FileName ) & ".fp7" ; ""] )

OpenFolder ( mypath; f )

Sample Output:
do shell script "path="/Volumes/Hard Drive/Users/me/Desktop/New Folder"; if [ ! -d "$path" ];then mkdir "$path"; open "$path"; else open "$path"; fi"

New folder (relative to the FMP file) is created and opened if it does not exist. Otherwise the folder is simply opened.

 Then copy & paste into FileMaker Advanced's Edit Custom Function window.

Click here to copy To Clip Manager if you have myFMbutler's Clip Manager installed



This function can be used to generate the AppleScript code needed to create and open a folder on Mac OS X. Simply supply a proper POSIX path and the name of the folder you want. It may not work with ~ designations so supply a full absolute path.

To use just make a script with Perform AppleScript and point to the calculation.

Note: these functions are not guaranteed or supported by Please contact the individual developer with any questions or problems.

This is my Custom Function and I want to edit it


5 most recent comments | Show all 8 comments

How can this used in a script step?

Lars, Berlin
October 30, 2012 11:05am

This problem seems to remain still:

The following: "\"" in the function produces an error: List usage is not allowed in this calculation.

How can it be avoided?

Johan, Sweden
August 31, 2013 11:17am

Since Filemaker 7 :
Substitute ( cmd ; """ ; "\"" )
does not work.
You have to unescape everything, including the unescape character !
So you would write :
Substitute ( cmd ; "\"" ; "\\\"" )

That should do the trick here ;-)

Charles Houghton-Webb, France
January 07, 2014 9:19am

My above comment is true, but won't work here. The function needs to b re-written.
The quoted forms are unnecessary, and you need single quotes on the path, rather than double ones. This should do the trickā€¦ at least it does for me ;-)

f = name;
mypath = path & name ;
pathVar = "$path" ;
sh = "if [ ! -d " & pathVar & " ];then mkdir " & pathVar & "; open " & pathVar & "; else open " & pathVar & "; fi";
cmd = "path='" & mypath & "'; " & sh; // RAW SHELL SCRIPT CODE
applescript = "do shell script \"" & cmd & "\"" // APPLESCRIPT FORMATTED PATH



Charles Houghton-Webb, France
January 07, 2014 12:26pm

Oooops !! I forgot to delete the
f = name;
line, which serves absolutely no purpose whatever.
You can delete without problem ;-)

Charles Houghton-Webb, France
January 07, 2014 2:15pm

Make a comment about this Custom Function (please try to keep it brief & to the point). Anyone can post:

Your Name:
characters left. If you paste in more than 1500 characters, it will be truncated. Discuss the function - advertisements and other useless posts will be deleted.
Answer 0 + 6 =
Search for Custom Functions:

Custom Functions Widget
Download the Custom Function Dashboard Widget for OS X
Keep all the latest Custom Functions right at your fingertips!

Newest Custom Functions:

1. CompareVersions ( versionA ; versionB )
  (Wed, Jan 17, 1:23pm)
2. WorkingDateList (StartDate;EndDate;HolidayList)
  (Fri, Jan 12, 9:30am)
3. _cf_Returns.Drawdown ( PeriodCount ; IncomingArray ; DrawdownSoFar ; MaxDrawdown ; Type )
  (Wed, Jan 10, 8:08pm)
4. LastMonth_withYear ( Date2Process )
  (Wed, Jan 10, 10:46am)
5. list.ToSqlIn ( theList )
  (Sun, Jan 07, 7:29am)
6. fnValidMBI ( MBI )
  (Sat, Jan 06, 10:29am)
7. mapJoin(pre; sep; post; str; i; values)
  (Fri, Jan 05, 11:48am)
8. CheckDigit_swissUID ( swissUID )
  (Thu, Jan 04, 6:06am)

RSS Feed of Custom Functions