The CreatorCon Call for Content is officially open! Get started here.

madelapostol-de
Tera Explorer

Understanding Decision Tables in ServiceNow

A decision table in ServiceNow is a configuration option that can be used to evaluate multiple conditions and return a result based on predefined logic. It simplifies complex decision-making by organizing rules in a tabular format, where each row represents a unique set of conditions and their corresponding output.

The following data types are supported for both input and output:

  • Choice
  • Currency
  • Date
  • Date / Time
  • Decimal
  • Integer
  • Long
  • Reference
  • String
  • True / False

In addition, Duration is supported as an output data type.

How Decision Tables Are Used in ServiceNow

Decision tables can be called from scripts and flows to streamline decision-making. By eliminating the need for extensive scripting, they allow administrators to implement logic that evaluates conditions across multiple fields. When the table is triggered, the system evaluates the conditions row by row and returns the matching output.

Example Use Case

Consider an approval process in an organization where decisions are made based on the dollar amount of a purchase request:

  • If the amount is less than $1,000, the approval is routed to Approver X.
  • If the amount is between $1,000 and $10,000, the approval is routed to Approver Y.
  • If the amount exceeds $10,000, the approval is routed to Approver Z.

This decision table ensures the appropriate level of oversight while maintaining an efficient and automated approval process.

The following shows how this logic is configured in a ServiceNow decision table.

madelapostolde_0-1743335608343.png

 

To call a decision table from a flow, click on Flow Logic > Make a decision. Fill in the inputs:

madelapostolde_1-1743335608345.png

 

The output of the decision table can then be used in succeeding actions such as Ask for Approval.

madelapostolde_2-1743335608349.png

 

Limitations of Decision Tables

Despite their usefulness, decision tables can become cumbersome when managing a large number of conditions. Input columns are only evaluated as “AND” conditions. You will need to create rows to evaluate “OR” conditions.

They also lack advanced scripting capabilities, making them unsuitable for highly dynamic or complex scenarios. Additionally, performance issues may arise if the evaluation logic involves excessive rows or intricate conditions.

 

 

 

 

1 Comment