SSRS - Only load data region on request? - reporting-services

Is it possible to load a data region (matrix) only on request. I have a screen with a few fields and a 13 week revenue tablix that can take 10 or more seconds to load. I'd like the tablix data region to only load when the user needs to see that information. My understanding of how SSRS works is that this is not possible, but I'd like to confirm. Are there any workarounds?
Sql Server Reporting Services 2008 R2

You can set the visibility of the Matrix on the value of a paramater .
For example ,you can create a new paramter ShowParamter.
Lets say your Matrix's Id is matrix1, then under visibility set the hidden property of matrix1 as
IIF(Paramaters!ShowParamter="True", false,true)
If the value of the paramater is true then the matrix should be seen otherwise hidden.

Related

MS Report Builder subreport not displaying

Need some help guys. I created a report using MS SQL 2012 Server Report Builder 3.0, with subreport. (subreport does not have parameters) It always displays blank. I checked the visibility and it is set to visible.
This is the main report, and this is the subreport.
You need to have a Data Set within your subreport and this Data Set must return at least 1 row of data.
You can use for example this hack (If you otherwise don't need Data Set):
Add a Data Source with connection to database
Add new Data Set to your subreport
Use this query in your Data Set
Select 1 as value

SSRS Report date parameter values using SSAS Cube as datasource - Grey out unavailable values

i m building an SSRS report using SSAS cube as the data source. The report contains shared data-sets which provide the required data. below is the set up.
Sql server version : Sql server 2008R2
Report builder 3.0
I have, Report A, powered by Dataset D, running on Cube C. The dataset has 3 parameters out of which one of them is a date parameter- P1. I have it set up such that on the report there is another parameter - P2 which contains the type as Date ( to ensure the user is exposed to a date picker), the input from this, P2 is then manipulated to required format before fed into the dataset parameter P1 (hidden). I have two questions regarding this parameter.
Currently, when the user pick's a date (P2) which has no values, the report errors out as it doesn't find that corresponding member on the cube. Can it be made such that if the member doesn't exists, a simple error message like "date not found" pops up as opposed to report failing?
Secondly, can i manipulate the date picker (P2) exposed to the user such that the unavailable dates are grey'ed out on the date parameter (P2)?
Please let me know if there is any more info required on each of the questions.
Thanks

Display a new page for each driver in the main report when using multi-value parameter and subr

I am working on a report that uses multiple sub-reports. I have two parameters: t_driver_pk and BatchID for the report. I have been able to display the data for each driver on a new page in the subreport using page break and repeat header options (all the subreports have been grouped by t_driver_pk). But, then when I go to main report and run it selecting multiple drivers on t_driver_pk parameter. I am getting a single report that combines the data for all those driver. Essentially, I would like to have it displayed as following:
Parameters:
**t_driver_pk**: 5000,4500 BatchID:610
FirstDriver
Subreport1
Subreport2
Subreport3
Subreport4
Second Driver
Subreport1
Subreport2
Subreport3
Subreport4
Any help would be greatly appreciated. Thanks in advance!
Have you tried adding a Dataset to the report that is driven by the selected t_driver_pk values (i.e. if 5000 and 4500 are selected in the parameter then the new dataset returns the same values).
You should be able to use this dataset with a List data region, which you can insert your subreports into and then pass the current value of t_driver_pk from the new dataset to the subreports. That should repeat them for each value of t_driver_pk.

How to reference in SSRS report (in client mode) objects from application

I have a report created in SSRS in client mode, which is run disconnected: I create the data source in code and pass to the report as a DataView. It works ok.
But I need to be able to reference from the project to some objects (variables, whatever) from my application, as follows:
I need some totals that are not calculated based on data in report. e.g. the reports show total sales in a period, with own total, but I need to display a field in report footer - previous month total (actually they are about 10 other "previous" totals).
I need to have some columns show / hide based on some settings in the application (e.g. I have application option : Show Previous month sales)
Any thoughts on how to do this?
Thank you
Q1-> In order to use data in your reports, you need to specify the data inside of a Datasource object. You cannot simply use the variables if that is what your intentions were. So yes, you are doing this the right way. *** Sorry, you could theoretically used Report Parameters for this.
Q2-> This is the real reason to use Report Parameters. You can pass parameters to the report to do exactly this. If the HideColumn parameter (for example) is set to true, you could hide all the columns that need to be hidden.
http://msdn.microsoft.com/en-us/library/ms251750%28VS.80%29.aspx
For question 1 - the data - the easiest approach would be to create a DataTable in memory and add it as another dataset OR to add fields for your original dataview that contain these values.
Question 2 - To hide or show the columns based on settings make the column visibility an expression based on the value of a parameter, in your code behind set the parameter value to your application setting.

Parameter missing a value

I am new to reporting services and have a reporting services 2005 report that I am working on to use as a base report template for our organization. I am trying to place the date that the report was last modified on the report server into the page header of the report. However, I keep getting a 'ParamX' parameter is missing a value error when I try to This is what I have done:
Set up a Parameter ReportName with a default value of Globals!ReportName. It is also hidden and internal.
Set up a Dataset ReportHeader that calls a stored procedure that returns the date the report was last updated or another date, if the report is not on the report server. It has a parameter #ReportName assigned to the Parameter!ReportName.Value. The Dataset returns values when run on the dataset tab in the BI tool.
Set up a Parameter ReportVersion that has a default value Query From based on the dataset ReportHeader and picking the ModDate column. It is the last parameter in the report parameters list.
I assign a textbox to the parameter.
When I preview, I get "The 'ReportVersion' parameter is missing a value whether I place it in the report body or page header (which is where I want it). I have deleted and added the parameter again, toyed with the hidden and internal settings on it.
What does this error really mean, what I am missing, and can I even do this with parameters?
Thanks In Advance
Jim
If I understand what you're doing, it sounds like you want to be using a field where you're implementing a parameter...
You are returning the ModDate from the data source, correct? If you're doing this, you can simply throw a text box in there, and use something like this: =Fields!modDate.Value to display it.
Parameters are values that go in to the query, fields are what it returns.
Hope this helps...
EDIT:: OK so are you trying to retrieve the mod-date column value from the reportserver db? If that's what we're talking about, you'll need to add a few things to the report. Add a datasource to report db, a dataset containing the date (query below), a list object in the report linked to the dataset, and a textbox in said list object to display the field. If you hit the report server with a query like this:
SELECT MAX(ModifiedDate) AS ModDate FROM catalog WHERE name='myReportName'
That will return your modifieddate from the ReportSErvices Database as a field that you can use.