Logical Formulas & Operators

Many of these formulas feature the boolean True or False values. To learn more about how Osmos handles True/False evaluation and casting, please see True & False Casting.

And &&

Formula

=and(<input 1>, [input 2], ...)

=<input1>&&[input2]

Description

Returns True if every input value or argument is True, otherwise returns False.

Arguments

Argument

Required (Y/N)

Description

Input 1

Y

The first value or condition that you want to evaluate for True or False

Input 2

N

The second value or condition that you want to evaluate for True or False

... Input N

N

The nth value or condition that you want to evaluate for True or False

Examples

Example 1:

=and(equals(5,5), equals(4,4)) = True

=(5=5)&&(4=4) will return True

Example 2:

=and(not($"IsEmployee"), $"NorthAmericaOffice")

=($"IsEmployee"="False")&&($"NorthAmericaOffice"="True")

Equals =

Formula

=equals(<input 1>, [input 2], ...)

=<input1>=[input2]...

Description

Returns True if every input value or argument is equal to each other input, otherwise returns False

Arguments

Argument

Required (Y/N)

Description

Input 1

Y

Value evaluated along with other input values (Input 2...Input N)

Examples

Example 1:

=equals(5, 5, 5) will return True

=5=5=5 will return True

Example 2:

=equals(1,1,2) will return False

=1=1=2 will return False

Example 3:

=equals($"FirstName", "Peter")

=$"FirstName"="Peter"

IF

Formula

=if(<condition>, <value_if_true>, [value_if_false])

=if(<condition>, <then>, [else])

Description

Returns value_if_true if the condition evaluates to True. Otherwise returns value_if_false.

Arguments

Argument

Required (Y/N)

Description

Condition

Y

Statement, value or logical operation evaluated for TRUE or FALSE

value_if_true

Y

Value returned if Condition is TRUE

value_if_false

N

Value returned if Condition is FALSE

Examples

Example 1:

=if(($"PurchaseDate"-currentdate())>30, "Past Due", "OK")

Example 2:

=if(equals($"First Name", "Doe"), $"Last Name", $"First Name") Example 3:

=if(($"Sales"<=0), $"Sales", skip())

IFS

Formula

=ifs(<condition1>, <value_if_true1>, [condition2],[value_if_true2],[condition3],[value_if_true3]...[value_if_false])

Description

Returns value_if_true1 if the condition1 is True. Otherwise the formula continues to look for the first True condition. An IFS can take the place of multiple nested IF conditions. An IFS statement can be ended with a final "value_if_false" statement in the case that a True statement cannot be found. If a "value_if_false" is not specified and a True statement cannot be found, the equation will output null.

Arguments

Argument

Required (Y/N)

Description

Condition1

Y

Statement, value or logical operation evaluated for TRUE or FALSE

value_if_true1

Y

Value returned if Condition is TRUE

Condition2

N

Optional statement, value or logical operation evaluated for TRUE or FALSE

value_if_true2

N

Optional value returned if Condition is TRUE

value_if_false

N

Optional default value output in the case that none of the outlined conditions return true

Examples

Example 1:

=ifs(($"Rating">=4),"Four Stars",($"Rating">=3),"Three Stars","Needs Improvement")

Example 2:

=ifs(($"ProductCategory"=103), "Shirts & Jackets", ($"ProductCategory"=104), "Pants", "Unknown")

Switch

Formula

=switch(<$"Field">, <input1>, <value1>, [input2], [value2]... [default_value])

Description

Returns a value directly corresponding to an input where that input is found in a specified field.

Arguments

Argument

Required (Y/N)

Description

Field

Y

The location of the data to be compared to input values

input1

Y

The input to be compared against the value in a specified field

value1

Y

The value returned when its corresponding input is equal to the value in a specified field

input2

N

A secondary input to be compared against the value in a specified field

value2

N

The value returned when its corresponding input is equal to the value in a specified field

default_value

N

The value returned in the case that no inputs correspond to the value of the specified field.

Examples

Example 1:

=switch($"weekday_number",1,"Sunday",2,"Monday",3,"Tuesday","No match")

Example 2:

=switch($"Rank",5,"Five Star",4,"Four Star",3,"Needs Work",2,"Needs Work",1,"Needs Work","n/a")

NotEquals !=

Formula

=notequals(<input 1>, [input 2], ...)

=<input1>!=[input2]

Description

Returns False if every input is equal to each other, otherwise returns True

Arguments

Argument

Required (Y/N)

Description

Input 1

Y

Value evaluated along with other input values (Input 2...Input N)

Examples

Example 1:

=notequals(5, 5) will return False

=5!=5 will return False

Example 2:

=notequals(5,5,3) will return True

=5!=5!=3 will return True

Example 3:

=equals($"FirstName", "Smith")

=$"FirstName"!="Smith"

Or ||

Formula

=or(<input 1>, [input 2], ...)

=<input1>||[input2]

Description

Returns True if at least one input is True, otherwise returns False

Arguments

Argument

Required (Y/N)

Description

Input 1

Y

The first value or condition that you want to evaluate for TRUE or FALSE

Input 2

N

The second value or condition that you want to evaluate for TRUE or FALSE

... Input N

N

The nth value or condition that you want to evaluate for TRUE or FALSE

Examples

Example 1:

=or(equals(2,5), equals(4,4)) = True

=(2=5)||(4=4)

Example 2:

=or(not($"Is Employee"), $"Lives in North America")

=($"Is Employee"=FALSE)||($"Lives in North America"="TRUE")

Xor ^

Formula

=xor(<input 1>, [input 2], ...)

=<input1>^<input2>

Description

Returns True if at exactly one input is true, otherwise returns False

Arguments

Argument

Required (Y/N)

Description

Input 1

Y

The first value or condition that you want to evaluate for TRUE or FALSE

Input 2

N

The second value or condition that you want to evaluate for TRUE or FALSE

... Input N

N

The nth value or condition that you want to evaluate for TRUE or FALSE

Examples

Example 1:

=xor(equals(2,5), equals(4,4)) will return False

=(2=5)^(4=4) will return True

Example 2:

=xor(equals(2, 5), equals(4,5)) will return False

=(2=5)^(4=5) will return False

Example 3:

=xor(not($"Is Employee"), $"Lives in North America")

=($"Is Employee"="FALSE")^($"Lives in North America"="FALSE")

Not

Formula

=not(<input>)

Description

Returns True if the given input is False, otherwise returns False.

Arguments

Argument

Required (Y/N)

Description

Input

Y

Statement or operation that is evaluated for True condition

Examples

Example 1:

=not(true) = False

Example 2:

=not($"Is Employee")

Contains

Formula

=contains(<input>, <content>)

Description

Returns True if the given content is contained within the input argument, otherwise returns False.

Arguments

Argument

Required (Y/N)

Description

Input

Y

Statement or operation that is searched for the presence of Content value

Content

Y

Value to be searched within Input argument

Examples

Example 1:

=contains("last name", "name") will return True

Example 2:

=contains($"date", "2020-02-2017")

Example 3:

=contains($"full name", $"last name")

Iferror

Formula

=iferror(<condition>, <value_if_error>, [value_if_no_error])

Description

Returns value_if_error if the condition has an Error. Otherwise returns value_if_no_error.

Arguments

Argument

Required (Y/N)

Description

Condition

Y

Statement, value or logical operation evaluated for ERROR

value_if_error

Y

Value returned if Condition has an ERROR

value_if_no_error

N

Value returned if Condition does not have an ERROR

Examples

Example 1:

=iferror($"request_date", "Date Missing",$"request_date")

Example 2:

=iferror(divide(10,0), "Divide by zero") will return "Divide by zero"

Less Than >

Formula

=<input1> > <input2>

Description

Returns a boolean True value if input1 is greater than to input2, otherwise returns False. Numeric values will be evaluated numerically, string values will be evaluated by lexicographical value.

Arguments

Argument

Required (Y/N)

Description

Input1

Y

Primary value for evaluation

Input2

Y

The second value that you want to be evaluated

Examples

Example 1:

=5>10 will return False

Example 2:

="cat">"bat" will return True, as "c" comes after "b" and so has a higher lexicographical value

Less Than or Equal To >=

Formula

=<input1> >= <input2>

Description

Returns a boolean True value if input1 is greater than or equal to to input2, otherwise returns False. Numeric values will be evaluated numerically, string values will be evaluated by lexicographical value.

Arguments

Argument

Required (Y/N)

Description

Input1

Y

Primary value for evaluation

Input2

Y

The second value that you want to be evaluated

Examples

Example 1:

=5>=10 will return False

Example 2:

="cat">="bat" will return True, as "c" comes after "b" and so has a higher lexicographical value

Example 3:

=if($"Q2Sales">=$"Q1_Sales", "Growth","Stagnation")

Greater Than <

Formula

=<input1> < <input2>

Description

Returns a boolean True value if input1 is less than than to input2, otherwise returns False. Numeric values will be evaluated numerically, string values will be evaluated by lexicographical value.

Arguments

Argument

Required (Y/N)

Description

Input1

Y

Primary value for evaluation

Input2

Y

The second value that you want to be evaluated

Examples

Example 1:

=10>5 will return False

Example 2:

="bat"<"cat" will return True, as "b" comes before "c" and so has a lesser lexicographical value

Greater Than or Equal To <=

Formula

=<input1> <= <input2>

Description

Returns a boolean True value if input1 is less than than or equal to input2, otherwise returns False. Numeric values will be evaluated numerically, string values will be evaluated by lexicographical value.

Arguments

Argument

Required (Y/N)

Description

Input1

Y

Primary value for evaluation

Input2

Y

The second value that you want to be evaluated

Examples

Example 1:

=10>=5 will return False

Example 2:

="bat"<="cat" will return True, as "b" comes before "c" and so has a lesser lexicographical value

Example 3:

=if($"Q2Sales"<=$"Q3_Sales","Stagnation", "Growth")

Last updated