• Home
        • Database Development

          Database development is designing, creating a database or data model, and analyzing requirements and their intents as raw data.

          Learn More
        • Architecture & Design

          Software architecture refers to the fundamental structures of a software system and the discipline of creating such structures and systems.

          Learn More
        • Programming

          Computer programming is the process of performing a particular computation or more generally, accomplishing a specific result.

          Learn More
        • Cloud Computing

          Cloud computing is the on-demand availability of computer system resources, especially data storage and computing power.

          Learn More
        • ETL Development

          ETL provides the foundation for data analytics and machine learning workstreams. Through a series of business rules, ETL cleanses and organizes data.

          Learn More
        • Data Visualization & Reports

          Data and information visualization is an interdisciplinary field that deals with the graphic representation of data and information.

          Learn More
  • Blog
  • Contact

We recently delivered a SQL Server 2012 Reporting Services solution to a client with an additional capability for the client’s business users to be able to design, develop and publish ad hoc reports using Report Builder 3.0. During unit testing we had one of the Business Analysts (BA) in our team simulate business user experience by attempting to create reports using Report Builder. Although the BA could connect to datasets and design a report accordingly, he couldn’t run the newly designed report from Report Builder. The error that he got is as follows – “Failed to preview report. The permissions granted to user ‘*selectSifiso\Sifiso’ are insufficient for performing this operation” (for the rest of the article the error will be referred to as ‘this error’). The error basically relates to user permissions. I have gone through the web to find possible workarounds to this error and as it turns out this error is not so uncommon in the world of Business Intelligence. Thus, this article will demonstrate how to resolve such an error should you encounter it too.
*For obvious security reasons, I replaced the original BA account with my dummy account.

**Please note that the above requirements are only necessary for fixing the user permissions error as it is this article main objective. There are further requirements for developing an SSRS Reporting Solution.
According to this MSDN article, in Reporting Services there is a task referred to as Execute Report Definitions (ERD) which allows for the processing of a “report definition that is not currently stored on the report server”.
Now going back to the issue we are trying to resolve, assigning our BA a role that includes the ERD task would obviously solve our problem.
Unfortunately, or fortunately (depending on your user role in a given report server) the ERD task is available to users assigned to system roles i.e. system administrator and system user.
Therefore, in order to prevent a situation whereby you have all business users assigned to system administrator roles, the best practice would be to set up another system role with only an ERD task.
Thereafter you can merely assign business users, in our example the BA, to the role with an ERD task.
In the following steps, we will demonstrate the creation of a system role with an ERD task and assign users to that role.
Step 1: Create System Role
1.1. In administrator mode, Start SQL Server Management Studio (SSMS) and connect to Reporting Services
1.2. Navigate to the System folder, collapse it, then right-click to the System Roles sub-folder and choose New System Role… (If you didn’t launch SSMS as an administrator, the option of adding a New System Role would appear greyed out)
1.3. In a New System Role dialog box, for the purposes of this exercise let us assign RunReportBuilder to the Name textbox. Then check the Execute Report Definitions task.
Step 2: Assign Users to RunReportBuilder System Role
2.1. Again, preferably launch your Report Manager as administrator (in order for that to happen, launch Internet Explorer/preferred browser as administrator)
2.2. Click Site Settings – usually found at the top right side menu in browsers.
2.3. Still on your Site Settings page, click the Security tab
2.4. The Security tab will return a list of users/groups with their respective roles, click on New Role Assignment
2.5. After a New Role Assignment page loads, on the Group or user name textbox type the account of the user you would like to grant access to the ERD task. Thereafter check the RunReportBuilder role.
You can now inform the user to test run a report using Report Builder to check that the role assignment has taken effect.
Till next time folks, cheers.



October 13, 2022
Sifiso is Data Architect and Technical Lead at SELECT SIFISO – a technology consulting firm focusing on cloud migrations, data ingestion, DevOps, reporting and analytics. Sifiso has over 15 years of across private and public business sectors, helping businesses implement Microsoft, AWS and open-source technology solutions. He is the member of the Johannesburg SQL User Group and also hold a Master’s Degree in MCom IT Management from the University of Johannesburg.

Meet Our Experts

We are proud to have a team of experts who are passionate about delivering the best possible solutions to you. Our team members are highly skilled and experienced in a diverse range of IT technologies, and are committed to staying up-to-date with the latest industry trends and best practices to deliver you the best results.


Submit a Comment

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Join Our Newsletter

Subscribe to get our latest and best thinking on the most definitive workforce topics affecting HR leaders and organizations today.