Skip to main content

Notifications

Finance | Project Operations, Human Resources, ...
Answered

SSRS report cached or data in memory

Posted on by 6,603
Hello:
 
I've been experiencing an issue with the SalesInvoice SSRS report I'm working on. I have an extension on the DP class. Debugging the report, it hit my breakpoints initially in the first few runs. By the third or fourth run, the report will generate without encountering my breakpoints. Even after making changes to the DP class, there would be no change, but if I used a differ invoice from another sales order, not only would the breakpoint catch but the code changes would work also. I tried deleting the RDL file and regenerating, restarting the SSRS service, even shutting down Visual Studio -- no luck.  
  • bankk Profile Picture
    bankk 6,603 on at
    SSRS report cached or data in memory
    Hello User,
    Apologies for the late response. Wondering if you can expand on the suggestion below. Is this a property on the report or something related to the SSRS server itself? 
     
    5. Check for caching issues: SSRS reports can be cached by the report server, which might prevent your changes from being reflected immediately. Try disabling the caching feature for the report during development or clear the report server cache to ensure that the latest changes are being used.
     
    By the way, I'm not sure if you read my reply after I posted my question, but I found some details in the code which explained why my breakpoints were not catching. 
     
    Thank you!
  • Suggested answer
    SSRS report cached or data in memory
    It seems like you are encountering an issue with breakpoints not being hit in your SalesInvoice SSRS report, even after making changes to the associated DP class. Here are a few suggestions to help resolve this problem:
    1. Check the build configuration: Make sure that the project containing your DP class and the SSRS report is set to the appropriate build configuration (e.g., Debug). Sometimes, breakpoints may not be hit if the project is set to a release configuration.
    2. Ensure debug symbols are generated: Verify that debug symbols are being generated for your DP class and SSRS report. In Visual Studio, go to the project properties and ensure that the "Generate debug info" option is enabled. This ensures that the debugger can associate the breakpoints with the correct code.
    3. Clean and rebuild the solution: Try performing a clean and rebuild of your entire solution, including the project containing the DP class and the SSRS report. This helps ensure that all the necessary files are regenerated and that any caching issues are resolved.
    4. Verify the deployment of the report: Double-check that the latest version of the SSRS report is being deployed to the report server. Sometimes, the report server may cache previous versions of the report, leading to inconsistencies. Ensure that you are deploying the updated report RDL file with your changes.
    5. Check for caching issues: SSRS reports can be cached by the report server, which might prevent your changes from being reflected immediately. Try disabling the caching feature for the report during development or clear the report server cache to ensure that the latest changes are being used.
    6. Review the data source and dataset configuration: Ensure that the data source and dataset in the report are correctly configured to use the updated DP class. Double-check the query or logic in the dataset to ensure it aligns with your changes.
    If none of these suggestions resolve the issue, there might be other factors specific to your environment or configuration that are causing the problem. In such cases, reviewing the log files or seeking assistance from your development team or the SSRS community forums could provide further insights.
     
  • Verified answer
    bankk Profile Picture
    bankk 6,603 on at
    SSRS report cached or data in memory
    Hello:
     
    I found some more information as I was digging into my issue. Turns out the SalesInvoiceHeaderFooterTmp table is not a temp table but a regular table. The DP class contains a useExistingReportData method which was finding a record in SalesInvoiceHeaderFooterTmp and then bypasses the populateSalesInvoiceHeaderFooterTmp method call. Does anyone know why it's set up / coded this way --- maybe save on processing? Also, if you've encountered this, is there a recommended approach to bypass this OR do I account for this issue while in development only? Thank you.  

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

December Spotlight Star - Muhammad Affan

Congratulations to a top community star!

Top 10 leaders for November!

Congratulations to our November super stars!

Community AMA December 12th

Join us as we continue to demystify the Dynamics 365 Contact Center

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 291,240 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 230,149 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,156

Leaderboard

Product updates

Dynamics 365 release plans