versago:role_profile_user_configuration

This is an old revision of the document!


Introduction (Roles, Profiles, Users)

This document describes the steps for defining and maintaining Roles, Profiles, and Users in Versago.

Related Pages

The following pages contain additional information that may be helpful with understanding these processes.

Special Terminology

  • The term “objects” in this document is used in a general manner to refer to Versago Users, Reports, Forms, Dashboards, Banners, and News & Announcements items. When a function applies to a specific object, it is noted as such.

To Begin

This information is intended for Versago administrators. End-users do not have access to this function.

  • Click on the Admin link in the profile section of the Versago home page to access the Administration console.
  • Click on the appropriate link under the “User Setup” category of the menu.

Roles, Profiles, and Users

Roles, profiles, and users are maintained in the Versago Admin console, under the “User Setuup” category.

Some Versago security configuration items are dependent on other configuration items. For example, Roles are used in most configurations, and must be defined before they can be used. In addition, Profiles must be defined before they can be assigned to users. The sequence of the next three topics reflects these relationships.

Roles

The purpose of Roles in Versago is to define which users have access to which objects. Every object is associated with at least one role.

In many cases a role will be associated with multiple objects. Conversely, a given object may be associated with multiple roles. Some thought should be given as to how roles need to be applied.

Additional examples of how roles might be used can be found in Using Versago Roles.

  • Click on the Roles link in the Admin console to begin.

The Roles maintenance tool provides six functions.

  • Creation and maintenance of basic Role information.
  • Assign the role to users.
  • Assign the role to reports.
  • Assign the role to dashboards.
  • Assign the role to forms.
  1. A listing of existing roles is displayed when the function is opened.
  2. Click the [Add New Role] button to create a new role.
  3. Click on the link of an existing role name to edit the role.

Assigning a new role is most easily done using the process described here since all objects can be accessed from a single point.

Assigning roles to a new object is most easily done from that object.

Role assignments for Banners, News & Announcements, and Menus are only done from within the respective maintenance functions.

  • Click on the appropriate tab to create/maintain a role or associate the role with the various items.

User Roles

This tab is used to create or maintain basic information about a Role.

  1. Role Name is used to enter/update the name of the current role.</p>
    1. This value is required and can be changed at any time.</p>
  2. Landing Page Type is used to specify what object (function) is displayed to a user associated with this role first logs into Versago. Options are Versago Home Page, Report, Dashboard, and Form.
    1. This value is required and can be changed at any time.
    2. Note that the functions displayed for Report, Dashboard, and Form selection are only those already associated with the role. Assignment of these default values may have to occur once the role has been fully defined.
    3. If the user is associated with more than one role, the default object type is based on the first role in the list of assigned roles sorted in alphabetical order (by name).

Versago Home Page

This option displays the standard Versago home page. This is the default option when a new role is created.

Report

This option causes the designated report to be displayed when the user logs into Versago or clicks the logo to return to the home page. The “Landing Page” drop-down list displays all Versago reports associated with the current role for selection.

Dashboard

This option causes the designated dashboard to be displayed when the user logs into Versago or clicks the logo to return to the home page. The “Landing Page” drop-down list displays all Versago dashboards associated with the current role for selection.

Form

This option causes the designated form to be displayed when the user logs into Versago or clicks the logo to return to the home page. The “Landing Page” drop-down list displays all Versago forms associated with the current role for selection.

In the remaining tabs, select the checkbox to associate the object with the role or clear the checkbox to disassociate the object from the role.

Assign User

Use this function to associate/disassociate multiple users with the current role.

  1. All users, active or not, are displayed in the list. Associating a user with a role does not automatically make them active.

Report Roles

Use this function to associate/disassociate multiple reports with the current role.

Remember that reports used as look-up lists in forms or as sub-reports for other reports must also be assigned to the role.

Assign Dashboards

Use this function to associate/disassociate multiple dashboards with the current role.

Assign Form

Use this function to associate/disassociate multiple forms with the current role.

Profiles

Versago Profiles provide automatic filtering of data presented in reports. The difference between parameters and profiles is one of user control. Parameters are filters presented to the user, so they can control how the filtering occurs. However, with a profile the user cannot control how the filtering occurs.

Defining profiles will require knowledge of the source database, and how key values are stored and used in the associated applications. The examples used as illustration refer to SAP Business One, but profiles are not limited to that application.

Profiles are used to provide automatic data security. For example, assume you have a Versago report that lists customer invoices. You want to allow your customers to log into Versago and see a list of their invoices. By using a profile in the report that filters on the customer code associated with the user you can automatically limit the invoices in the list to those that have reference the user’s customer code. Additional examples of how profiles can be used can be found in Using Versago Profiles.

  • Click on the Profiles link in the Admin console to begin.

The profile maintenance tool provides three functions: creation of new profiles and maintenance of existing menus. Included in the maintenance process is the assignment of a profile to reports and forms.

  1. A listing of existing profiles is displayed when the function is opened.
  2. Click the [Add New Profile] button to create a new menu.
  3. Click the link for the profile in the Profile Name column to edit an existing profile.
  4. Click the [Delete] button to remove a profile.

Profiles are also assigned at the user level. This process is described in the Users section of this document.

  • Click on the appropriate tab to create/maintain the profile or assign the profile to reports.

Profile Details

All profile values are required and can be changed at any time.

  1. Profile Name is the unique name for this profile.
    1. This is the value that is displayed in functions where a profile is selected.
  1. Profile Description is an additional informational description of the profile. It is only displayed in the list of profiles in the profile setup function.
    1. This value can be the same as “Profile Name” if desired.
  1. Database is the database where the table that holds the filtering values is located.
    1. The values listed in the drop-down are provided from the database connections as described elsewhere in the “Versago – Database Connections Configuration” document.
  1. Table is the data table in the previously selected database where the filtering values are located.
    1. The values listed in the drop-down are provided from the database specified in the previous step. Only tables visible to the database user associated with the database connection are listed. In general, these are tables associated with the “dbo” schema.

Profile Fields

The “Profile Fields” grid is used to identify the values (columns) in the source table that hold the filtering values. In most cases, there will only be one profile field value. However, multiple values can be defined if necessary. See //Appendix B – Using Versago Profiles// for an example of this or contact Third Wave support for assistance.

The values in the Profile Fields section can be changed at any time. However, any existing user profile associations will be removed and must be reassigned.

  1. The Field Name drop-down lists all columns in the table defined above.
    1. Select the appropriate value.
  2. The Field Display Name value is displayed in the profile assignment process for a user.
  3. The Profile Field Identifier value is the column name in the Versago report that will be used for filtering.

Users

Users in Versago identify specific persons that can enter the Versago environment and use the various functions. Roles and Profiles are brought together in the process of defining a user.

  • Click on the Users link in the Admin console to begin.

The user maintenance tool provides two functions: creation of new users and maintenance of existing users.

  1. A listing of existing users is displayed when the function is opened.
  2. Click the [Add New User] button to create a new user.
  3. Click the link for the user in the Email column to edit an existing user.
  4. Click the [Delete] button to remove a user.

In general, a user should not be deleted if they have posted any transactions through Versago Forms. In this case a better option is to mark the user as inactive. That way any references in reporting will remain intact.

The user maintenance function is displayed on a single page. The page is divided into two sections here for clarity.

User Details - Core Information

  • Items marked with * are required. All other values are optional.
  • All items except Email can be changed at any time.

}

  1. Email is the key identifier for a user.
  2. This value cannot be changed once a user has been created.
    1. The email must be unique within Versago.
    2. The email is not verified. This value must simply have the normal structure of an email address (e.g. name@domain.com)
  3. Create Date is the date the user record was created.
    1. This value is managed by Versago and cannot be changed. It is shown for information only.
  4. Update Date is the last date/time the user record was updated.
    1. This value is managed by Versago and cannot be changed. It is shown for information only.
  5. First Name is the first (given) name of the user.
  6. Last Name is the last (surname) name of the user.
  7. Company Name is the name of company where the user works.
  8. Country is the country where the user resides.
  9. The next several items are self-explanatory.
  10. Password is the password to be used by this user.
    1. The password must conform to the rules established in the Versago password configuration.
    2. Passwords are encrypted when they are stored in the database. The only way to “fix” a forgotten password is to reset it.
  11. The Has Admin Access checkbox indicates if the user has access to the Admin Console.
    1. If the checkbox is selected the user has administrative access and the link to the Admin Console page is displayed when the user logs into Versago.
  12. The Is Active checkbox indicates if the user is active in Versago.
    1. If the checkbox is selected the user is active and can access Versago.

Your Versago license limits the number of users that can be designated as active at any time. If you attempt to add or activate a user that will cause you to exceed the number of licensed users, an error message is displayed. The add/update process cannot continue until another user has been made inactive or you increase the number of users for your installation. Contact your Third Wave consultant if you need to add Versago users.

User Details – Assign Roles and Profiles

Roles

  1. A user must be assigned to at least one role.
  2. In some cases, a user will be associated with multiple roles.
  3. Click in the “Role” field to display a list of available roles.
    1. Click on a desired role to assign.
    2. Repeat if multiple roles are needed.
  4. Click the “X” for an assigned role to remove the user’s association with the role.

Profiles

  1. Select the desired profile (previously defined) from the “User Profile” drop-down list.
  2. A selection window with a list of values for the filter is presented.
    1. Select a desired value.
  3. The profile and value are displayed in the “Profile Values” window.
  4. Repeat steps 1 and 2 to add additional profiles and/or profile values.

A user can be assigned multiple values for the same profile. In the example image above the user is associated with SlpCode 3 and SlpCode 5. When the profile filtering occurs in a report, any record with SlpCode 3 or 5 will be included in the results. This type of approach is helpful in situations like a sales manager, where the manager needs to see the information for all their reporting salespersons.

Using Versago Roles

Versago Roles are used to control access to reports, dashboards, and forms. Instead of assigning specific objects to each user, objects are grouped together under roles. And then users are associated with roles.

Note: In Versago v2.1 the concept of custom menus was introduced. This functionality allows administrators to create custom menu structures for a role. While this approach provides a more flexible way of presenting the functions for a role, the concepts of user grouping for roles as described below still apply.

For example, assume you have ten reports, three dashboards and five forms related to sales activity. You have twenty sales users that all use these tools. Instead of associating the eighteen individual items with the twenty users, the items are “grouped” together under a single role. The twenty users are then associated with the role. By this single role association, the users automatically have access to all the functions associated with the role.

The following table illustrates how roles could be used. In this example we have sales users, inventory users, and external customers. To simplify the example, we will only refer to reports, but the same logic applies to dashboards and forms.

The reports include:

Report User Group(s)
Monthly sales by customerSales
Open Orders Sales, Customer
Open Invoices Sales, Customer
Invoices paid this periodSales
A/R Aging Sales, Customer
Available Inventory Inventory, Sales
Open purchase orders Inventory
Inventory by warehouse Inventory

At first glance it might seem that the roles could be Sales, Customer, and Inventory. Then the Open Orders report would be associated with the Sales and Customer roles. The problem with this is if we then assign a customer to the Sales role, they will also have access to the Sales-only reports.

There are two options to address this issue. One option is to create two separate reports: Sales – Internal and Sales – External. The reports would be identical in content, but the Internal version would be for the Sales role and the External version would be for the Customer role. The same logic would apply for the Available Inventory Report. So, our usage table would look like this.

Report Role
Monthly sales by customer Sales
Open Orders - Internal Sales
Open Invoices - Internal Sales
A/R Aging – Internal Sales
Available Inventory - Internal Sales
Invoices paid this period Sales
Open Orders – External Customer
Open Invoices – External Customer
A/R Aging Customer
Available Inventory – InventoryInventory
Open purchase orders Inventory
Inventory by warehouse Inventory

A second option would be to create some “combination” roles such as “SalesCustomer” and “SalesInventory.” The Sales users would be associated with both the “Sales” and “SalesCustomer” roles, while customers would be associated with the “SalesCustomer” role only.

Report Role User Group(s)
Monthly sales by customerSales Sales
Open Orders SalesCustomer Sales, Customer
Open Invoices SalesCustomer Sales, Customer
Invoices paid this periodSales Sales
A/R Aging SalesCustomer Sales, Customer
Available Inventory SalesInventorySales, Inventory
Open purchase orders Inventory Inventory
Inventory by warehouse Inventory Inventory

As you can probably see from this simple example, defining roles in situations where the object crosses functional user groups can be complicated. But with some thought you should be able to create a set of roles that meet your needs.

Using Versago Profiles

Versago Profiles are used to automatically filter report results based on specific identifiers associated with a user. A typical example of how a profile could be used is for reports used by salespersons. The reports should only show the information associated with the salesperson running the report. Another example might be a report that shows information to customers. Again, the reports should only show the information for the customer running the report.

Profile Example Using Salesperson Filtering

To illustrate how a profile works we will use the salesperson example. We will be using the SAP Business One data structures.

In SAP Business One, a salesperson is assigned an internal numeric code. The database name of this value is “SlpCode.” When a sales document (order, invoice, etc.) is created, the numeric code of the salesperson is included in the document record. SAP Business One’s design is such that the salesperson code in the sales documents is also named “SlpCode.”

There are three things that need to happen in Versago for the process to work.

Create a Profile

First, a Versago profile is created. The profile uses the SAP Business One salesperson table (OSLP) as the source of valid values.

The “Profile Field Identifier” value is the field (column) name that the profile filtering process expects to see in the report data.

Assign the Profile to a Versago User

Once a profile has been defined, we must tell Versago what values are valid for a given user. This is done in the user setup as described elsewhere in this document.

In some cases, a user may need to see information for more than value. This would be the case where a sales manager needs to see not only their information, but also the information for salespersons that report to them. In these cases you simply assign multiple profile values as shown above.

Use the Profile in a Report

Since the filtering process takes place when a report is executed, we need to also define what profile(s) to use in the report. This is done in the report maintenance process.

As shown in this example, you simple indicate the “Filter Type” as Profile and select the desired profile as the “Filter Name.”

Using our example, if the user described above runs a report using the “SlpCode” profile, they will only see records where the “SlpCode” value equals 3 or 5.

Note: Both profiles and parameters can be used in a report

Multiple Profile Values

In the examples above, the value “SlpCode” has been present in the data being reported (the sales document). So, the profile filtering works with no issues. However, there may be situations where the name of the filtering column does not match This value in the source table. This situation can be addressed using multiple values in the profile setup.

In this example, we have some documents where the column to be filtered is named “SlpCode” and others where the column to be filtered is named “SlpCodeX.” As shown in the image below, we have created two profile entries.

One shows that the filtering column name might be “SlpCode” and the second shows that the filtering column name might be “SlpCodeX.” Now, we can use the same profile and the filtering will occur if a column name “SlpCode” or “SlpCodeX” is found.

Profile Filtering by Versago User

When Versago Forms are being used, you may want to restrict a report that shows the records created via a form to the user that is running the report. You will need to do three things for this to work.

Capture the Versago Information in the Form

Third Wave suggests that when you create a Versago form you include three values: CreatedBy, CreatedById, and CreateDate. The column names are not significant; they are just suggestions. “CreatedBy” is the user name (Email). “CreatedById” is the numeric ID assigned to each Versago User. “CreateDate” is the date (or date time) the record is created. See the document “Versago Forms – Default Values” for information on how to capture these values automatically.

Create a Profile for Versago Users

Here is a sample of how a profile for this purpose would be set up.

In this case the column name being used for filtering is “CreatedBy.”

Use the Profile in the Report

Use this profile in a report of records created via a Versago form. The records will automatically be filtered based on the user running the report.

versago/role_profile_user_configuration.1573662659.txt.gz · Last modified: 2019/11/13 11:30 by akoehler