- Overview
- Callout
- Complex Scenarios
- Credentials
- Data Service
- Form
- Release notes
- Project compatibility
- Real Time Forms
- Updating form data
- Running forms using JavaScript
- Customizing Forms Using CSS
- Conditional components
- Adding multiple components on the same row in Columns
- Using the Data Table component
- Get File/Folder path
- Reading cell values from a Data Grid component
- Displaying PDF files
- Displaying images in forms
- Scrolling through Data Grids
- Using Dev Tools with forms
- Calculate form component values
- Managing dates in forms
- Opening hyperlinks inside forms
- Displaying a default tab in forms
- Displaying the full label of a component
- Searching long strings in drop-down lists
- About the pre 23.4 Form experience
- Project Compatibility
- Real Time Forms
- Dynamic Checkboxes
- Conditional Dropdowns
- Displaying a Default Tab
- Displaying Images
- Displaying PDF Files
- Displaying the Full Label
- Dynamic HTML Elements
- Managing Dates
- Searching Long Strings in Drop-downs
- Customizing Forms Using Local CSS Files
- Executing Do Block On Checkbox Change
- Customizing Columns Width
- Updating Form Data
- Resetting Collection Data
- Advanced Logic
- Executing Do Block on Dropdown Option Change
- Reading Cell Values From a Data Grid Component
- Conditional Components
- Scrolling Through Data Grid Components
- Using the Grid Component
- Dev Tools
- Calculated Value
- Dynamic Dropdowns
- Switching Tabs With Button Click
- Opening Hyperlinks Inside Form
- FTP
- IPC
- Persistence
- Release notes
- Project compatibility
- About the Persistence activity package
- Bulk Form Designer
- Start Job And Get Reference
- Wait for Job and Resume
- Add Queue Item And Get Reference
- Wait For Queue Item And Resume
- Wait for Form Task and Resume
- Resume After Delay
- Assign Tasks
- Create External Task
- Wait For External Task and Resume
- Complete Task
- Forward Task
- Get Form Tasks
- Get Task Data
- Add Task Comment
- Update Task Labels
- Create App Task
- Wait for App Task and Resume
- Working with App tasks
- Building Your First Form Action
- Advanced Controls for Drop-downs
- Embedding Objects in Form Actions
- Allowing Users to Upload Files to the Storage Bucket
- Adding Advanced Logic Using Java Script
- Setting a Default Tab
- Removing the Delete button from Edit Grid using custom CSS
- Customizing Edit Grid templates
- Using buttons to trigger custom logic
- Using an External Form Layout
- Dynamically expanding form components at runtime
- Sample Workflows
- Automation Ops Pipelines
- System
- Release notes
- About the System activity package
- Project compatibility
- RegEx Builder Wizard
- Is Text Matching
- Find Matching Patterns
- Modify Text
- Modify Date
- Replace Matching Patterns
- Text to Left/Right
- Add Data Column
- Add Data Row
- Build Data Table
- Clear Data Table
- Get Row Item
- Update Row Item
- Merge Data Table
- Output Data Table
- Remove Data Column
- Remove Data Row
- For Each Row in Data Table
- Generate Data Table From Text
- Create List
- Append Item to List
- Read List Item
- Update List Item
- Add Log Fields
- Comment Out / Disabled Activities
- Comment
- Change Type
- Log Message
- Remove Log Fields
- Invoke Com Method
- Format Value
- Lookup Data Table
- Filter Data Table
- Sort Data Table
- Remove Duplicate Rows
- Join Data Tables
- Report Status
- Append Line
- Compress/Zip Files
- Copy File
- Copy Folder
- Create Folder
- Create File
- Delete
- File Exists
- Folder Exists
- Extract/Unzip Files
- Wait for Download
- File Change Trigger
- For Each File in Folder
- For Each Folder in Folder
- Delete File
- Delete Folder
- Move File
- Move Folder
- Rename Folder
- Rename File
- Path Exists
- Read Text File
- Write Text File
- Get File Info
- Get Folder Info
- Get Processes
- Get Username/Password
- Kill Process
- Beep
- Get Environment Folder
- Get Environment Variable
- Invoke Power Shell
- Input Dialog
- Message Box
- Browse for File
- Browse for Folder
- Invoke VBScript
- Process End Trigger
- Process Start Trigger
- File Change Trigger V3
- Trigger Scope
- Repeat Number of Times
- Text to Upper/Lowercase
- Set Environment Variable
- For Each
- Break / Exit Loop
- Retry Scope
- Check True
- Check False
- Workflow Placeholder
- Invoke Workflow File
- Launch Workflow Interactive
- Invoke Code
- Continue / Skip Current
- Multiple Assign
- Invoke Process
- Run Parallel Process
- While
- Do While
- Repeat Number Of Times
- Raise Alert
- Orchestrator HTTP Request
- Get Asset
- Get Credential / Get Orchestrator Credential
- Set Asset
- Set Credential
- Get Jobs
- Get Current Job Info
- Start Job
- Stop Job
- Add Queue Item
- Add Transaction Item
- Delete Queue Items
- Get Queue Items
- Get Transaction Item
- Postpone Transaction Item
- Set Transaction Progress
- Set Transaction Status
- Should Stop
- Wait Queue Item
- Bulk Add Queue Items
- Write Storage Text
- Upload Storage File
- List Storage Files
- Read Storage Text
- Download Storage File
- Delete Storage File
- Custom Input
- Append Item to Collection
- Build Collection
- Collection to Data Table
- Exists in Collection
- Filter Collection
- Merge Collections
- Remove From Collection
- Reset Timer
- Resume Timer
- Start Timer
- Stop Timer
- Timeout Scope
- Manual Trigger
- When New Item Added to Queue
- Stop Local Triggers
- Run Local Triggers
- Repeat Trigger
- Time Trigger
- Disable Local Trigger
- Enable Local Trigger
- Notify Global Variable Changed
- Global Variable Changed Trigger
- Extract Text
- Find and Replace
- Return
- Extract Date and Time from Text
- Change Case for Text
- Add or Subtract from Date
- Download file from URL
- Format Date as Text
- Split Text
- Combine text
- AddDataRow
- AddQueueItem
- AddTransactionItem
- AppendLine
- BulkAddQueueItems
- ClearDataTable
- CompressZipFiles
- CopyFile
- CreateFile
- CreateFolder
- DeleteFileOrFolder
- DeleteQueueItems
- DeleteStorageFile
- DownloadStorageFile
- ExtractUnzipFiles
- FilterDataTable
- GetAsset
- GetCredential
- GetJobs
- GetQueueItem
- GetQueueItems
- GetResourceForLocalPath
- GetRowItem
- GetTransactionItem
- InvokeProcess
- JoinDataTables
- ListStorageFiles
- LookUpDataTable
- MergeDataTable
- MoveFile
- OrchestratorHTTPRequest
- OutputDataTable
- PathExists
- PostponeTransactionItem
- ReadStorageText
- ReadTextFile
- RemoveDataColumn
- RemoveDuplicateRows
- Replace
- SetAsset
- SetCredential
- SetTransactionProgress
- SetTransactionStatus
- SortDataTable
- StartJob
- StopJob
- UpdateRowItem
- UploadStorageFile
- WaitQueueItem
- WriteStorageText
- WriteTextFile
- Testing
- Release notes
- Project compatibility
- About the Testing activity package
- Project Settings
- Add Test Data Queue Item
- Address
- Attach Document
- Bulk Add Test Data Queue Items
- Delete Test Data Queue Items
- Get Test Data Queue Item
- Get Test Data Queue Items
- Given Name
- Last Name
- Random Date
- Random Number
- Random String
- Random Value
- Verify Control Attribute
- Verify Expression
- Verify Expression With Operator
- Verify Range
- Address
- AddTestDataQueueItem
- AttachDocument
- BulkAddTestDataQueueItems
- DeleteTestDataQueueItems
- GetTestDataQueueItem
- GetTestDataQueueItems
- GivenName
- LastName
- RandomDate
- RandomNumber
- RandomString
- RandomValue
- VerifyAreEqual
- VerifyAreNotEqual
- VerifyContains
- VerifyExpression
- VerifyExpressionWithOperator
- VerifyIsGreater
- VerifyIsGreaterOrEqual
- VerifyIsLess
- VerifyIsLessOrEqual
- VerifyIsRegexMatch
- VerifyRange
- Workflow Events
- Workflow Foundation
User Triggered Activities
The examples below explain how to execute activities triggered by the user's actions (mouse click or keystroke) using activities such as Monitor Events. You can find these activities in the UiPath.System.Activities package.
There are three workflows, each explaining a different action that can trigger an activity.
Activity triggered by clicking an image
This is how the automation process can be built:
- Open Studio and create a new Process.
-
Drag a Sequence container in the Workflow Designer.
-
Create the following variable:
Variable Name
Variable Type
Default Value
TargetElement
UiElement
Â
-
-
Add a Monitor Events activity inside the Sequence container.
- In the Properties panel, add the value
False
in the RepeatForever field.
- In the Properties panel, add the value
-
Add a Click Image Trigger activity inside the Monitor Events activity.
-
Inside the activity, click Indicate image on screen, and then select the UiPath Studio taskbar button like in the following GIF:
-
- Drag a Sequence container below the Click Image Trigger activity inside the Monitor Events activity. Name the sequence Event Handler.
-
Add a Get Source Element activity inside the Event Handler sequence.
- In the Properties panel, add the variable
TargetElement
in the UiElement field.
- In the Properties panel, add the variable
-
Add a Highlight activity below the Get Source Element activity inside the Event Handler sequence.
- In the Properties panel, add the variable
TargetElement
in the Element field. -
Add the value
1500
in the HighlightTime field.
- In the Properties panel, add the variable
- Run the process. The process waits for you to click the UiPath Studio button in the taskbar and then highlights it.
Activity triggered by a mouse click
This is how the automation process can be built:
- Open Studio and create a new Process.
-
Drag a Sequence container in the Workflow Designer.
-
Create the following variable:
Variable Name
Variable Type
Default Value
LoopForever
Boolean
True
-
-
Add a Monitor Events activity inside the Sequence container.
-
In the Properties panel, add the variable
LoopForever
in the RepeatForever field.Note: Add Mouse Trigger activities for controlling the Monitor Events loops. The first Mouse Trigger blocks the event until the element is highlighted. The second Mouse Trigger stops the process.
-
-
Add a Mouse Trigger activity inside the Monitor Events activity.
- In the Properties panel, select the EVENT_BLOCK option from the EventMode drop-down list.
-
Add another Mouse Trigger activity next to the previous one, inside the Monitor Events activity.
- In the Properties panel, select the EVENT_BLOCK option from the EventMode drop-down list.
- Select the Ctrl option from the KeyModifiers drop-down list.
-
Add a Sequence activity below the Mouse Trigger activities inside the existing sequence.
-
Create the following variable:
Variable Name
Variable Type
Default Value
MouseEvent
EventInfo
Â
-
-
Add a Get Event Info activity inside the previously created Sequence container.
- Add the variable
MouseEvent
inside the Result field.
- Add the variable
-
Add an If activity below the Get Event Info activity.
- Add the expression
MouseEvent.KeyModifier = KeyModifier.Ctrl
in the Condition field.
- Add the expression
-
Add an Assign activity inside the Then field of the If activity.
- Add the variable
LoopForever
in the To field. - Add the value
False
in the Value field.
- Add the variable
-
Add a Block User Input activity inside the Else field of the If activity.
-
Select the Do container inside the activity and create the following variable:
Variable Name
Variable Type
Default Value
ClickedElement
UiElement
Â
-
-
Add a Get Source Element activity inside the Do container of the Block User Input activity.
- Add the variable
ClickedElement
inside the UiElement field.
- Add the variable
-
Add a Highlight activity below the Get Source Element activity.
- In the Properties panel, add the variable
ClickedElement
in the Element field.
- In the Properties panel, add the variable
-
Add a Replay User Event activity below the Highlight activity.
- Run the process. The process highlights every element clicked using the left mouse button. The process stops when the Ctrl + left mouse click trigger is detected.
Activity triggered by mouse click or keystroke
This is how the automation process can be built:
- Open Studio and create a new Process.
- Drag a Sequence container in the Workflow Designer.
-
Add a Monitor Events activity inside the Sequence container.
- In the Properties panel, add the value
False
in the RepeatForever field.
- In the Properties panel, add the value
- Add a System Trigger activity inside the Sequencecontainer.
-
Drag a Sequence container below the System Trigger activity inside the Monitor Events activity. Name the sequence Event Handler.
-
Create the following variable:
Variable Name
Variable Type
Default Value
SystemEvent
EventInfo
Â
-
-
Add a Get Event Info activity inside the Event Handler sequence.
- In the Properties panel, add the variable
SystemEvent
in the Result field.
- In the Properties panel, add the variable
-
Add an If activity below the Get Event Info activity.
- Add the expression
SystemEvent.MouseEventInfo isnot Nothing
in the Condition field.
- Add the expression
-
Add a Message Box activity inside the Then field of the If activity.
- Add the following expression in the Text field:
"Mouse Button Pressed: " + SystemEvent.MouseEventInfo.Button.ToString + vbCrLf + vbCrLf + "Modifiers used: " + SystemEvent.KeyModifier.ToString
.
- Add the following expression in the Text field:
-
Add a Message Box activity inside the Else field of the If activity.
-
Add the following expression in the Text field:
"Key Pressed: " + SystemEvent.KeyEventInfo.KeyName + vbCrLf + vbCrLf + "Modifiers used: " + SystemEvent.KeyModifier.ToString
.
-
- Run the process. When a trigger is used, a message box is displayed with information about the detected mouse click or keystroke.
Here you can download an example.