Formula
Elements of a Formula
A formula can contain references to the values of source fields, operators, functions, literal values, or other formulas. Use any or all of these elements to build a formula.
| Apex Class | Custom Apex classes implementing the pushtopics.TargetValueMapper interface for advanced transformations. Reference the class using the format {!apexClassName}. |
| Field Reference | A reference to another field's value using merge fields. Use field_name for standard fields, field_name__c for custom fields, or object_name__r.field_name for related objects. Field references are case-sensitive. |
| Function | Predefined operations that accept input and return a result. For example, TODAY() returns the current date without needing input, whereas TEXT(value) converts numbers, percents, or currency into text. |
| Global Variable | Built-in variables available for field mappings, such as $User.Id, $User.UserName, $User.Email, and $User.ProfileId. |
| Literal Value | A fixed text or numeric value you enter directly into a formula. For example, the formula ROUND((Amount * 0.02), 2) includes a literal numeric value of 0.02. |
| Operator | Symbols indicating calculation type or evaluation order, such as + for addition or parentheses ( ) to prioritize expressions. |
Text Functions
| CASE | Returns the corresponding return_value for the first compare_value equal to the provided value. If no values match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| CHAR | Returns the character corresponding to the specified ASCII code. |
| CONTAINS | Returns TRUE if the provided string contains any of the specified compare_strings. The comparison is case-sensitive. Otherwise, returns FALSE. |
| CONTAINS_IGNORE_CASE | Returns TRUE if the provided string contains any of the specified compare_strings, ignoring case differences. Otherwise, returns FALSE. |
| ENDS_WITH | Returns TRUE if the provided string ends with any of the specified compare_strings. The comparison is case-sensitive. Otherwise, returns FALSE. |
| ENDS_WITH_IGNORE_CASE | Returns TRUE if the provided string ends with any of the specified compare_strings. The comparison is case-insensitive. Otherwise, returns FALSE. |
| ESCAPE_HTML4 | Returns a string with characters escaped according to HTML 4 standards. Converts special HTML characters into their corresponding HTML entities to safely display as literal text in web pages. |
| ESCAPE_XML | Returns a string with special XML characters replaced by their corresponding XML entities. Useful for safely including strings within XML documents. |
| FORMAT_DATETIME | Formats a Date or Datetime as a string. |
| FORMAT_JSON_TEMPLATE | Parses and formats a JSON template string by resolving embedded expressions and merge fields into JSON-formatted output. |
| FORMAT_STRING_TEMPLATE | Parses and formats a template string by resolving embedded expressions and merge fields into standard string output. |
| INDEX_OF | Returns the zero-based index of the first occurrence of substring within string (case-sensitive). Optionally starts searching from index_optional. Returns -1 if not found. |
| INDEX_OF_IGNORE_CASE | Returns the zero-based index of the first occurrence of substring within string(case-insensitive). Optionally starts searching from index_optional. Returns -1 if not found. |
| IS_ALL_LOWER_CASE | Returns TRUE if the string contains only lowercase alphabetical characters; otherwise, returns FALSE. |
| IS_ALL_UPPER_CASE | Returns TRUE if the string contains only uppercase alphabetical characters; otherwise, returns FALSE. |
| IS_ALPHA | Returns TRUE if the string contains only alphabetic characters; otherwise, returns FALSE. |
| IS_ALPHA_SPACE | Returns TRUE if the string contains only alphabetic characters or spaces; otherwise, returns FALSE. |
| IS_ALPHANUMERIC | Returns TRUE if the string contains only alphabetic characters or numeric digits; otherwise, returns FALSE. |
| IS_ALPHANUMERIC_SPACE | Returns TRUE if the string contains only alphabetic characters, numeric digits, or spaces; otherwise, returns FALSE. |
| IS_PHONE_NUMBER | Returns TRUE if the provided string matches a valid phone number format; otherwise, returns FALSE. |
| LAST_INDEX_OF | Returns the starting position (zero-based index) of the last occurrence of substring within string. The search is case-sensitive. If end_position_optional is provided, the search considers characters from the start of the string up to the specified end position. Returns -1 if the substring is not found. |
| LAST_INDEX_OF_IGNORE_CASE | Returns the starting position (zero-based index) of the last occurrence of substring within string, ignoring case differences. If end_position_optional is provided, the search considers characters from the start of the string up to the specified end position. Returns -1 if the substring is not found. |
| LEFT | Returns a substring containing the specified number of characters from the beginning (left side) of the provided string. If num_chars exceeds the string length, the entire string is returned. |
| LEN | Returns the number of characters in the provided string. |
| MAP_VALUE_CONTAINS | Returns the corresponding return_value for the first compare_substring found within the provided string (case-sensitive). If no substrings match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| MAP_VALUE_CONTAINS_IGNORE_CASE | Returns the corresponding return value for the first compare substring found within the provided string, performing case-insensitive matching. If no substrings match, returns default return value optional. If default return value optional is omitted and no match occurs, the function returns $SKIP_ASSIGNMENT. |
| MAP_VALUE_STARTS_WITH | Returns the corresponding return_value for the first compare_substring that matches the beginning of the provided string (case-sensitive). If no substrings match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| MAP_VALUE_STARTS_WITH_IGNORE_CASE | Returns the corresponding return_value for the first compare_substring that matches the beginning of the provided string, performing case-insensitive matching. If no substrings match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| MATCHES | Returns TRUE if the provided string matches any of the specified regular expressions; otherwise, returns FALSE. |
| REPLACE | Returns a new string by replacing all case-sensitive occurrences of a target substring in the original string with a specified replacement. |
| REPLACE_ALL | Returns a new string in which all occurrences matching the provided regular expression (regex) within the original string are replaced by the specified replacement substring. |
| REPLACE_FIRST | Returns a new string in which only the first occurrence matching the provided regular expression (regex) within the original string is replaced by the specified replacement substring. |
| RIGHT | Returns a substring containing the specified number of characters from the end (right side) of the provided string. |
| SKIP_BLANK_VALUE | Returns the provided value if it is not blank. If the value is blank (null, empty, or whitespace), returns $SKIP_ASSIGNMENT. |
| SPLIT | Returns an array of substrings by splitting a string using a regular expression delimiter. |
| STARTS_WITH | Returns TRUE if the provided string starts with any of the specified compare_strings (case-sensitive); otherwise, returns FALSE. |
| STARTS_WITH_IGNORE_CASE | Returns TRUE if the provided string starts with any of the specified compare_strings(case-insensitive); otherwise, returns FALSE. |
| STRING_APPEND | Appends an item to an existing string, with the separator placed between them. |
| STRING_APPEND_UNIQUE | Appends an item to an existing string using the specified separator unless the item already exists. |
| STRING_JOIN | Returns a single concatenated string formed by joining multiple provided objects using the specified separator string. Each object is converted to its string representation before concatenation. |
| SUBSTRING | Returns a substring extracted from the provided string, beginning at the start_index (inclusive) and ending at the end_index (exclusive). Indexing is zero-based. |
| SUBSTRING_AFTER | Returns the substring that occurs after the first occurrence of the specified separator within the provided string. If the separator is not found, returns an empty string. The search is case-sensitive. |
| SUBSTRING_AFTER_LAST | Returns the substring that occurs after the last occurrence of the specified separator within the provided string. If the separator is not found, returns an empty string. The search is case-sensitive. |
| SUBSTRING_BEFORE | Returns the substring that occurs before the first occurrence of the specified separator within the provided string. If the separator is not found, returns an empty string. The search is case-sensitive. |
| SUBSTRING_BEFORE_LAST | Returns the substring that occurs before the last occurrence of the specified separator within the provided string. If the separator is not found, returns an empty string. The search is case-sensitive. |
| SUBSTRING_BETWEEN | Returns the substring found between the first occurrences of the specified open and close substrings within the provided string. If either the open or close substring isn't found, returns an empty string. The search is case-sensitive. |
| TO_BLOB | Converts a string (String) into an Apex Blob type. If the input cannot be converted, the function throws an error. |
| TO_BOOLEAN | Converts a string into a Boolean value. If the input cannot be converted, the function returns an error. |
| TO_DATE | Converts a String or Datetime value into a Date by extracting the calendar date from the input. If the input cannot be parsed, an error is thrown. |
| TO_DATETIME | Converts a string in a recognized date/time format into a Datetime value. The result is returned in GMT. If the input string cannot be parsed, an error is thrown. |
| TO_DECIMAL | Converts the input value to a Decimal. If the input cannot be converted, the function throws an error. |
| TO_INTEGER | Converts a value to an Integer. If the input cannot be converted, the function throws an error. |
| TO_LOWER_CASE | Converts all letters in the specified text to lowercase. |
| TO_STRING | Converts the specified value into an unformatted text string. |
| TO_UPPER_CASE | Converts all letters in the specified text to uppercase. |
| TRIM | Returns a string with leading and trailing whitespace removed. |
Logical Functions
| AND | Returns TRUE if all provided conditions are TRUE; otherwise, returns FALSE. |
| BLANK_VALUE | If the value is blank, evaluates the substitute values in order and returns the first non-blank value; otherwise, returns the original value. A value is considered blank if it is NULL, empty, contains only whitespace, or evaluates to $SKIP_ASSIGNMENT. |
| CASE | Returns the corresponding return_value for the first compare_value equal to the provided value. If no values match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| CONTAINS | Returns TRUE if the provided string contains any of the specified compare_strings. The comparison is case-sensitive. Otherwise, returns FALSE. |
| CONTAINS_IGNORE_CASE | Returns TRUE if the provided string contains any of the specified compare_strings, ignoring case differences. Otherwise, returns FALSE. |
| ENDS_WITH | Returns TRUE if the provided string ends with any of the specified compare_strings. The comparison is case-sensitive. Otherwise, returns FALSE. |
| ENDS_WITH_IGNORE_CASE | Returns TRUE if the provided string ends with any of the specified compare_strings. The comparison is case-insensitive. Otherwise, returns FALSE. |
| EQUALS | Returns TRUE if the value matches any of the given compare_values (case-sensitive); otherwise, returns FALSE. |
| EQUALS_IGNORE_CASE | Returns TRUE if the value matches any of the given compare_values (case-insensitive); otherwise, returns FALSE. |
| ERROR | Throws an exception with a custom message, optionally based on a specified condition. If a condition is provided, an exception is thrown only if the condition evaluates to TRUE. |
| ERROR_VALUE | Returns the substitute value if evaluating the value results in an error; otherwise, returns the original value. |
| HAS_DUPLICATES | Returns TRUE if the current source record has duplicate records identified by Matching Rules configured in Salesforce Duplicate Management. |
| HAS_PERMISSION | Returns TRUE if the context user has any of the specified custom permissions. Otherwise, returns FALSE. |
| IF | Evaluates a logical condition. If TRUE, returns value_if_true. If FALSE, returns value_if_false_optional (if provided); otherwise returns $SKIP_ASSIGNMENT. |
| IS_ALL_LOWER_CASE | Returns TRUE if the string contains only lowercase alphabetical characters; otherwise, returns FALSE. |
| IS_ALL_UPPER_CASE | Returns TRUE if the string contains only uppercase alphabetical characters; otherwise, returns FALSE. |
| IS_ALPHA | Returns TRUE if the string contains only alphabetic characters; otherwise, returns FALSE. |
| IS_ALPHA_SPACE | Returns TRUE if the string contains only alphabetic characters or spaces; otherwise, returns FALSE. |
| IS_ALPHANUMERIC | Returns TRUE if the string contains only alphabetic characters or numeric digits; otherwise, returns FALSE. |
| IS_ALPHANUMERIC_SPACE | Returns TRUE if the string contains only alphabetic characters, numeric digits, or spaces; otherwise, returns FALSE. |
| IS_BLANK | Returns TRUE if the value is NULL, empty, contains only whitespace, or evaluates to $SKIP_ASSIGNMENT; otherwise, returns FALSE. |
| IS_CURRENT_USER_IN_OWNER_QUEUE | Returns TRUE if the current context user is a member of the record owner's queue. Otherwise, returns FALSE. |
| IS_DECIMAL | Returns TRUE if the string represents a valid decimal number; otherwise, returns FALSE. |
| IS_EMAIL_ADDRESS | Returns TRUE if the string is formatted as a valid email address; otherwise, returns FALSE. |
| IS_FIRST_IN_ITERATION | Returns TRUE the first time a given combination of evaluated expression values occurs in the current iteration, and FALSE for any duplicates after. |
| IS_INSERT | Returns TRUE if the current action is an Insert, otherwise, returns FALSE. In an Upsert process where Use Salesforce Upsert API is unchecked, DSP performs matching based on the Target Matching Field and separates records into Insert and Update actions. Use this function to apply different transformations depending on whether a record is being inserted or updated. |
| IS_NUMERIC | Returns TRUE if the provided string contains only Unicode digits; otherwise, returns FALSE. |
| IS_PHONE_NUMBER | Returns TRUE if the provided string matches a valid phone number format; otherwise, returns FALSE. |
| IS_PRODUCTION | Returns TRUE if the current execution is running in a Production environment, otherwise, returns FALSE. |
| IS_TARGET_FIELD_ASSIGNED | Returns TRUE if the mapped target field has been processed and assigned a value. Returns FALSE if the field was skipped ($SKIP_ASSIGNMENT) or has not been processed. |
| IS_UPDATE | Returns TRUE if the current action is an Update, otherwise, returns FALSE. In an Upsert process where Use Salesforce Upsert API is unchecked, DSP performs matching based on the Target Matching Field and separates records into Insert and Update actions. Use this function to apply different transformations depending on whether a record is being inserted or updated. |
| MAP_VALUE_CONTAINS | Returns the corresponding return_value for the first compare_substring found within the provided string (case-sensitive). If no substrings match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| MAP_VALUE_CONTAINS_IGNORE_CASE | Returns the corresponding return value for the first compare substring found within the provided string, performing case-insensitive matching. If no substrings match, returns default return value optional. If default return value optional is omitted and no match occurs, the function returns $SKIP_ASSIGNMENT. |
| MAP_VALUE_STARTS_WITH | Returns the corresponding return_value for the first compare_substring that matches the beginning of the provided string (case-sensitive). If no substrings match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| MAP_VALUE_STARTS_WITH_IGNORE_CASE | Returns the corresponding return_value for the first compare_substring that matches the beginning of the provided string, performing case-insensitive matching. If no substrings match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| MATCHES | Returns TRUE if the provided string matches any of the specified regular expressions; otherwise, returns FALSE. |
| NOT | Returns TRUE if the provided logical value evaluates to FALSE; otherwise, returns FALSE. |
| OR | Returns TRUE if any provided logical condition evaluates to TRUE; otherwise, returns FALSE. |
| SKIP_BLANK_VALUE | Returns the provided value if it is not blank. If the value is blank (null, empty, or whitespace), returns $SKIP_ASSIGNMENT. |
| STARTS_WITH | Returns TRUE if the provided string starts with any of the specified compare_strings (case-sensitive); otherwise, returns FALSE. |
| STARTS_WITH_IGNORE_CASE | Returns TRUE if the provided string starts with any of the specified compare_strings(case-insensitive); otherwise, returns FALSE. |
| TRIGGER_FLIPPER | This function is used within a before insert or before update trigger to track whether a specific checkbox field (defaulting to Immediately after tracking the flip, the function resets the checkbox field to If the optional parameter |
| TRIGGER_IS_AFTER | Returns TRUE if the current trigger context is an "after" event (after insert, after update, after delete or after undelete); otherwise, returns FALSE. |
| TRIGGER_IS_BEFORE | Returns TRUE if the current trigger context is a "before" event (before insert, before update, or before delete); otherwise, returns FALSE. |
| TRIGGER_IS_CHANGED | Returns TRUE if any of the specified fields have been modified from their previous values during the update DML operation; otherwise, returns FALSE. |
| TRIGGER_IS_CHANGED_FROM | Returns TRUE if the specified field's value has changed from any of the provided old values in the current trigger context; otherwise, returns FALSE. |
| TRIGGER_IS_CHANGED_TO | Returns TRUE if the specified field's value has changed to any of the provided new values in the current trigger context; otherwise, returns FALSE. |
| TRIGGER_IS_DELETE | Returns TRUE if the current trigger context involves a delete operation (before delete or after delete); otherwise, returns FALSE. |
| TRIGGER_IS_FLIPPED | Returns TRUE if the specified field's value has changed in the current transaction (i.e., the field was updated or flipped from its previous value). |
| TRIGGER_IS_INSERT | Returns TRUE if the current trigger context involves an insert operation (before insert or after insert); otherwise, returns FALSE. |
| TRIGGER_IS_UNDELETE | Returns TRUE if the current trigger context is an undelete operation (after undelete); otherwise, returns FALSE. |
| TRIGGER_IS_UPDATE | Returns TRUE if the current trigger context involves an update operation (before update or after update); otherwise, returns FALSE. |
| VALUE_IN | Returns TRUE if the provided value matches any of the specified compare values; otherwise, returns FALSE. |
Number Functions
| ABS | Returns the absolute value of the specified number. |
| CEILING | Returns the smallest integer greater than or equal to the specified number. |
| COS | Returns the trigonometric cosine of the specified angle. |
| DISTANCE | Calculates the distance between two locations in kilometers. |
| EXP | Returns the value of e raised to the specified number. |
| FLOOR | Returns the largest integer less than or equal to the specified number. |
| LOG | Returns the natural logarithm (base e) of the specified number. |
| MAX | Returns the largest number from the given set of numbers. |
| MIN | Returns the smallest number from the given set of numbers. |
| ROUND | Returns the value rounded to the nearest integer using half-even rounding. |
| SET_SCALE | Rounds a number to the specified number of decimal places using half-even rounding. |
| SIN | Returns the trigonometric sine of the specified angle. |
| TAN | Returns the trigonometric tangent of the specified angle. |
| TO_DECIMAL | Converts the input value to a Decimal. If the input cannot be converted, the function throws an error. |
| TO_INTEGER | Converts a value to an Integer. If the input cannot be converted, the function throws an error. |
Date & Time Functions
| ADD_DAYS | Returns a Date or Datetime adjusted by the specified number of days, either forward (positive) or backward (negative), relative to the provided Date or Datetime. |
| ADD_MONTHS | Returns a Date or Datetime adjusted by the specified number of months, either forward (positive) or backward (negative), relative to the provided Date or Datetime. |
| BUSINESS_HOURS_ADD | Adds a time interval to a starting Datetime, counting only business hours. The result is returned in GMT. |
| BUSINESS_HOURS_DIFF | Calculates the difference in milliseconds between two Datetime values within business hours. Uses the default schedule if none is provided. |
| BUSINESS_HOURS_IS_WITHIN | Returns TRUE if the specified Datetime is within defined business hours. |
| BUSINESS_HOURS_NEXT_START_DATE | Returns the next Datetime business hours open after the specified target date; returns the target date itself if it's within business hours. The result is returned in GMT. |
| DATE | Returns a Date constructed from the specified year, month, and day components. |
| DAY | Returns the day of the month from a Date or Datetime in the context user's local time zone. |
| DAY_OF_YEAR | Returns the day number within the year for a given date, ranging from 1 to 365 or 366. |
| DAYS_BETWEEN | Returns the number of days between two provided Dates. The result is positive if end_date occurs after start_date, negative if it occurs before, and zero if the dates are identical. |
| FORMAT_DATETIME | Formats a Date or Datetime as a string. |
| HOUR | Extracts the hour (0–23) from a Datetime value, based on the context user’s local time zone. |
| HOUR_GMT | Extracts the hour (0–23) from a Datetime value, based on GMT. |
| MILLISECOND | Extracts the millisecond (0–999) from a Datetime value. |
| MINUTE | Extracts the minute (0–59) from a Datetime value, based on the context user’s local time zone. |
| MINUTE_GMT | Extracts the minute (0–59) from a Datetime value, based on GMT. |
| MONTH | Returns the month component (1=January) from a Date or Datetime, evaluated in the context user's local time zone. |
| NOW | Returns the current Datetime based on the context user's local time zone. |
| SECOND | Extracts the second (0–59) from a Datetime value. |
| TO_DATE | Converts a String or Datetime value into a Date by extracting the calendar date from the input. If the input cannot be parsed, an error is thrown. |
| TO_DATETIME | Converts a string in a recognized date/time format into a Datetime value. The result is returned in GMT. If the input string cannot be parsed, an error is thrown. |
| TO_START_OF_MONTH | Returns the first day of the month for a specified date. |
| TO_START_OF_WEEK | Returns the date representing the first day of the week for a specified date. |
| TO_TIME | Converts a time string from the context user's local time zone to a Time value in GMT. |
| TODAY | Returns the current date in the context user's local time zone. |
| YEAR | Returns the year component from a Date or Date Time, evaluated in the context user's local time zone. |
| YESTERDAY | Returns the date value representing yesterday, evaluated in the context user's local time zone. |
Operators
Arithmetic Operators
| + | Add | Calculates the sum of two numbers. |
| - | Subtract | Calculates the difference between two numbers. |
| * | Multiply | Calculates the product of two numbers. |
| / | Divide | Calculates the quotient of two numbers. |
| % | Mod | Calculates the remainder of two numbers. |
Comparison Operators
| == | Equal | Evaluates if two values are equal. |
| != | Not Equal | Evaluates if two values are different. |
| < | Less Than | Evaluates if the first value is smaller than the second. |
| > | Greater Than | Evaluates if the first value is larger than the second. |
| <= | Less Than or Equal | Evaluates if the first value is smaller or equal to the second. |
| >= | Greater Than or Equal | Evaluates if the first value is larger or equal to the second. |
Logical Operators
| && | AND | Evaluates to TRUE if both conditions are true. |
| || | OR | Evaluates to TRUE if at least one condition is true. |
Other Operators
| () | Parentheses | Defines the order in which expressions are evaluated. |
| & | Concatenate | Joins two or more strings together into a single string. |
Global Variables
| $CONTEXT_RECORD_ID | $CONTEXT_RECORD_ID is used in UI-based rules engines—such as Data Loader, Data List, and Action Button—to dynamically reference the current record ID from the Lightning Record Page. When used in transformations, it is automatically replaced with the record’s ID at runtime. |
| $EXECUTABLE_NAME | $EXECUTABLE_NAME returns the name of the currently running Executable. |
| $EXECUTABLE_ID | $EXECUTABLE_ID returns the Id of the currently running Executable. |
| $JOINER | $Joiner is a prefix used to reference fields from a dataset that has been joined in the Scoping step of an Executable (left-join or cross-join). It allows downstream logic—such as Scope Filter (Post Join) rules and field mappings—to access the joined record’s fields. For example, $Joiner.Parent__r.Status__c references the Status__c field on the joined record’s Parent__r relationship. |
| $LAST_EXECUTION | $LAST_EXECUTION references the most recent Execution record for the current Executable (any outcome), allowing formulas to read fields from that Execution. |
| $LAST_SUCCESSFUL_EXECUTION | $LAST_SUCCESSFUL_EXECUTION references the most recent successful Execution record for the current Executable, allowing formulas to read fields from that Execution. |
| $ORG_DOMAIN_URL | Returns current org's domain URL. |
| $SKIP_ASSIGNMENT | `$SKIP_ASSIGNMENT` is a special keyword used in DSP formulas to conditionally bypass processing based on dynamic logic. Field Mapping: If a formula evaluates to `$SKIP_ASSIGNMENT`, the target field is excluded from the request payload. Scope Filters: If a formula evaluates to `$SKIP_ASSIGNMENT`, the source record is omitted from processing. This enables fine-grained control over field-level assignments and record-level processing. |
| $SOURCE_OBJECT_NAME | Returns the Resolved Input Object Name for the currently running Executable. |
| $TARGET_OBJECT_NAME | Returns the Target Object Name for the currently running Executable. |
| $User.Email | Returns the email address of the running user. |
| $User.FirstName | Returns the first name of the running user. |
| $User.LastName | Returns the last name of the running user. |
| $User.Name | Returns the full name of the running user. |
| $User.ProfileId | Returns the Profile Id of the running user. |
| $User.Username | Returns the username of the running user. |
| $User.Id | Returns the Id of the running user. |
Randomization Functions
| RANDOM_ITEM | Returns a random item from the given set of items. |
| RANDOMIZE | Returns a randomized value of the same data type as the provided input. Supports text, number, date, and boolean values. |
| SCRAMBLE | Shuffle the items in the current batch and select one at random. |
Type Processing Functions
| BASE64_DECODE | Returns the original string by decoding the provided Base64-encoded input. If the input is not valid Base64, the function returns an error. |
| BASE64_ENCODE | Returns the Base64-encoded representation of the provided string. |
| TO_BLOB | Converts a string (String) into an Apex Blob type. If the input cannot be converted, the function throws an error. |
| TO_BOOLEAN | Converts a string into a Boolean value. If the input cannot be converted, the function returns an error. |
| TO_DATE | Converts a String or Datetime value into a Date by extracting the calendar date from the input. If the input cannot be parsed, an error is thrown. |
| TO_DATETIME | Converts a string in a recognized date/time format into a Datetime value. The result is returned in GMT. If the input string cannot be parsed, an error is thrown. |
| TO_DECIMAL | Converts the input value to a Decimal. If the input cannot be converted, the function throws an error. |
| TO_INTEGER | Converts a value to an Integer. If the input cannot be converted, the function throws an error. |
| TO_STRING | Converts the specified value into an unformatted text string. |
| TO_TIME | Converts a time string from the context user's local time zone to a Time value in GMT. |
Trigger Functions
| TRIGGER_FLIPPER | This function is used within a before insert or before update trigger to track whether a specific checkbox field (defaulting to Immediately after tracking the flip, the function resets the checkbox field to If the optional parameter |
| TRIGGER_IS_AFTER | Returns TRUE if the current trigger context is an "after" event (after insert, after update, after delete or after undelete); otherwise, returns FALSE. |
| TRIGGER_IS_BEFORE | Returns TRUE if the current trigger context is a "before" event (before insert, before update, or before delete); otherwise, returns FALSE. |
| TRIGGER_IS_CHANGED | Returns TRUE if any of the specified fields have been modified from their previous values during the update DML operation; otherwise, returns FALSE. |
| TRIGGER_IS_CHANGED_FROM | Returns TRUE if the specified field's value has changed from any of the provided old values in the current trigger context; otherwise, returns FALSE. |
| TRIGGER_IS_CHANGED_TO | Returns TRUE if the specified field's value has changed to any of the provided new values in the current trigger context; otherwise, returns FALSE. |
| TRIGGER_IS_DELETE | Returns TRUE if the current trigger context involves a delete operation (before delete or after delete); otherwise, returns FALSE. |
| TRIGGER_IS_FLIPPED | Returns TRUE if the specified field's value has changed in the current transaction (i.e., the field was updated or flipped from its previous value). |
| TRIGGER_IS_INSERT | Returns TRUE if the current trigger context involves an insert operation (before insert or after insert); otherwise, returns FALSE. |
| TRIGGER_IS_UNDELETE | Returns TRUE if the current trigger context is an undelete operation (after undelete); otherwise, returns FALSE. |
| TRIGGER_IS_UPDATE | Returns TRUE if the current trigger context involves an update operation (before update or after update); otherwise, returns FALSE. |
| TRIGGER_OLD_VALUE | Returns the previous value of the specified field in an Update DML operation. |
Advanced Functions
| AGG_AVG | Performs a dynamic aggregation on a specified Salesforce object and returns the average of a selected numeric field from all records that match the given criteria. |
| AGG_COUNT | Performs a dynamic aggregation on a specified Salesforce object and returns the count of records matching the provided conditions. |
| AGG_COUNT_DISTINCT | Performs a dynamic aggregation on a specified Salesforce object and returns the count of unique (distinct) values in a selected field for the matching records. |
| AGG_MAX | Performs a dynamic aggregation on a specified Salesforce object and returns the maximum value of a specified field among all matching records. |
| AGG_MIN | Performs a dynamic aggregation on a specified Salesforce object and returns the minimum value of a specified field among all matching records. |
| AGG_SUM | Performs a dynamic aggregation on a specified Salesforce object and returns the sum of the selected numeric field from all records that match the provided criteria. |
| CASE | Returns the corresponding return_value for the first compare_value equal to the provided value. If no values match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| EVALUATE | Returns the value of a formula stored in a custom field, evaluated at runtime. Optionally retrieves fields from related records. |
| EVALUATED_FIELD_VALUE | Returns the evaluated value of a mapped target field that has already been processed prior to the current field’s evaluation within the Executable’s Mapping step. If the field has not yet been evaluated, the function returns NULL. |
| GET_PICKLIST_FIELD_OPTIONS | Returns a list of options for the specified picklist field on a given object. |
| HTML_TABLE | Generates a formatted HTML table string from records of the specified source object, filtered by matching field-value pairs and an optional query clause. |
| JOIN_JSON | Returns a filtered array containing objects from the provided JSON array that match the specified field name and field value criteria. |
| JOIN_OBJECT_CONNECTION | Returns records from a specified object through a named connection or a related connection, filtered by joining field-value pairs, with an optional additional filtering clause. |
| JOIN_OBJECT_SOURCE | Returns records from the specified object via the Source connection that match the provided joining field–value pairs, with an optional additional filtering clause. |
| JOIN_OBJECT_TARGET | Returns records from a specified object via the Target connection that match the provided joining field–value pairs, with an optional additional filtering clause. |
| JSON_GET_FIELD_VALUES | Returns a list containing the value of the specified field from each map in the provided list. Optionally excludes null values from the result. |
| JSON_SERIALIZE | Returns the provided value as a JSON string. |
| JSON_SERIALIZE_PRETTY | Serializes the provided object into a JSON string with pretty-printed formatting. |
| MAP_VALUE_CONTAINS | Returns the corresponding return_value for the first compare_substring found within the provided string (case-sensitive). If no substrings match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| MAP_VALUE_CONTAINS_IGNORE_CASE | Returns the corresponding return value for the first compare substring found within the provided string, performing case-insensitive matching. If no substrings match, returns default return value optional. If default return value optional is omitted and no match occurs, the function returns $SKIP_ASSIGNMENT. |
| MAP_VALUE_STARTS_WITH | Returns the corresponding return_value for the first compare_substring that matches the beginning of the provided string (case-sensitive). If no substrings match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| MAP_VALUE_STARTS_WITH_IGNORE_CASE | Returns the corresponding return_value for the first compare_substring that matches the beginning of the provided string, performing case-insensitive matching. If no substrings match, returns default_return_value_optional. If default_return_value_optional is omitted and no matches occur, the function returns $SKIP_ASSIGNMENT. |
| MATCHES | Returns TRUE if the provided string matches any of the specified regular expressions; otherwise, returns FALSE. |
| TO_PDF | Creates a binary object out of the given string, encoding it as a PDF file. |
| VLOOKUP | Performs a dynamic lookup on a Salesforce object and returns the specified field value(including relational fields up to 5 levels), from the first matching record. |
| VLOOKUP_ALL | Queries the specified object and returns the designated fields (plus the record Id and lookup field) from all records that match one or more field-value pairs, with an optional additional filtering clause. |
| VLOOKUP_CONNECTION | Performs a dynamic lookup on a Salesforce object through a connection and returns the specified field value (including relational fields up to 5 levels), from the first matching record. |
| VLOOKUP_RECORD | Performs a dynamic lookup on a Salesforce object and returns the full Object record from the first record that matches the provided field-value pairs. |
| VLOOKUP_RECORD_CONNECTION | Performs a dynamic lookup on a Salesforce object through a connection and returns the full Object record from the first record that matches the provided field-value pairs. |