Extending User Management

ORIGAM root model packages come with user management tools included. One of the usual tasks your customers will request is to store enhanced information in your user database (e.g. phone number, assignment to teams, etc.).

Following are the steps you need to do in these cases.

Prerequisites

The following steps require you to use the Root Menu package.

If you do not use this package and you created your entities/screens, you will need to implement the similar logic as described here but using your modelling.

Add new fields

When adding new fields to your user profile, add any desired fields to the Data > Partner Management > BusinessPartner entity.

Extend the UI

After adding more fields you need to extend the default screen which displays just the basic information.

  • Locate the User Interface > Screen Sections > __System > Users
  • Right click and select New > Alternative
  • A new screen designer will open and you will be able to change how your screen looks like
  • Save the screen section.

Now your new design will be used instead of the default one.

You need to do the same in the following sections:

  • User Interface > Screen Sections > __System > Users - Appears in the user management screen
  • User Interface > Screen Sections > Security > UserProfile - A screen where the active user can change his details
  • User Interface > Screen Sections > Security > BusinessPartner_NewUser - A screen where new user is being created

Provide Defaults

If you added some mandatory fields for your users you need to provide some default values, otherwise, e.g. workflow for creating a new user will stop working.

To do this add the defaults under Data > Data Structures > Security > UserProfile_New > Defaults. All your defaults will be applied when creating a new user record.

Provide Filters

You might indicate the user records in the BusinessPartner entity by a flag or a category field (e.g. bool IsUser).

To display just these records in the user management screen you need to provide a corresponding filter under Data > Data Structures > Security > UserProfile > GetUsers.