- ~ Tilde is the reserved character to indicate the private nature of an element such as ~privateLetVariable or ~PrivateCustomFunction, $~privateScriptVariable or $$~PRIVATE.GLOBAL.VARIABLE.
- ! Exclamation mark is a reserved symbol to indicate the non-relevance of something within code. Just as in many languages where it is used to negate or present the opposite of an operator (such as != meaning 'not equals' within PHP where <> or ≠ is not equals within FileMaker) it is most often used with variable declaration which uses the Evaluate() function.
Reserved variable names
- $checkScriptName $$ERROR or $error is a reserved variable for Script parameter custom functions$$TEMP the storage of an error result. The most common is FileMaker's own Get ( LastError ). This variable will almost always be a numerical value in order to follow the conventions outline by FileMaker's own error handling. It is, however, not limited to FileMaker's Get ( LastError ). When augmented by a complimentary variable such as $errorType, the contents of $error may not contain a FileMaker specific error code.
- $$TEMP or $temp is a reserved name for a temporary global variable. Never This variable is NEVER used to store persistent data across multiple scripts and it can be assumed that it can be overwritten at any time.
- $~this is a reserved prefix for internal use within custom functions. In order to avoid overwriting any script variables you should prefix variable declarations with this value. For example $~thisCounter would be used as a recursive counter within a Custom Function. To further prevent any name collision, using the name of the function itself is preferred. Such as $~thisLeftCharsCounter where the $~this is the prefix, LeftChars is the name of the Custom Function and Counter is the descriptor.
- $checkScriptName is a reserved variable for Script parameter custom functions (deprecated)
Reserved custom function names
- Null is a reserved custom function used by these standards.
- UniqueID is a reserved custom function name. More info about UUID in Best Practices.
- # (hash or pound) is reserved for Name/Value pair functions (primarily for script parameters)
- Triggers is the prefix for the class of custom functions which deal with script triggers.