Question

Fallback Confusion - Unattended Bot

  • 7 February 2024
  • 10 replies
  • 45 views

Userlevel 4
Badge +10

Hoping someone can provide a bit of an explanation on why fallbacks act a certain way when a wizard is initiated via the API or (I assume) the Nintex Console.

It seems that if, for example, an object fails to be detected and the fallback for that is set to raise an error, that an error isn’t actually raised. Instead, the wizard just fails and closes. I assumed that one of 2 things would happen, neither of which did. 

  1. The wizard would pop up with a box indicating what it was trying to find, similar to the “Do It” version of running a wizard. 
  2. The wizard would move to the Wizard end unsuccessfully section, since it is apparently going to end with a fail, which seems to be an unsuccessful end. 

However, since neither of these option happen, I’m a bit unsure what the point of the default “raise error” fallback is when it comes to these unattended wizards. 

 

Thanks!


10 replies

Userlevel 1
Badge +6

Hi bsikes

When the fallback is raised (window or object not found or window blocked, etc), you would see such a message when running it in debug mode in the studio. 

You can also write the fallback failure to the log by using the AC “log an action” to the console - but you’d have to insert the error variable there.

In my training sessions we speak about various fallback options, such as “go to step” in case there’s a popup or something the robot needs to deal with.

You’d have to record those popups and set them as fallbacks. 

How are you using fallbacks? Have you tried debugging in Studio and added the “view variable” list to see the exact error?

 

Hope this helps a bit.

 

Userlevel 4
Badge +10

Hi @gobitz 

My expectation was that if the fallback option was set to “Raise error”, that when an object would fail to be detected, it would pop up with the window that shows what it was trying to find. I believe it also usually allows you to retry the step, or go to a different step manually. 

The issues that we’re seeing, aren’t ones that come up when running in Studio or developing the wizard originally. So that box is helpful to see the problem so that we know what to fix, but also to get the wizard back on track without needing to restart it. 

We’ve got a lot of different fallback options used throughout our Wizards, I just assumed that the behavior of “Raise Error” was different then it seems to be. Or at least, “Raise Error” behaves differently between launching it via the “Do it” option and through the API, which I didn’t expect. 

Userlevel 1
Badge +6

Have you tried using the automation template?

Userlevel 4
Badge +10

I don’t believe so - We’re making all of our Wizards from scratch, or copying from existing Wizards that we’ve made from scratch. 

Userlevel 1
Badge +6

If you would like, I can share the template with you / set up a session so you can understand how to work with it and see all error handling in a csv file (automatically created). 

Userlevel 4
Badge +10

@gobitz So… I knew this sounded familiar, and I found an older forum post about this topic here: 

 

I attempted to import the Kryon_Library_Base_Templates_21.10_and_later.dwiz template, and it imported with no issues!… however, I’m now unable to expand the library I attempted to import them into, meaning a lot of our wizards, including the ones I just imported, are not accessible.  I presume that if I delete the wizards i just imported, we’ll be able to access the library again. Unfortunately, I don’t know how to delete the wizards, since I can’t access the library. Any suggestions?

Userlevel 4
Badge +10

I’m making a support case regarding this, as I can’t find a way to access our wizards in the library we imported the template into. 

Userlevel 4
Badge +10

@gobitz  Hoping to verify something - If RPA can’t determine which window to use, because there’s multiple windows that meet the criteria, is there any fallback that can be used for this?  

 

 

In my situation, a web browser is being utilized. My hope was to have a fallback that would simply close all Microsoft Edge sessions, then go back to the step that would get to the correct page. However, it doesn’t seem that this fall back is being triggered - the workflow just fails without any reason in the debug trace. 

 

I assume steps could be put in place before the action to look for the window and take action if multiple are present, but that would be a bit tedious to do for every action that targets a window. 

 

Thanks!

Userlevel 1
Badge +6

Hi @bsikes 

You are right: fallbacks need a window (url) or screen + object (in case there’s a visual recorded click). So if your window data is very generic (contains instead of “equals”) then the fallback mechanism won’t help. 
 

run your wizard in debug mode in studio to see if the fallback works.

Maybe one option is to duplicate steps and then be stricter in your window data settings. The fallback can then be set as “go to step”. 
 

another option could be to use embedded wizards and when window and/or object aren’t found, end the embedded wizard. 
 

Btw: you can use powershell (run script) to kill the browser in the advanced command for a successful fallback. 
 

Hope this helps. 
 


 

Userlevel 4
Badge +10

@gobitz The powershell command is what I’m already doing to kill the browser - it just doesn’t trigger since it doesn’t actually count as a fall back. Unfortunately, being more specific won’t help, because the windows truly are duplicates of each other. 

I did test it with two windows being open - While running from Studio or a bot in “Do It” mode, it will ask which window is being targeted. Unfortunately if running via the Console or the API, the Wizard just fails, and I don’t think I have an ideal way around that scenario, since none of the fallbacks apply. 

Reply