Topics   All   MacOS (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server   Client   Old   Deprecated   Guides   Examples   Videos
New in version: 9.1   9.2   9.3   9.4   9.5   10.0   10.1   10.2   10.3   10.4    Statistic  


Adds a new path component.

Component Version macOS Windows Server FileMaker Cloud FileMaker iOS SDK
Path 6.0 Yes Yes Yes Yes Yes
MBS( "Path.AddPathComponent"; Path; Component { ; More Components } )   More


Parameter Description Example Flags
Path The native file path. "/Users/cs/Desktop"
Component The new path component. "Hello"
More Components Pass more components, each in its own parameter. Optional


Returns path or error.


Adds a new path component.
The path provided as parameter does not need to end with a slash or backslash.

This function requires a native path. Use Path.FileMakerPathToNativePath to convert a FileMaker path to a native path if required. If you like to have the user choose the path, you can use FileDialog functions.
For Server be aware that server has limited permissions and may not be able to access all files on a computer.


Adds a path component to a path:

MBS( "Path.AddPathComponent"; "/Users/cs/Desktop"; "Hello" )

Adds a file name:

MBS( "Path.AddPathComponent"; "/Users/cs/Desktop/"; "test.txt" )

Adds a file path on Windows:

MBS( "Path.AddPathComponent"; "c:\\Test"; "test.txt" )

Get file name from container and add to folder path:

Set Variable [$name; Value:GetAsText ( Container Batch Export::Test1 )]
Set Variable [$name; Value:GetValue($name; 1)]
Set Variable [$name; Value:MBS( "Path.LastPathComponent"; $name )]
Set Variable [$dpath; Value:MBS( "Path.AddPathComponent"; $FolderPath; $name )]

Create folder on Desktop:

Set Variable [$folder; Value:MBS( "Folders.UserDesktop" )]
If [IsEmpty(Container Export::Name)]
    Set Field [Container Export::Name; "Record " & Get(RecordID)]
End If
Set Variable [$path; Value:MBS( "Path.AddPathComponent"; $folder; Container Export::Name )]
Set Variable [$r; Value:MBS("Files.CreateDirectory"; $path)]

Write container to temp file and launch:

# get temp folder
Set Variable [$TempFolder; Value:MBS( "Folders.SystemTemporary" )]
# and file name from container
Set Variable [$name; Value:MBS( "Path.LastPathComponent"; test::myContainer )]
# add name to folder path
Set Variable [$TempPath; Value:MBS( "Path.AddPathComponent"; $TempFolder; $name )]
# now write temp file
Set Variable [$r; Value:MBS( "Files.WriteFile"; test::myContainer; $TempPath)]
# and launch file
Set Variable [$r; Value:MBS( "Files.LaunchFile"; $TempPath)]

Add multiple path componennts:

MBS( "Path.AddPathComponent"; "/Users/cs/Desktop"; "Hello"; "World"; "test" )

Example result: /Users/cs/Desktop/Hello/World/test

Export a container to desktop:

# get path stored in the container field
Set Variable [ $ContainerPath ; Value: GetAsText ( Contacts::Photo Container ) ]
# get the file name portion
Set Variable [ $ContainerName ; Value: MBS( "Path.LastPathComponent"; $ContainerPath ) ]
# take a folder on the computer, e.g. desktop
Set Variable [ $DesktopFolder ; Value: MBS( "Folders.UserDesktop" ) ]
# build path with file name on that folder
Set Variable [ $FilePath ; Value: MBS( "Path.AddPathComponent"; $DesktopFolder; $ContainerName ) ]
# and export the content of container to that path
Set Variable [ $r ; Value: MBS( "Container.WriteFile"; Contacts::Photo Container; $FilePath ) ]

See also

Example Databases

Blog Entries

FileMaker Magazin

Release notes

Created 30th November 2015, last changed 22nd November 2019

PageSetupDialog.SetScalingFactor   -   Path.FileMakerPathToNativePath

Feedback: Report problem or ask question.

MBS Xojo Plugins