This document is a tutorial of the most common request that DataSelf receives: that of row level security for SA Sales reports by salesperson.


It will provide row level filtering for three groups:

    • Individual Salespeople
    • Their managers (to see their personal sales, and those of the salespeople under their management)
    • Users who see everything

This scenario assumes the following:


- The appropriate Salesperson (and their Manager) is determined either by the salesperson on the Invoice Header, the the Invoice ShipTo's default salesperson, or the Customer's default Salesperson.


- A custom field can be added to the Salesperson table to contain the users' DataSelf Web Server's login ID.


- The reader knows how to use the DataSelf ETL to import this custom field into the DataSelf Data Warehouse.


- The reader is a DataSelf Web Server Administrator or Publisher.


- The reader has the DataSelf Desktop software.


- The reader is already comfortable with creating calculated fields in Desktop, maintaining DataSelf Web Server permissions, and modifying published data sources.



How it works:

You will add a custom field to the ERP's Salesperson table. For each Salesperson record, you will populate the custom field with the user logins of those who are to have access to this salesperson's Sales Invoice records - typically, this salesperson and the Sales Manager.

You will also set up a DataSelf Web Server User Group for those upper management user who are to receive unlimited access to the Sales records.

Each Sales Invoice record will include this user login field.

You will modify the DataSelf Web Server's SA Sales data source with a filter that checks if the name of the user who is currently logged into Data Web Server is in one of the names in either the custom field or in the unlimited access User Group.

Thus, whenever DataSelf Web Server populates a report that uses this filtered SA Sales data, it will only display those records that match the report viewer's login name.