iSeller Commerce
iSeller POS Retail
iSeller POS F&B
iSeller POS Express
Crosslight
WebUI
ClientUI
What's New
Download Trial
Web Solution
Mobile Solution
Enterprise Solution
Custom Development
Blog
Community
Latest Development Blogs
ForumPostTopic
Browse By Tag
After further investigation, what is happening is that the sqlreportviewer component is iterating through all available reports (issuing a FindObjectsRecursive to SSRS)
It then retrieves all the parameters for any other reports it finds and if any of those parameters are derived from a query, it tries to execute the query to get the parameters. If the user we are running at doesn't have security permissions to the underlying dataset then the entire process fails and we never see the original report.
We have tried setting EnableAutomaticListFetching="False" and CanUserShowReportList = "False" but this makes no difference at all.
The way I have found to get around the exception is to manually configure the report level security in SSRS to stop reports being visible to the sqlreportviewer - but, and this is a big but, this does not stop the underlying problem - we have many reports that use parameters driven by queries so even when I stop the actual exception message, sqlreportviewer is still running all my reports parameter queries even if I have no intention of running the report.
This is massively inneficient!
Is there a solution for this or does anyone know an alternative sql report viewer for silverlight that actually works?
Thanks.
Hi Handy,
I am trying to work around this issue today but this would appear to be something much more fundamental that a security issue. In the scenario I have described, there is no way that the sqlreportviewer component should even know about Database B let alone try to access it.
When I trace the actual calls made to SQL Server during the test run, I can see that there are calls made to try and find all reports and then it seems to try to access them in turn - why would it even do this? When I run any SSRS report from any other component, it checks if the report exists, opens it, get the parameters, get the data source, runs the report. The sqlreportviewer component first calls to get a list of ALL reports (regardless of which report I asked for) and then proceeds to try and open each report in turn.
Something is seriously wrong with the way this component is working.
Regards, Lee.
or
Choose this if you're already a member of Intersoft Community Forum. You can link your OpenID account to your existing Intersoft Social ID.
Choose this if you don't have an Intersoft account yet. Your authenticated OpenID will be automatically linked to your new Intersoft account.
Enter your Wordpress Blogname