Breakpoints Won’t Hit in Data Provider Class when Debugging SSRS Reports
When the time came for me to develop my first SSRS report from scratch I ran into something that took a bit to figure out. I wasn’t able to get any of my breakpoints to hit in my data provider class. I couldn’t find anything online to help. Luckily a co-worker of mine was able to give me the steps needed. We thought it would be a good item to blog about. Hopefully it can save someone out there time if they run into the same thing.
I noticed it after I had everything setup. I created my controller, data contract, and DP classes. I got the table setup that will support the report and assigned it as a temporary table. Then I created the visual studio project (Dynamics AX model project), setup the design of my report and got it deployed to the SSRS report server. The report ran and returned data but I wanted to step through the DP class code. None of my breakpoints would get hit and I couldn’t figure out why. It turns out you need to take the actions below.
NOTE: these actions should be reversed once you are done debugging and are ready to promote the objects to your TEST, UAT or Prod environments.
Steps for Breakpoints to Hit Data Provider Class
1. In your temp table you need to change the following properties:
• TableType: Regular
• CreatedBy: Yes
• CreatedTransactionId: Yes
2. In the DP (data provider) class you need to make the following changes:
• In the ClassDeclaration extend the SrsReportDataProviderPreProcess
• In your ProcessReport method add the following line:
3. After making those changes compile all of the objects.
Then you can start debugging and stepping through your code. Just remember to change the items above back before promoting the objects for user testing.
Check out my colleague’s blog for more on Debugging SSRS Reports.