How to administrate non-related entities using an administration panel

Difficulty level: Medium
Time: 2-3 hours

Bizagi portal offers a very easy way to manage and maintain reference data that is usually stored in Parameter entities. This can be done through Admin > Entity menu.
In other cases, as a developer you will be challenged by the circumstances to allow Business Users to administrate information stored in Master entities. At the moment Bizagi doesn’t offer a built in solution for this situation. As I mentioned above, this works only for the Parameter entities.

So how can you do it?

How can Business Users administrate data stored in Master entities?

My challenge was to come up with a solution that is easy enough and intuitive to most users.

After many hours of thinking and many attempts I come up with the following work-around.

First, create a new Stakeholder. Select the users you want to have access to the Administration panel and add them to the newly created Stakeholder.
Second, build the Data model in such a way that will allow you to display the Master entity as a collection. The Administration panel should allow you to Add and Update records from the collection.
Third, create the Interface that will allow Business Users to perform the above operations. Make sure to apply all business rules using Bizagi validations.

Demo

First step

Create a new Stakeholder (Business Administrator).

Second step

Build the Data model. Create 2 new Master entities called Administration Entity  (mAdministrationEntity) and Client (mClient). The later is the Master entity we want to administrate. The Administration Entity will have a collection of Clients. mAdministrationEntity -> * mClient.

Using the SOA layer, add a new record to the Administration Entity (bFlag is one attribute of the mAdministrationEntity).

<BizAgiWSParam><Entities><mAdministrationEntity><bFlag>true</bFlag></mAdministrationEntity></Entities></BizAgiWSParam>

Third step

Create the interfaces. Go to Experience Designer, select the Business Administrator Stakeholder, go to My Searches panel and create a new Search. Call it Administration Panel. The new search will appear in the top-right corner search field (next to the user icon on the top-right side of the page). Select the entity on which you want to perform the search (mAdministrationEntity) and create a new form. Next, go to Actions and create a new Action. Call it Administrate Clients. Enter the entity where the action is executed (mAdministrationEntity) and create a new form. The form is the interface where the Business User administrates the Master entity called Client. Drag the collection into the form and configure the table to allow the following actions: Add and Update. For best practices, the Business Users should not be allowed to delete any records. They can update the entity and mark specific records as Disabled.

Forth step

Test the final solution. Go to Admin > Stakeholder menu, find the Business Administrator Stakeholder and add your username. Next, go to the search located on the top-right side of the website and select the magnifying glass. You should be able to see the search you have created (Administration Panel). Open the search and select the ‘Search’ button. On the record found, select the action Administrate Clients. The action will open a pop-up form that allows you to Add or Update the Master entity.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>