Extending the available application to another set of users

0
Hi All,   I have a module designed and developed for a department. This has 2 roles admin and user. The Admin is create the task with team members. The team members (Users) are updating the task by managing the activity. Finally they have to close the each activity and task. The Admin is tracking the each task every month.    Now same system has to be extended for other departments. I can clone the module. IS there any other way instead of cloning ?   Regards Sudhir
asked
6 answers
1

Hi Sudhir,

 

Instead of cloning the module you can make it multi departmental by adding a Department entity and linking it to Users and Tasks. Use XPath constraints and access rules to restrict visibility per department. using this way you reuse the same module logic for all departments and reduce maintenance and duplicate logic.

 

But If your application is already on prod and have lot of data created. You need to map the older data to suit the new logic as well by using microflow scripts which you can run.

 

Hope this helps!

 

Thanks

answered
1

Hello Sudhir,

Cloning is not good idea,as suggested above you can achieve this by  Xpath or other role based approach for multiple department

answered
0

Reusing a Module for Multiple Departments Without Cloning – Best Approaches

Instead of cloning the module, consider the following scalable options:

  • 1. Add Department Entity & Association

    • Introduce a Department entity.

    • Associate it with Task, Activity, and User entities.

    • This allows you to filter data by department dynamically.

  • 2. Use Roles with Constraints

    • Define Admin_User and User_User roles per department, or manage access via XPath constraints using the department reference.

    • Avoid duplicating role logic by designing reusable microflows and pages.

  • 3. Parameterize Pages & Microflows

    • Design pages/microflows to work with a department parameter.

    • Load data conditionally using [%CurrentUser%] and associations.

  • 4. Use App Store Modules (e.g., User Management)

    • Combine your module with existing generic modules to manage users and permissions centrally.

  • 5. UI Filters & Navigation

    • Add a department switcher/filter for admins.

    • Dynamically show only relevant tasks per user’s department.

Avoid cloning as it leads to maintenance issues. A dynamic, association-based design makes your app easier to extend and scale across departments.

 

Regards ,

Menta Raju

answered
0

Hi Menta Raju,

 

I am trying to follow the above steps.

 

In the module, There are 2 user roles, That is Admin and User. The Admin user is monitoring the system, creating the new tasks and sub tasks. The user will act on their respective sub tasks. 

 

Department A is using the module. Now I want to add department B, C etc. I wanted to make screen which list all the department for Administrators and respective department for users. Kindly guide me.

 

Regards

Sudhir

 

answered
0

Hi Ajay, 

 

I have entity called activity, where admin creates the activity.

 

Now, I have created a new entity called department and associated the activity with department (* -> 1). 

 

What have to write in the xpath to retrieve records for respective department ?

 

Retrieve entity activity where id = ?

 

Kindly help me. 

 

Regards

Sudhir

 

 

answered
0

Hi Ajay,

 

I am able to establish the association between between activity and department. 

 

Regards

Sudhir

answered