Brian Dunning's FileMaker Custom Functions

FormatAsFileName ( text ; extension ; lengthLimit )

Simplifies concatenation of a data into a suitable length OS filename.

  Average rating: 4.4 (30 votes) Log in to vote

Jonathan Mickelson   Jonathan Mickelson - Show more from this author

Share on Facebook Share on Twitter

  Sample input:
FormatAsFileName ( "Usr_" & Last_Name_Field ; "mpg" ; 15 )
  Sample output:

  Function definition: (Copy & paste into FileMaker's Edit Custom Function window)


This function simplifies the formatting of the value of text into a standard format for use as a filename by an operating system. Its parameters also include the ability to define a filename extension and a character limit for the concatenation. All parameters but text may be null ("").

NOTE: The truncation character may be changed or made null ("") in the variable definitions within the function source.

text - any text expression or text field

extension - any text expression or text field representing an optional file extension. The extension parameter does not require a period (.) to be supplied and automatically adds one to the beginning of the extension, if an extension is supplied and the leftmost character is not already a period (.)

lengthLimit - any numeric expression, or field containing a number, which represents the maximum number of characters the resulting filename may contain, including any defined the extension parameter. For any positive numeric value, the function truncates any necessary characters from the right of the text parameter, adding a special truncation character (~ by default) before any defined extension. A zero or null ("") value will bypass this feature.



Log in to post comments.


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

Support this website.

This library has been a free commmunity resource for FileMaker users and developers for 15 years. It receives no funding and has no advertisements. If it has helped you out, I'd really appreciate it if you could contribute whatever you think it's worth: