cancel
Showing results for 
Search instead for 
Did you mean: 

Which Option Would be correct ?

dilshad_khan
Level 4
17038.png
Hi Team,
Which Option would be correct one  ( A,B,C or D )  ?


------------------------------
Dilshad Khan
------------------------------
12 REPLIES 12

Mukeshh_k
MVP

I would go with - "The current configuration is missing an exception block" as the question says that the intention is to preserve the exception and when a re-throw exception is kept to preserve the exception, the resume stage although would kill the exception but the message will be preserved(as performed and found in Blueprism current version 6.10.5). Only the global recover should have no blocking around it and should end gracefully without a re-throw attached to it in the last to avoid infinite looping and this above flow doesn't seem to have block around it - this re-throwed error will be again caught in the recover stage and will end up in infinite loop as I tried and tested.

"The current configuration is missing an exception block" seems to be the wise choice, I have eliminated my choice to use a calculation stage to store the exception from ExceptionType(), ExceptionDetail() and ExceptionStage() as it purposely says the intention is to preserve the exception by a re-throw which I am guessing might be used for a global recover but above recover should be under block.



------------------------------
Kindly up vote this as "Best Answer" if it adds value or resolves your query in anyway possible, happy to help.

Regards,

Mukesh Kumar - Senior Automation Developer

NHS, England, United Kingdom, GB
------------------------------

Regards,

Mukesh Kumar

Also, I would advise to replicate these flow and test it for your own knowledge, preparation on how these flow behaves with different scenarios. Just knowing the correct answer wont do any good without actually knowing "Why".



------------------------------
Kindly up vote this as "Best Answer" if it adds value or resolves your query in anyway possible, happy to help.

Regards,

Mukesh Kumar - Senior Automation Developer

NHS, England, United Kingdom, GB
------------------------------

Regards,

Mukesh Kumar

Thank You Mukesh,
Understood, and perform the same , if there will be bo block the code would stuck in infinite loop .

On Sat, Apr 15, 2023, 3:59 PM Mukesh Kumar via Blue Prism Community <Mail@blueprism.email> wrote:
I would go with - "The current configuration is missing an exception block" as the question says that the intention is to preserve the exception...
17028.png

Blue Prism Product

Post New Message Online
Re: Which Option Would be correct ?
Reply to Group Online Reply to Group
Mukesh Kumar
Apr 15, 2023 11:28 AM
Mukesh Kumar

I would go with - "The current configuration is missing an exception block" as the question says that the intention is to preserve the exception and when a re-throw exception is kept to preserve the exception the resume stage although would kill the exception but the message will be preserved. Only the global recover should have no blocking around it and should end gracefully without a re-throw attached to it in the last to avoid infinite looping and this above flow doesn't seem to have block around it - this new error will be again caught in the recover stage and will end up in infinite loop.

"The current configuration is missing an exception block" seems to be the wise choice, I have eliminated my choice to use a calculation stage to store the exception from ExceptionType(), ExceptionDetail() and ExceptionStage() as it purposely says the intention is to preserve the exception by a re-throw which I am guessing might be used for a global recover but above recover should be under block.



------------------------------
Kindly up vote this as "Best Answer" if it adds value or resolves your query in anyway possible, happy to help.

Regards,

Mukesh Kumar - Senior Automation Developer

NHS, England, United Kingdom, GB
------------------------------
  Reply to Group Online   Reply to Group via Email   View Thread   Recommend   Flag as Inappropriate  

Babjee24
Level 7

Hi @dilshad_khanI'll go with you as Option A reason being that, according to the best practice there should be a global catch on the main page that catches all the unhandled exceptions that bubbles up to main page and  following the Recover (in between we can have a notification logic that send Alerts/Emails/Notifications) a Re-Throw is present in order terminate the process gracefully.
But here as we can see a resume stage is present it ends up in infinite loop as the ExceptionType(), ExceptionDetail() and ExceptionStage() are nullified by that resume stage and when Re-Throw is used that creates a new exception all together since, ExceptionType(), ExceptionDetail() and ExceptionStage() will not have any values to throw. Option A describes all these inclusively and hence I feel Option A as the best choice.



------------------------------
Babjee Vangipurapu
Senior RPA Developer
Wonderbotz
India
------------------------------

Babjee Vangipurapu
Senior RPA Developer
India

Hi, 

Option 1 is correct as if you want to rethrow and use the checkbox Preserve the current exception after Resume stage there is no current exception.

regards

Zdenek



------------------------------
Zdeněk Kabátek
Head of Professional Services
NEOOPS
http://www.neoops.com/
Europe/Prague
------------------------------

Hi,

Good Day !

The answer might be correct, but if i am putting the exception block the it is running well and throwing the exception on exception stage 



------------------------------
Dilshad Khan
------------------------------

Hi dilshad,

In my opinion statement wise both   option A and b are correct  but based on the question  I will go for option A. 



------------------------------
-----------------------
If I answered your query. Please mark it as the "Best Answer"

Harish M
Lead developer
America/New_York
------------------------------
----------------------- If I answered your query. Please mark it as the "Best Answer" [FirstName] [LastName] [Designation] [JobTitle] [City] [State] [Phone]

Hi, Dilshad,

on a main page you can have recover stage without any Exception Block as you want to catch all possible exceptions and then terminate the process (for example in case the applications could not have been launched). So the option 2 is not correct one even though it may seem so.

Regards

Zdenek



------------------------------
Zdeněk Kabátek
Head of Professional Services
NEOOPS
http://www.neoops.com/
Europe/Prague
------------------------------

Mukeshh_k
MVP

Hi @dilshad_khan - Option 1 can not be the right answer (as performed in Blueprism 6.10.5/7)- Resume should have diffused the error but it isnt doing it currently with checked preserve 🙂 If you read it correctly - it says that the intention of the rethrow is to preserve the exception details(which indirectly means the checkbox for preserving the exception details is ticked) - Just try doing it yourself -no matter although resume kills the exception, if the checkbox is ticked the exception details of current exception are always available when re throwing in the current blueprism version. 



------------------------------
Kindly up vote this as "Best Answer" if it adds value or resolves your query in anyway possible, happy to help.

Regards,

Mukesh Kumar - Senior Automation Developer

NHS, England, United Kingdom, GB
------------------------------

Regards,

Mukesh Kumar