LogoLogo
  • Welcome to Tailent Automation Platform documentation
    • Start for Free
  • Getting Started
    • State Machine Approach
    • TAP Studio
      • How to install TAP Studio
      • TAP Studio Overview
      • Variables and Data Types
      • Transitions
        • Normal transitions
        • Exception transitions
      • How to Create a New Automation Project in TAP Studio
      • How to add an Activity to Favorites
      • How to Open an Existing Automation Project in TAP Studio
      • How to Save an Automation Project
      • Control Identifiers in UI Browser
      • List of Activities that use Control Identifier as Input Parameter
      • Press Key - Values of Key parameter
      • Outlook vs standard IMAP protocol
      • Hardware & Software Requirements TAP Studio
    • TAP Assistant
      • Basic Scheduling
      • Setting Custom Log Sizes
    • TAP Frequenty Asked Questions
  • Actions
    • TAP Actions
      • CSV
        • Append CSV
        • Read CSV
        • Write CSV
      • Application
        • Kill Process
        • Start Process
        • Wait for Control
      • Clipboard
        • Get Clipboard Text
        • Set Clipboard Text
      • Control
        • If Control Exists
        • Wait for Control to Disappear
        • Check Control
        • Select List Item
        • Set Focus
        • Set Text
        • Get Value
        • Get Native Value
        • Get Window State
        • Set Window State
      • Custom
        • C# Script
      • Data
        • JSON Deserialization
      • Database
        • Connect To Database
        • Database Query
        • Database Non Query
        • Disconnect From Database
      • Diagram
        • Invoke Workflow
        • Sequence
      • Direct text
        • Click Text
        • Extract Direct Text
      • Excel
        • Write Table
        • Set Range Color
        • Rename Sheet
        • Read Range
        • Read Cell Formula
        • Insert Rows
        • Insert Columns
        • Format Range
        • Fill Rows
        • Fill Columns
        • Delete Sheet
        • Delete Rows
        • Delete Columns
        • Create Sheet
        • Clear Range
        • Open Excel WorkBook
        • Close Excel WorkBook
        • Get Cell Value
        • Set Cell Value
      • Flow
        • Assign Value
        • Show Message Box
        • Wait
      • Loging
        • Log to FIle
        • Write to Console
      • IO
        • Copy File
        • Create Directory
        • Create File
        • Delete Directory
        • Delete File
        • Move File
        • Read Text File
        • Write To File
      • Keyboard
        • Press Key
        • Type Text
        • Type Password
      • Mail
        • Get Email Messages
        • Move Mail Message
        • Save Email Attachment
        • Get Outlook 365 Emails
        • Save Outlook 365 Attachments
      • Mouse
        • Click Control
        • Click Point
        • Move Mouse
        • Move to Control
        • Click Image
      • Office
        • Word.Replace
        • Get Word Page Count
      • PDF
        • Extract Sections from PDF
        • Get PDF Page Count
        • Read text from PDF
      • UI
        • Assign Control Identifier
      • User
        • Choose File
        • Choose Folder
        • User Input Dialog
      • Visual
        • Get Image
        • Extract Text
      • Web
        • Wait for Page
        • Run JavaScript
        • Wait for Element Attribute
        • Set Element Text
        • Get HTML Element
        • Open Browser
        • Click Element
        • Get HTML
        • HTTP REST Request
      • ZIP
        • Add to ZIP
        • Extract ZIP
  • TAP Release Updates
    • Release Updates
      • TAP Release Notes 24.8
      • TAP Release Notes 24.01
      • TAP Release Notes 21.12
      • TAP Release Notes 21.10
      • TAP Release Notes 21.06
      • TAP Release Notes 21.04
      • TAP Release Notes 21.02
      • TAP Release Notes 20.12
      • TAP Release Notes 20.11
      • TAP Release Notes 20.09
  • Use Cases
    • Use Cases
      • TAP Studio - Define Invoices Naming Convention
      • TAP Studio - Extract Accounting Data from Invoices
      • TAP Studio - Control Identifier Fine Tuning
      • TAP Studio - Move File
      • TAP Studio - Download Invoices from Email and Move Emails
      • TAP Studio - How to input invoice data into an Accounting System
      • TAP Studio - How to open all desired files of a certain type in a folder
      • TAP Studio - How to parse a custom excel date format without errors
  • Knowledge Base
  • Scripting Utility Classes
    • Tailent.Control Class
      • Tailent.Control.ControlExists
    • Tailent.Console Class
      • Tailent.Console.WriteLine
    • Tailent.StringUtils Class
      • Tailent.StringUtils.FuzzSetMatching
    • Common Scripts Repository
      • C# Scripts Repository
        • Read Excel
        • Write Excel
        • Add LOV in Excel
        • Change Excel Cell Color
        • RegexSplit (Text Filtering)
        • Start a process
        • Filter HTML Contents
        • Reading CSV Contents
        • LINQ Filtering
        • Data Conversion
          • Double to DateTime
  • Solution Migration
  • Microsoft 365 Automation
    • Creating an application Instance
  • Remote Desktop Automation
    • Setting up the remote context
  • Knowledge Base
    • Configuring Proxy Servers
    • tap.runtime.config - Debug flag
    • Unblocking Action .dll Files
Powered by GitBook
On this page
  • What is a State Machine?
  • What are the advantages?
  • Rules for a successful State Machine
  • Types of Transitions

Was this helpful?

  1. Getting Started

State Machine Approach

What is a State Machine?

A State Machine is a workflow layout consisting of a finite number of pre-defined states and transitions between these states.

At any point throughout the execution, based on the external inputs and verified conditions, the workflow can be in only one of the states.

Don't think about State Machine like a workflow layout used only in automation. Some examples from your daily life were designed also with State Machine principles in mind: air-condition, elevator, traffic light, or vending machines.

What are the advantages?

  • Transitions between states are well defined and offer flexibility to the workflow;

  • While simple use cases having academic or demo purpose can be resolved with if statements, switch, or loops (for, for each, while, do-while), the state machine can accommodate real-life processes that are more complex and / or continuous.

  • State Machine eases the coverage of all the possible cases/transitions.

Rules for a successful State Machine

  • Must contain a start state and an end state

  • Every state must be linked at least to another state

  • If a state is linked to 2 or more states, they must have a condition based on which the robot can know what is the nest state.

Types of Transitions

1. Normal Transition- the standard transition between 2 states

2. Exception State - can be used to implement a business or application exception; you can think about it like a Try Catch from programming.

PreviousWelcome to Tailent Automation Platform documentationNextTAP Studio

Last updated 3 years ago

Was this helpful?