Hi there!
We currently have a situation with a customer where we took over an invoice workflow with several approval layers. These approval layers are all user-based but the layers imply some sort of higher hierarchy - e.g.
Layer 1: Basically everyone who's allowed to order on behalf of the company can be chosen as an approver.
Layer 2: Only a few employees can be chosen as an approver. (basically all "higher ups").
The main issue we have here that we cannot assign the user's tasks to the role itself, because that would imply that every user of this layer can see the task which is obviously not what you'd want with an approval process where the approval is and should be user-based.
However, the main issue we currently have is that the substitution in case of absences can only be chosen for the user, not for any context because Axon Ivy has no concept with user assignments that a user is executing this task in the role of layer 1 or layer 2 because this is defined by the process, not any task assignment, and sadly, the customer does not have same hierarchy substitutes for every approver leading to an undermining of these layers which is not wanted.
I know that Axon Ivy 12 does support multiple security members as activator, yet, I still don't think this would solve this particular issue because then it would still be assigned to the role which is just a user container for a select and not a real role intended to be used as activator.
Knowing, that I could to everything manually (implement an absence dialog which would heed the process step one task is currently in and then reassign the task), I do not think this is something I should be doing.
Does anyone here has a good idea how to solve this to satisfy the customer's need without having to rewrite the whole absence management to include the process step?
My best guess currently is some sort of cronjob or hook on the absences which would check for a role substitute and then delegates (?) the task, but this would be prone to be bad because as soon as the original activator returns, it's not assigned to him and therefore I'd also had to implement the reassignment in case of an absence.
I think that some sort of context to an user assignment might be a good addition to the Axon Ivy platform, e.g. "user function" or "user role" - but I also understand that this is a very specific and not necessarily generic requirement.
Thanks for your input!