Implementing a workflow

Hello, I am a newbie in Mendix. I am exploring the basic features of the platform. I couldn't figure out how to implement an approval process. Microflows doesn't seem to have user assignment. I want User "A" to approve or reject an order, based on his approval, the order is sent to his manger. And the process flow should depend on the manual approval process. Can it be implemented in mendix? If yes, could you give me where I should start with. Thanks in advance. Cheers, Murali.
2 answers

This sort of functionality can be easily added in Mendix. For example, take the last part of your requirement to reassign to the manager. You need to create an association between the Contact and his manager (probably by creating an association between the contact entity and itself). You can then link each contact to the contact who is its manager, and at that point in the process, retrieve the apprioriate manager by using this association.

For the rest, I assume you have some sort of request entity, and an approval entity (with an association to the contact who will complete the approval). If you have for example an association between the approver (contact) and the request type, you can use this to retrieve the correct approver for the current request, or to filter the list of possible approvers by using it in an x-path constraint. The key to this is setting up an appropriate data model and entity relationships.

To make changes like assignment 'automatically' when a certain condition is met, you should place this logic in a before commit microflow which will run every time the object is modified.


I assume that the approval process is status based.

If so you can use different statuses (for example Check order (where the user can approve or reject the order) and validate order (where the manger has to do things).

Each status can be shown in a different menu item (represented by a grid with a constrain on the status). The menu items can be assigned to a single user or a group of users)