Hi all,
I am unable to get exact use of “isolated” property of invoke workflow, please help with an example
Hi @kalv
See here
You can create workflows using the web in which do some stuff in the main workflow with a website and do some more stuff in the invoked workflow on the same website and checked the Isolated property checked
Above image is an simple example
- Create a workflow main which will Type something in google search bar
- Create a separate workflow which will Type something else in same textbox
- Above workflow will be invoked in main with Isolated as checked and then main workflow will give a message box “done”
- The workflow which has been invoked, create some error in the selector of Type activity and run the main workflow
- It will run without errors
Thanks,
Prankur
I am not able to understand this ? will you please explain again this only !!!
Hi
Thanks for reply, but i am unable to get the example, could you please elaborate more.
In which situation we can use this property, benefits of using it.
If I’m understanding correctly, this would have a similar effect if you were to surround the invoke with a trycatch and no activities in the catch - an error would be caught, but nothing would happen and the process would continue.
Scenario:
You have one a large process, where one specific part frequently throws and error, but the error is minor and you are happy to pass over it when it occurs (not sure why!). Put only this section into an isolated invoke workflow, and if the task errors, it will not pass the exception up beyond the invoke (it is in effect ‘isolated’ to the smaller workflow), therefore allowing the full workflow to continue, effectively just ignoring the error in that section.
@PrankurJoshi - is this what you are saying?
If this is the case, I would prefer to surround the invoke in a trycatch instead of using the isolate function, this way you have the option of doing something if the error occurs by using the catch of the trycatch (i.e. find the info elsewhere, or make a note in the status of the transaction that that element had failed)
Agree with you! is there any other use of using the isolated property of invoke workflow you have come across?
I can’t see why to be honest, if you are so certain that you want to ignore a very specific error, I would set the ‘ContinueOnError’ property of the activity itself to true, that was it will only ignore that one error, but catch others you may not know about
Hey guys,
One of the helpful cases is like using Isolated within Parallel scope to monitor for some unexpected popups while not affecting the actual process.
Sample scenario for this could be unexpected javascript popups while filling out a web form which can be very annoying.
Here you can use Isolated activity as a listener which will never interrupt your actual process when it fails.
Below is a screenshot explaining the case
Thanks…
Hi, I add a Throw activity inside an isolated invoked workflow, and the main workflow still got the exception. Any idea why? As you guys discussed before, I thought there’d be no exception thrown to the process.
Same for me, a bit confused
I tried the same as u have mentioned. I am getting an exception even after selecting the ‘isolate’ checkbox. Can you share your workflow?
Hello, a bit late but for Parallel activity to work you have to write “True” in the condition property of the Parallel activity. That is why it was throwing an exception
No, it’s not the case. As described in the topic, I understand that exception that happens inside an isolated workflow will not affect the main workflow. It’s like the activity invoke-isolated-workflow is placed inside a try-catch without rethrowing exceptions.
But I think check box ‘Isolated’ just means that the wf will run in a separate window, nothing to do with exceptions
Hello,
The isolated property is used when you want that specific workflow to run as a separate system process.
Isolated - If this check box is selected, the invoked workflow runs in a separate Windows process. This helps with isolating a faulty workflow from the main workflow
By faulty, I think they are referring to a workflow that can cause the robot executor to crash, and not to the business or system exceptions that can occur during the process.
The Isolated check is normally used with the Timeout feature => this will ensure that if your workflow is stuck (like an unexpected pop-up → try this with an Input Dialog window activity) your workflow will end eventually with a timeout error and not get stuck in an infinite loop (until something happens with that pop-up window). Try invoking a workflow with just Input Dialog activity, with both Timeout & Isolated features checked and then without Isolated check and see what happens => then you will get it. This would actually be a best practice to have for your Process.xaml workflow if you know how long one transaction should take.