UiPath Community 2023.8 Release

UiPath Community 2023.8 Release

Studio and StudioX

Access a variable’s properties in the Use Variable menu

You can now drill into a variable’s properties through the Use Variable menu. Simply click on the Plus sign and select Use Variable which will open the same interface as below, with the enhancement to access a variable’s property. This should help especially with more complex types as you can.

In the use case below, I’ve used an Extract Data Table activity that outputs the result of the extraction. I can then configure the extraction result (a data table) to a Write Data Table to Excel file activity and log additional information to help clarify the workflow.

This feature is available on both Studio and StudioX on both Windows and Cross-platform projects.

Support local files in Windows projects for IResources

On Windows projects, you can now consume local files for activities that are using IResource type resources.

Expand the default Builder on StudioX Windows project

For StudioX Windows projects, clicking on the icon now opens the default builder when available. This should make it easier to access the Text Builder, Numeric Editor, or Condition Builder, similar to Cross Platform projects.

Migrate from Cross-platform to Windows projects

You can now convert a Cross-platform project to a Windows project. This brings more Windows-only functionalities and activities, such as Excel Desktop, Desktop UIAutomation, Triggers, or Forms. However, please note that execution can only take place on a Windows-installed robot.


Search activities from all packages now also in Windows projects

Finding the right activity for your project is now easier with the ability to search from all available activity packages without needing to install a package in advance. This feature is now available in Windows projects for both Studio and StudioX.

The Activities panel groups activities that are available in your project under the label Installed and activities that are included in uninstalled packages under Installable. To make searching even easier, activity packages also have more readable names.


The Add Activity search bar now provides a clearer distinction between activities that are already installed and those that are available for installation.

New System activities

Return activity

The highly requested Return activity is finally here. Simply drop it somewhere in your invoked Workflow and the execution will seemingly return to the parent workflow.

Note: the Return activity requires Robot version 23.8 or newer.

Extract Date and Time from Text activity

It allows you to extract multiple dates from a piece of text.

It supports multiple standard date and time formats out of the box with multiple localizations, as well as custom format strings.

And to top it off, the experimental, read-only Preview property allows you to see the expected output during design time (assuming a static string is provided as input).

Format Date as Text activity

It allows you to output your DateTime variables to text.

It supports multiple standard date and time formats out of the box with multiple localizations, as well as custom format strings.

It also includes the new Preview property.

Add or Subtract from Date activity

It allows you to modify your DateTime variables by either adding or subtracting a specific unit of time from the input.

It also includes the new Preview property.

Split Text activity

It allows you to easily split your text based on a specified delimiter (either choose one of the predefined ones or use your own custom string).

It also includes the new Preview property.

Change Case activity

It allows you to easily toggle between different cases of text. The available options include: Capitalize Each Word, lower case, Sentence case, and UPPER CASE.

It also includes the new Preview property.

Time Trigger activity Improvements

We have redesigned the Trigger Activity in an attempt to make it less confusing and more compact.

It now also benefits from the Preview property which will display the next 3 potential trigger runs after the activity is configured. This includes a preview of the next runs for the advanced custom cron expression input.

Coded Automation

After releasing Coded Automation in a public preview in 2023.6, we have seen a lot of interest from our community. Based on your feedback we have been able to fix a number of bugs and introduced some new capabilities.

Access Object Repository Selectors via dot-syntax

So far, in order to use selectors within your coded automation, you had to provide the selectors name as a string. While this approach makes it very easy to get started, it is prone to spelling errors and changes within your repository. This is why we additionally added the possibility to access selectors directly as objects.

Indicate Errors

So far, syntax errors were recognized and the corresponding chars underlined red.
However, in case your document is very long, it was very hard to spot those problems easily. In order to increase visibility for syntax errors, we added a visual indication at the right end of your editor window. This should help you quickly identify problems and fix them.


What is more, on ‘Analyze Project’ we are listing code related problems directly in the Error List panel, including the affected line number. By clicking on the problem, the affected code line while be focussed within your editor automatically.

Convert to Test Case/Workflow

Like low-code automations, you now can convert them from a workflow to a test case or vice versa with a click of a button.


Show Code Documentation on F1

You need some more info on a certain class or method? No problem, just select the class/method in your designer and hit F1 on your keyboard – this will automatically open up the corresponding help documentation.

Take Screenshot

The capability to take screenshots via UIAutomation that has been missing so far for coded automation. We received multiple feature requests for it which is why we added it within the latest package.


Set as/Ignore from Publish

Like for low-code Test Cases, you can now decide if you want to include certain Test Cases that might still be in work from actually publishing them to Orchestrator.



Performance improvements

Decrease memory usage

:rocket: Starting with 2023.8, as part of our performance improvements initiative, we addressed and resolved all memory leaks resulting from tooltip usage, different user actions, such as open process details, sign in and out, refresh policy, etc. :tada:

Improve startup time

:stopwatch: We added an animated loading screen to reduce the time it takes for the Assistant window to show up after being started (around 2 seconds, depending on your machine).

Document Understanding

We are excited to introduce the first generative capabilities in our Document Understanding Activities package v2.3.0 - having the Classify Document and Extract Document Data Activities now empowering users to input prompts based on which to either classify the document or extract data from it, making the process more intuitive, efficient, and flexible.


Please tell us what you think

Which features excite you the most and you are going to try right away? We want to hear what you think! Please use the image button below :slight_smile:


This is my favourite Access Object Repository Selectors via dot-syntax :orange_heart:

1 Like

Hi @loginerror ,

Tried Using the selectors directly from object repository as Object but showing below error

Help me what mistake i am performing here ??



My favorite in this version is “Search activities from all packages now also in Windows projects”.
For example, if i want to use Http client activity for a while, until now, i would search google for a part of the activity name and a specific phrase to check the package name and which Feed, then use Package Manager in Studio to find the package name After specifying the Feed and installing it, i can finally add the activity i want to use. In this case, if i click the add activity icon and enter part of the activity name, candidates will appear, and it is very easy to install the package automatically just by selecting it. After that, just adjust the version of the package. I am very impressed that I often think about such a function and implement it.

Hi @AutomationX_by_Kiran,

You are seeing the error because the typed Object Repository descriptors are meant to be used with UIAutomation 23.8.x-preview and above, which is still pending to be launched due to some unforeseen delays, and the old 23.6.x-preview UIAutomation API still used string instead of the new IElementDescriptor for getting targets.

For now, you can add .GetDefinition().DisplayName to the descriptor to make it work with the old UIAutomation preview versions, however your code should work as expected once the new UIAutomation preview comes out (expect it very soon).



Hi @AlvinStanescu ,

Thanks for the update.


Hi @loginerror,

I tried Searches for PDF activities it’s Showing only activities related to Document understanding.

When I Specifically search for Read PDF text Activity I am getting Search in available packages.

When I observed my activity panel My understanding is for activities Installable I can see the activities which are cross platform compatible.


I am not sure if I am missing something while searching for PDF activities.


Hi @loginerror,

This feature was already present right? Not sure why it is added in new releases section.

I was assuming that this post is for New features and New releases. Can you please help to clear my confusion?


@shreyash_shirbhate this feature is access for coded workflow and coded test case. Previously this feature is available for .xaml file.



Okay got it. @pathrudu


1 Like

Is there any way to run another coded workflow using dot-syntax instead of filename ?
What I write now is RunWorkflow("SubWorkflow.cs");
What I want is RunWorkflow({namespace}.SubWorkflow);
And is it possible to run a workflow in a custom class?

1 Like

Nice Feature - but could not find a way to provide a custom format. can you pls guide

You can simply type it in the property, with no quotes. We will try to improve the visibility of this capability with the next update.

For example, replace any of the drop down options completely with dd-MM-yyyy and it will recognize any date in that format.

This works, However, just have additional feedback - let’s say we want to get this format as a variable or something coming from a different flow/config - would be good if we could have the option to pass the variable.


**Regularly getting this Error post update **


The specified Visual is not an ancestor of this Visual.

Error: System.Exception: The specified Visual is not an ancestor of this Visual.
at System.Windows.Media.Visual.TrySimpleTransformToAncestor(Visual ancestor, Boolean inverse, GeneralTransform& generalTransform, Matrix& simpleTransform)
at System.Windows.Media.Visual.TransformToAncestor(Visual ancestor)
at System.Activities.Presentation.View.RubberBandSelector.Select(Boolean isCtrlKeyDown)
at System.Activities.Presentation.View.RubberBandSelector.OnScrollViewerPreviewMouseLeftButtonUp(MouseEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler), HResult -2146233079

Thank you for your feedback.

New version of System 23.10 will have this implemented :slight_smile:

I passed it over to the team and we will fix this.

1 Like