We have developed BOT performance tracker workflow to update the excel as status success/exception/Failure at end of each transaction.
We have set MaxRetry count as 2 in orchestrator for process.
Bot Tracker is updating perfectly for Success case and Business exception
For success :- Invoked at end of the “Process.xaml”
For BusinessException : Invoked in else block of validation part.
Whereas I am not sure in which state I need to invoke this bot performance tracker workflow file in case of system exception occurred even after maxretry 2. and update Bot status as FAILED and Bot comments as system exception message
Global Handler will capture any exception at project level.
In the Else part you can invoke the status update xaml (replace highlighted Write Line activity). Else part will be executed after all retries are completed
@AdityaVN … I am not sure in which workflow file in REFramework has this option. Can you please let me the exact place/workflow file in REFramework to invoke the Bot performance tracker workflow?
I hope you would have traced the system or business exception when any of the activity fails either with application level or data level
And when such failure occurs you would have surrounded that with a TRY Catch activity and if fails goes to CATCH block
There use THROW activity for both system and business exception
Like if you feel it is of system exception then mention as
New system.Exception(“bot failed with system exception”)
Or if it is because of business exception then mention as
New BusinessRuleException(“bot failed because of business rule exception”)
Now if this entire try catch is called with a invoke workflow file activity then I believe you should have surrounded that with a try catch
In that catch block select exception type as System.Exception for system exception
And Browse for BusinessRuleException for business exception
Inside the each of the catch block use a assign activity like this
systemexception = Exception
Where SystemException is of type System.Exception
And similarly inside the business exception type catch block use
BusinessException = exception
—now these two variables will help on tracing the type of exception
Use a if condition like this
SystemException is nothing
If true it goes to then block where update your tracker accordingly