I've returned to our reports collection after a couple of years away, and added a new report which has a simple tablix containing a few columns, but many rows from the dataset.
The problem is, the report (in Preview in VS, and when run on the Report Server) only shows some of the rows returned by the dataset, and doesn't enable the page navigation icons in order to scroll through the data to access the rest.
Where do I find the settings which control these things, please?
UPDATE:
Looking at some pre-existing reports, it seem that these exhibit the same problem - it would appear that SSRS can only display about 5,000 rows regardless of how many the dataset contains.
There is a 'hidden' setting in the XML code (not available via the UI AFAIK) called InteractiveHeight. Removing this line resulted in the paging starting to work
Related
I have a report that consists of two graphs, with two separate datasets. They are overlapped and displayed or hidden based on a parameter on the report.
When tested in Visual Studio the report displays and runs fine (although a warning about overlapping report items is thrown), but when deployed to to our production setting, the report fails and throws an error that the Query failed for the Dataset that is hidden.
For example, datasets are WOs and WOsByAsset. When WOs is selected for display the error is Query Execution Failed for dataset WOsByAsset. When WOsByAsset is selected for display the error is Query Execution Failed for dataset WOs.
I have confirmed that both datasets work in SSMS, no actual errors are presented.
Could the fact that the graphs are overlapping cause this issue? The pattern of the errors appears to indicate that but I'd like any confirmation, or better yet, explanation that anyone may be able to give.
Thanks all for the suggestions.
Problem was of my own making. I had not taken into account that the report runs for each dataset even when the datasets related table was hidden. The report used a multivalue parameter, and by default passed all possible choices within the parameter into the report.
This was causing that dataset to fail, but when I tested the query in ssms I was only passing a single value for which the query ran just fine.
All good here.
Basically, I have two separate projects that I would like to combine into one. They each have one shared dataset. When trying to simply add the existing reports and existing shared datasets (via right click > Add > Add Existing Item) from one of the projects to another, I couldn't get things working properly. After coping a tablix from one report (the one from the other project added via right click "Add Existing Item") I get an error saying the tablix refers to an invalid dataset name. The dataset it's linked to is the one from the other project that I added via right click add existing item.
When trying to include the added report as a subreport, I got a "subreport data retrieval error" telling me to check the log file for more details. I am neither sure why I received this error nor where the log file can be found.
Am I missing something with adding/linking to datasets? Is what I'm attempting supposed to be possible?
Thanks for the help, let me know if you need more info or screenshots.
Even if you have a shared dataset you need to have a dataset in the report itself that points to it. It sounds like that these links have gotten messed up as you moved the files around to different projects. I'd suggest deleting the datasets that are currently in the reports and making new ones to link to the shared dataset. Even if they look okay when you look at the properties it may be that some GUID for an object has changed (total guess) and things just need to be updated to make sure they work properly again. Then fix up any elements on the reports that get broken by doing this. Hopefully then everything will work correctly.
I have an issue with a report causing an "Object reference not set to an instance of an object" exception when run through my web application. This is, so far, only happening on one QA machine.
I can:
Run the report locally on my development machine (latest code, same database)
Run the report through the Reporting Services Web Interface on the QA machine
Run the report on the QA machine through my web app if I select a format other than PDF/TIFF (e.g. Excel, CSV, HTML, XML all report successfully)
The Reporting Services log on the QA machine looks like this when I get the exception.
I did not find the log helpful so I started whittling the report down to a minimum to find the issue.
What I found confuses me.
Given the following RDL; I can change the height of Tablix list1 from 3.09444in to 1in, deploy the report to the QA server and the report will run successfully.
How in the world could shortening the height of Tablix list1 prevent the exception?
UPDATE
It's not moving height of the tablix to 1in. It's getting rid of the long decimal on the height. I changed (3.09444in to 3.1in) and the report ran successfully. FTR, I did not choose the height 3.09444in...rs chose that for me while I designed the report.
Fixed by changing the long decimal on the height of a Tablix from 3.09444in to 3.1in.
I did not choose the height 3.09444in.
The Reporting Services designer chose that for me while I designed the report.
I've experienced this problem a few times. It typically happens to me when I have a hidden textbox executing some Code.xxx routine and that textbox is located under a table, and the table has some kind of group page break.
It seems that with each page break, the fields hidden under the table are refreshed and sometimes they get a object reference error.
Here's the weird thing - I can typically fix the problem simply by moving all the hidden fields to a location such that their upper left corner is above the table's upper left corner, or to the left of it. It's like the position of the field somehow has some influence on what is refreshed and what is not.
I do not claim to know why it works, it just does.
I'm new to SSRS and I need the ability to group multiple reports into a single report. I've searched around a lot but not found much. I currently have two reports (more to come) that users need to be able to view/save individually. The users also need the option to view both those reports as a single report. Essentially just a simple concatenation. Eventually, there will be several reports grouped and the user will be able to render all of them for viewing online or saving as a single PDF.
I tried two sub-reports in a master report but it causes a lot of hard to diagnose page-break problems. I was wondering if there was a more straight forward option here. Thanks.
Combining all the report elements into one report would work, but the users also need to be able to view them as individual reports as well. To avoid having to maintain both an master report and multiple individual reports, you have a couple of options:
Create a master report and insert the individual reports as sub-reports. If you get page break issues, check the report page height and widths versus the subreport container height and width.
(If you have SQL Server 2008 R2 or later) Consider publishing your individual reports as a set of Report Parts. You can then reuse these in a master report.
I'm not a fan of subreports either, they work well in Crystal but are not really necessary in reporting services.
Why don't you just combine the reports into one? Copy all the tablixes / other objects from each report onto a new report. You can select all and copy and paste very easily, you just need to set up the parameters, datasets and data sources if they aren't shared.
You can set pagebreaks to occur after each tablix or a good trick is to use rectangles because they will let you control page breaks in their properties.
In SSRS 2008 R2, I was under the impression that a drill down to a sub-report would query the data on-demand.
This isn't the case when my report gets rendered.
Specifically, I have a Tablix that initially loads rows grouped by Person.
When someone clicks the drilldown icon on that Person, a subreport displays some more data pertinent to that Person.
The problem here is that every subreport is being loaded initially when the main report is being rendered. This takes forever to load. But if I remove the subreport, just for testing purposes, the report loads almost instantly.
I've tried setting the visibility of the subreport to Hide initially, then Show when the user drills down, but it didn't change anything.
I read a similar question on stackoverflow, but the answer was to use Drill-Throughs instead.
This unfortunately isn't an option in my case.
Any suggestions?
The only way to defer the data loading is to actually use a new report with and access it via Drill-Through method. This is the way to product work, and is the way inteded by Microsoft.
You can either optimize your stored procedure, limit the number of results per page or use drill-through.