Creating Formula Fields

Creating Formula Fields

Formula fields are used to calculate different types of values, including numeric values, text values, date values, etc. Formula fields and their resulting return value have certain data types associated with them and there are specific operators that can be used for each data type. It is necessary to understand the type of fields required for creating formula fields and the compatibility between the data types and the operators. For instance, the operator " * " (for multiplication) is used on numeric values and not on text values.
  • You cannot modify the Return type for the formula fields.
  • Maximum 1000 characters can be used in the formula expression.

Availability

Profile Permission Required: Users with the Field-level Access permission in profile can access this feature.


Create Numeric Formula Field

The following table helps you to understand the type of arguments required for numeric functions along with the type of syntax that needs to be formed.

Function

Description

Usage

Examples

Abs

Returns the absolute value of the Number.

Abs(number)

Abs(-42) returns 42; Abs(+33) returns 33

Ceil

Returns the smallest digit greater than or equal to the input number.

Ceil(number)

Ceil(3.4) returns 4; Ceil(-3.4) returns -3

Floor

Returns the largest digit less than or equal to the input number.

Floor(number)

Floor(3.8) returns 3; Floor(-3.4) returns -4

Naturallog

Returns the natural logarithm of a number

Naturallog(number)

Naturallog(1) returns 0.69

Base10log

Returns the base 10 logarithm of the input number

Base10log(number)

Base10log(10) returns 1.0

Max

Returns the maximum value from the specified list of compatible data types.

Max(value1, value2,...)

Max(3,1,5,2) returns 5; Max(0,-4,-3,2) returns 2

Min

Returns the minimum value from the specified list of compatible data types.

Min(value1, value2,...)

Min(5,-3,0,1) returns -3; Min(5,0,.01,0.5) returns 0.0

Sqrt

Returns the square root of the input number.

Sqrt(number)

Sqrt(4) returns 2; Sqrt(9) returns 3

To create numeric type formula fields

  1. Log in to Nonprofit Vertical CRM with Administrator privileges.
  2. Go to Setup > Customization > Modules and Fields.
    Module refers to the Leads, Accounts, Contacts, etc. tabs.
  3. Click the required module.
    The Layout Editor opens.
  4. Drag and drop the Formula field from the New Fields tray to the required module section on the right.
  5. In the Formula Properties window, do the following:
    • Enter id in the Field Label field..
    • Select Number/Currency as the Formula Return Type from the drop-down list.
      In the case of Number and Currency Return Type fields, enter a value for Decimal places.

    Constructing Formulas

  6. Under Select Functions, select Numeric Functions from the drop-down list.
  7. From the list of Numeric Functions, choose a function and click Insert.
    (Alternatively, you can double-click on a function to insert)
  8. In the Formula expression, click between the parenthesis to insert an argument.
  9. Under Select Field column, choose a field and click Insert.
    (Alternatively, you can double-click on a field to insert)
  10. Under Select Operator column, choose an operator and click Insert.
  11. Click Check Syntax to check the construction of the formula.
  12. Click Save.

Create String Formula Field

The following table helps you to understand the type of arguments required for formula functions along with the type of syntax that needs to be formed.

Function
Description
Usage
Examples
Len
Returns the number of characters in a specified text string.
Len(string)
Len('abc') returns 3; Len(' abc ') returns 5
Find
Returns the nth occurrence of the text string.
Find('string','search string',number)
Find('greenery','n',1) returns 5
Concat
Returns the concatenation of all the strings.
Concat('string','string',...)
Concat('FirstName',' ','LastName') returns FirstName LastName
Contains
Returns true if search string is found in the other string, otherwise returns false.
Contains('string','search string')
Contains('abcdef','cd') returns true
Startswith
Returns true if the string begins with the search string, otherwise returns false.
Startswith('string','search string')
Startswith('abcdef','cd') returns false
Startswith('abcdef','abc') returns true
Endswith
Returns true if the string ends with the search string, otherwise returns false.
Endswith('string','search string')
Endswith('abcdef','ab') returns false
Endswith('abcdef','ef') returns true
Lower
Converts all characters in a string to lower case.
Lower('string')
Lower('APPLES') returns "apples"
Lower('Apples') returns "apples"
Upper
Converts all characters in a string to upper case.
Upper('string')
Upper('apples') returns "APPLES"
Upper('APPles') returns "APPLES"
Trim
Returns string with the leading and trailing white space characters removed.
Trim('string')
Trim(' abcd ') returns "abcd"
Substring
Returns a portion of an input string, from a start position in the string to the specified length.
Substring('string',n1,n2)
Substring('abcdefg',4,7) returns "defg"
Replace
Replaces each occurrence of the search string in the input string with the corresponding replace string.
Replace('string','search string','replace string')
Replace('abcdefg','abc','xyz') returns "xyzdefg"
Tostring
Converts any argument to a string data type.
Tostring(generic argument)
Tostring(3.4) returns "3.4"
Tostring('') returns < empty >

Note:

  • The string constants should always be enclosed in single quotes(')
  • Field labels do not need to be enclosed in single quotes (').

To create String type formula fields

  1. Log in to Nonprofit Vertical CRM with Administrator privileges.
  2. Go to Setup > Customization > Modules and Fields.
    Module refers to the Leads, Accounts, Contacts, etc. tabs.
  3. Click the required module.
    The Layout Editor opens.
  4. Drag and drop the Formula field from the New Fields tray to the required module section on the right.
  5. In the Formula Properties window, do the following:
    • Enter id in the Label field.
    • Select String as the formula Return Type from the drop-down list.

    Constructing Formulas

  6. Under Select Functions, select String Functions from the drop-down list.
  7. From the list of String Functions, choose a function and click Insert.
    (Alternatively, you can double-click on a function to insert)
  8. In the Formula expression, click between the parenthesis to insert an argument.
  9. Under Select Field column, choose a field and click Insert.
    (Alternatively, you can double-click on a field to insert)
  10. Under Select Operator column, choose an operator and click Insert.
  11. Click Check Syntax to check the construction of the formula.
  12. Click Save.

Create DateTime Formula Field

The following table helps you to understand the type of arguments required for DateTime functions along with the type of syntax that needs to be formed.

Function
Description
Usage
Examples
Newdate
Creates a date from the year, month, day and time.
Newdate(year,month,day, hour,minute,'string')
Newdate(2007,12,21,06,30,'AM') returns quot;21/12/2007 06:30 AM"1
Datepart
Returns the date value for the date time expression.
Datepart(datetime argument)
Datepart(Newdate(2007,12,21,06,30,'AM')) returns "21/12/2007"1
Timepart
Returns the time value for the date time expression.
Timepart(datetime argument)
Timepart(Newdate(2007,12,21,06,30,'AM')) returns "06.30 AM"
Adddate
Returns the date obtained by adding n (year/day/month/hour/min) to the given date.
Adddate(datetime,number, 'string')
Adddate(Newdate(2007,12,21,06,30,'AM'),2,'YEAR' returns "21/12/2009 06:30 AM"2
Subdate
Returns the date obtained by subtracting n (year/day/month/hour/min) to the given date.
Subdate(datetime,number, 'string')
Subdate (Newdate(2007,12,21,06,30,'AM'),2,'YEAR' returns "21/12/2005 06:30 AM"2
Now
Returns a date/time representing the current moment.
Now()
Now() returns "19/05/2009 10:52 AM"
Datecomp
Compares two dates and returns the difference of days in minutes.
Datecomp(Datetime, Datetime)
Datecomp(Newdate(2009,05,19,11,30,'AM'), Newdate(2009,05,19,12,30,'AM')) returns 660.0 3
Dayofmonth
Returns the day of the month for the given date.
Dayofmonth(Datetime)
Dayofmonth(Newdate(2009,05,19,11,30,'AM')) returns "19.0"
Hour
Returns the hour corresponding to the given date.
Hour(Datetime)
Hour(Newdate(2009,05,19,11,30,'AM')) returns "11.0"
Minute
Returns the minute corresponding to the given date.
Minute(Datetime)
Minute(Newdate(2009,05,19,11,30,'AM')) returns "30.0"
Month
Returns the month corresponding to the given date.
Month(Datetime)
Month(Newdate(2009,05,19,11,30,'AM')) returns "5.0"
Year
Returns the year corresponding to the given date
Year(Datetime)
Year(Newdate(2009,05,19,11,30,'AM')) returns "2009.0"
Weekday
Returns the day of the week (1-7) corresponding to the input date, where 1 is Sunday, 2 is Monday and so on.
Weekday(Datetime)
Weekday(Newdate(2009,05,19,11,30,'AM')) returns "3.0". (This is because 19th May is Tuesday)4
  1. The input DateTime argument format should always be YYYY,MM,DD,HH,MM,AM/PM but the output will be displayed as per the selected Country Locale.
  2. The string data type (YEAR/DAY/MONTH/HOUR/MINUTE) should be in UPPERCASE.
  3. The resulting return value for the Datecomp function is always displayed in minutes.
  4. If the date value is "0" the function returns null.

To create date time type formula fields

  1. Log in to Zoho CRM with Administrator privileges.
  2. Go to Setup > Customization > Modules and Fields.
    Module refers to the Leads, Accounts, Contacts, etc. tabs.
  3. Click the required module.
    The Layout Editor opens.
  4. Drag and drop the Formula field from the New Fields tray to the required module section on the right.
  5. In the Formula Properties window, do the following:
    • Enter id in the Label field.
    • Select DateTime as the Formula Return Type from the drop-down list.

    Constructing Formulas

  6. Under Select Functions, select DateTime Functions from the drop-down list.
  7. From the list of DateTime Functions, choose a function and click Insert.
    (Alternatively, you can double-click on a function to insert)
  8. In the Formula expression, click between the parenthesis to insert an argument.
  9. Under Select Field column, choose a field and click Insert.
    (Alternatively, you can double-click on a field to insert)
  10. Under Select Operator column, choose an operator and click Insert.
  11. Click Check Syntax to check the construction of the formula.
  12. Click Save.

Create Boolean Formula Field

The following table helps you to understand the type of arguments required for boolean functions along with the type of syntax that needs to be formed.

Function
Description
Usage
Examples
If
Returns one of two values, depending on the value of a given logical condition. If the boolean test is true, If() returns the true value, otherwise returns the false value.
If(Boolean,Generic, Generic)*
If(8>7,1,0) returns "1.0"
If(8>7,'True','False') returns "True"
And
Returns a true response if all expressions are true; returns a false value even if one of the expressions is false.
And(boolean,boolean ...)
And(2>1,5>3,7<8) returns "true"
And(2>1,5>3,7>8) returns "false"
Or
Returns true if any one expression is true. Returns false if all expressions are false.
Or(boolean,...)
Or(2>1,3>5,7>8) returns "true"
Or(1>2,3>5,7>8) returns "false"
Not
Returns the logical negation of the given expression(If the expression is true, returns false).
Not(boolean)
Not(false) returns "true"
Not(true) returns "false"

* Generic implies any data type - Number, String, Datetime (including normal date) or Boolean. The return type depends on the selected data type. For instance, if the generic data type is a number, the return type should be Numeric and not string or boolean.

To create boolean type formula fields

  1. Log in to Nonprofit Vertical CRM with Administrator privileges.
  2. Go to Setup > Customization > Modules and Fields.
    Module refers to the Leads, Accounts, Contacts, etc. tabs.
  3. Click the required module.
    The Layout Editor opens.
  4. Drag and drop the Formula field from the New Fields tray to the required module section on the right.
  5. In the Formula Properties window, do the following:
    • Enter id in the Label field.
    • Select Boolean Functions as the Formula Return Type from the drop-down list.

    Constructing Formula

  6. Under Select Functions, select Boolean Functions from the drop-down list.
  7. From the list of Boolean Functions, choose a function and click Insert.
    (Alternatively, you can double-click on a function to insert)
  8. In the Formula expression, click between the parenthesis to insert an argument.
  9. Under Select Field column, choose a field and click Insert.
    (Alternatively, you can double-click on a field to insert)
  10. Under Select Operator column, choose an operator and click Insert.
  11. Click Check Syntax to check the construction of the formula.
  12. Click Save.

Formula Syntax Reference

The following table displays the functional reference for creating formulae along with their available arguments.

Numeric Functions

Function Name
No. of Required Arguments
Argument Data Type
Return Type
Abs
1
Number
Number
Ceil
1
Number
number
Floor
1
Number
Number
Naturallog
1
Number
Number
Base10log
1
Number
Number
Max
Multiple
All Number
Number
Min
Multiple
All Number
Number
Sqrt
1
Number
Number

String Functions

Function Name
No. of Required Arguments
Argument Data Type
>Return Type
Len
1
String
Number
Find
3
String: String: Number
Number
Concat
Multiple
All String
String
Contains
2
String: String
Boolean
Startswith
2
String: String
Boolean
Endswith
2
String: String
Boolean
Lower
1
String
String
Upper
1
String
String
Trim
1
String
String
Substring
3
String: Number: Number
String
Replace
3
String: String: String
String
Tostring
1
Any data type
String

DateTime Functions

Function Name
No. of Required Arguments
Argument Data Type
Return Type
Newdate
6
Number:Number:Number:Number:Number:String
Datetime
Datepart
1
Datetime
String
Timepart
1
Datetime
String
Adddate
3
Datetime: Number: String
Datetime
Subdate
3
Datetime: Number: String
Datetime
Now
0
-
Datetime
Datecomp
2
Datetime: Datetime
Number
Dayofmonth
1
Datetime
Number
Hour
1
Datetime
Number
Minute
1
Datetime
Number
Month
1
Datetime
Number
Year
1
Datetime
Number
Weekday
1
Datetime
Number

Boolean Functions

Function Name
No. of Required Arguments
Argument Data Type
Return Type
If
3
Boolean: Generic: Generic
Generic
And
Multiple
All Boolean
Boolean
Or
Multiple
All Boolean
Boolean
Not
1
Boolean
Boolean

Note:

  • String constants should be enclosed within single quotes.
  • Generic implies any data type - Number, String, Datetime (including normal date) or Boolean.

    • Related Articles

    • Creating Custom Fields

      How Can I... Custom Fields Custom Field Limits Add Custom Fields Edit Custom Fields Set Field Permission Mark a Field as Required Mark a Field as Unique Remove/Delete Custom Fields Create Currency Fields Add/Rename Pick List Values Replace Pick List ...
    • Building Formula Fields

      Nonprofit Vertical CRM formula fields enable you to define fields that can populate dynamically calculated data based on the values returned from other standard or custom fields. For instance, a nonprofit volunteer teaching program may need to ...
    • Functions in Formula Fields

      Numeric Functions A numeric function in formula fields is used to work with numeric data types and accepts numeric results. Numeric functions are generally used to display the results of typical mathematical calculations. The numeric values ...
    • Data Types in Formula Fields

      Data type is the kind of data that can be held and stored while evaluating an expression. Data types are the defined set of values and the allowable operations on those values. They represent either the function, argument, return value or the ...
    • Field Level Customization

      Field-level customization enables organizing the field requirements of any organization. By default, Nonprofit Vertical CRM provides some standard fields and allows adding more industry-specific fields. Some of these fields are common to all modules ...