Much like every site on the internet, we use cookies to help analyze traffic and improve our website. As outlined in our privacy policy, any information is only used internally and is not shared with outside organizations.
Learn More

Synchronization

Overview

Synchronization is about making sure your process is not attempting to perform actions on the application before the application is ready. Real people perform synchronization automatically. We know a busy cursor means to wait, and we never try to click a button that isn't present on the page. AutoBloks will attempt to do most of this synchronization for you, but sometimes a little helping hand is needed.

Understanding Timeout

The synchronization timeout is the amount of time AutoBloks waits to perform an action before giving up. This means if you try to click a button that doesn't exist yet, AutoBloks waits patiently for it to appear before logging an error that the element was not found.

Default Synchronization Timeout

The Default synchronization timeout setting is configured on the Run tab of the Options dialog. You access this dialog by selecting File -> Options on the Command Bar. This is the value that controls overall synchronization timeouts.

The current setting for Default synchronization timeout is available using the Session Variable {DefaultSyncTimeoutSeconds}.

Activity Timeout

Some Activities allow you to specify TimeoutSeconds as an Input Argument. When not populated, the Default synchronization timeout will be used. Otherwise, you can provide any value you feel is appropriate for your Activity Call. Long-running processes may need a longer timeout, while responsive parts of an application may need a shorter timeout.

Be careful setting long Default synchronization timeout values. When executing activities like Does element exist, AutoBloks will allow up to the Default synchronization timeout for the element to exist before assuming it is not going to be displayed. This can increase the overall execution time and is an example of when you might want to specify a non-default timeout when calling the Activity.

Activities

Several Activities are available for use in your Process to assist with synchronization:

Activity NameUsage Scenario
Wait until element existsIf you need to wait for a page to load or a process to complete, there may be an element that appears when this condition is met. Use this activity to wait for that element to exist.
Wait until element no longer existsUse this activity if there is a busy indicator or other element displayed during an operation, and you need to wait until it no longer exists.
Wait for property valueThis activity can wait until the property of an element meets a condition you specify. For example, you could wait until the text of an element changed to an expected value.
Wait for expression value There are many Variables available that can be evaluated using an Expression. Some of these variables have values that change over time. For example, if you needed to make sure your process started at the beginning of a minute, you could wait for the expression {CurrentSecond} to be equal to 0.
Wait This activity simply waits the specified amount of time. This can be useful if you need to place a small delay between Activity Calls to ensure the application
This activity is most useful for small delays and is why the time is specified in milliseconds. There is almost always a more appropriate Activity to use for longer synchronization operations.