Hi,
My requirement is I need to handle the exception (Technical) which occurs in any node in a process and once exception occurs I need to follow a different flow to inform the end user about the exception occurred and complete the process. All the nodes are connected through activity chaining so in both success or error scenario an output is expected from the process.
Regards,
Balaji.R
Discussion posts and replies are publicly visible
Hi rp_balaji i agree, correct me if i am wrong, when you talk about Transaction, definitely you will be allowing standard amount of time for the process to complete it's processing, hence anyhow if you hold the process for that long amount of time, will cause you activity chaining break, and will assign an another task to the end user, hence user won't be informed through the interface, instead he need to pickup an another task else you need to send an email notification. Also when you talk about transaction, you must be very careful about performance, which you need to sacrifice if you want to go for timers. Let's say, there are 10,000 instances for your process in production, which means there are 10,000 active timers which will cause you lot of performance issues. So, instead of this the better way could be, create a task report for this Transactional Process (which only contains Transaction logic excluding User Input Task, and will be triggered only when User Input Task gets submitted) and capture it's start time then compare the time duration between it's start time and now() if it's more than your defined business transaction rules then simply get the process instance it and terminate it using subrocess Also, this an be automated using one Cleanup process, which will collect all this data, and if there are any process instance with matching criteria, simply terminate them, and before termination, get the initiator of that process and trigger an email post termination of this instance. Also, you can query for those processes whose status is Paused by Exception with in the context of this Transactional Process model, which will return you those processes which have failed during it's execution. I believe this could be the better approach, however it's your call, because you will have more understanding about your business requirement. This is just an another approach which can be feasible for your scenario.
Hi, onError only works if the process fails to start.
Correction. OnError also worked when there was an identity number generation issue.