Hi guys.
I have a question.
Below is a UiPath Academy Question - REFramework.
================ An automation processes emails. A check done in the Process state determines that the numeric values from an email exceed the set threshold, in the Config file, for the processing. Which transition will execute next?
The answer is…
Transition: Successful
Next state: Get Transaction Data
But, Why is this not a business exception?
The value exceeds threshhold setting configured at the initialization state.
Threshold Exceedance as Part of Normal Flow: The scenario where the numeric values exceed the threshold might be considered as a valid and expected condition that doesn’t disrupt the normal flow of the business process.
Configurable Thresholds: If the threshold is configurable in the Config file, it may be expected that values can vary, and exceeding the threshold is within the acceptable range of variations.
Handling in Normal Flow: The design choice could be to handle this condition as a regular part of the processing, allowing the automation to continue with the next steps rather than interrupting the flow with an exception.
I agree this isn’t a good question if thats the correct answer, I would throw this as a failed transaction due to Business Rule Exception but without further context of what the business rule is and what this expected behaviour is.
Its not uncommon for them to have vague, misleading or outright wrong answers.
I recently saw one asking about what states can be expected in a state machine (no mention of it needing to be the state machine in the REFramework), which misses the idea that a state machine is an abstract concept and can have any state in them depending on what it models, as if the only state machine is the REFramework one.
All of option was below.
'-----------------------------------------
Transition: New Transaction
Next state: Process Transaction
Transition: Successful
Next state: Get Transaction Data
Transition: System Exception
Next state: End Process
Transition: No Data
Next state: End Proces
'------------------------------------
I think the question was asking “most appropriate” answer, so option B is answer…
I understand their intent, but I am still confused
And I agree with your comment, they must give us more context.
otherwise more explanation why that is answer…
The threshold value can be changed by the user according to their requirement so as per my knowledge I consider it as a successful transaction only. If you want to throw it as an business exception then we need to place a throw activity. The placing of throw activity is completely based on the developer.
It sounds like it could be a Business Exception, but there is too little context. If there was explicitly stated that there is a Throw activity with BE or regular system exception, then answer would make more sense. Here we can only guess what question creator had in mind.
The question / answers are indeed a wee bit too vague. The ‘check done’ might have been a simple if/then/else check with a logmessage attached to it. Depending on the assumption that is being made there it might have been ‘succesful’ as well, since the concequence of the check is not mentioned.
And I agree as well: if it is a controlled check of exceeding a set threshold of a numeric value, a business exception would be better if not best. (A REF solution might needlessly retry the item leading to the same result, which would be waste)