ssrs forward parameter and available values - reporting-services

I have a drill down report in ssrs. Trying to pass the value of a parameter from parent report to child. Now in child report i already have a set of available values for that parameter. What i am trying to achieve is, when the child report loads the default value should be the one I am passing from the parent report and the report data should get loaded based on that and after the initial load the user can select form the drop down and refresh the report. For me the problem is when the child report is getting loaded its not taking the value of the parameter passed from the parent report.
Kindly help. Thanks.

I've set up a dummy report that does what you asked for and found that SSRS will just not work - not give an error at all - if you don't have it exactly right.
Here are the steps I followed to make it work.
Create the parameter on the parent report and ensure it is set and that you are setting it either at run time or via default.
Ensure that the parameter you want to SET exists in the child report and has NO default value (this may not be necessary, but will help with debugging if it goes wrong)
Make sure the child report parameter has the the available values for your drop down set and that the one you are passing is there
Set up the drill through using the action section of the properties and Go to report
Specify the drill through report
Choose the parameter from the Name drop down (the available parameters in the child report WILL be there) and set the Value to [#ParameterName]
Test
If you don't want a parameter on the parent report and just want to hard code the value you can skip step 1 and change step 6 to just use the value.

you need to set the default specific value to the parameter so it will not show you "Select Value" in dropdown list.
Once you send parameter from Parent report it will set the value.

Related

SSRS cascading parameters: child parameters' default 'All' value drops to blank after user changes parent parameter

I have a big bunch of cascading parameters in my rdl report with default value 'All' everywhere. But all children go blank after user changes some parent parameter, and then he has to choose 'All' value from drop-down list for each of child parameters manually. This is pretty annoying staff. How can I force report to fix default 'All' value for child parameters, despite of any changes to parent parameter?
I've found decision for my child parameter go-blank problem. In the Report Parameters dialog just print to the 'non-queried' field default value in quotes. For example, in case of olap data source: print
="[Calendar].[Quarter].&[All]"
instead of:
[Calendar].[Quarter].&[All]
After this Quarter child cascading parameter will not lose it's default value 'All' when user chooses another Year. Nuts!
There is nothing you can do by keeping the default value to "All". That is for only the first time the report is rendered. Once you change the parent parameter, the child value is refreshed and then it starts looking towards "Available values" set.
So, whatever values are coming from the dataset which is the source of Available Values, will be considered to populate the child parameter then. So only way you can still have an "All" still, is to modify the dataset. We could probably help you further if you could share the MDX queries for the parameters, or even you could give it as shot.

How to populate a report level variable from a dataset

I want to populate a report level variable from a dataset.
Background: I have a report that needs to perform a DB lookup to get a single row/column value. That value needs to populate a report level variable. Of data type datetime.
Here is something I have tried.
Click in report area
Under report properties I navigate to variables
Create a new variable and assign it a name.
Click on the "fx" button to open the dialog.
I use the "First" function in an attempt to assign the value.
I get the "...value expression for the report 'body' uses aggregate function First..." error.
Is there any way to make this happen at the report variable level?
Thanks,
Donnie
Why not use a parameter? You can set the default value based on a query. If you don't want your users to overwrite it, make it hidden.

Using column from main dataset as multi-value parameter in subreport

Hi I am using SSRS 2008.
My set up is MainReport with dataset1 and 1 parameter - OrderID. One of the columns in dataset1 is ShippingID.
My other report called - SubReport has 1 multivalue paramter - ShippingID.
I am trying to use ShippingID from Main report as multi-value parameter for Subreport.
I tried different threads here but mostly they are diffrent than my scenario.
How do I go about setting this up, is that even possible?
I have been trying to set it up for whole day but unsuccessfully.
In my scenario one Order can be on multiple shipments.
One of the things I tried is creating new multi-value parameter in MainReport - call it shippingIDs_sub and mapping its default value to dataset1.ShippingID. But when I try to run report I get error "The 'shippingIDs_sub' parameter is missing value" - because my MainReport would sometimes return NULL in ShippingID column.
My scenario is very much similar to this
SSRS passing parameter to subreport
although I sometimes get NULLs in the column used as source for multi-value parameter.
Is there any way to filter out NULLs and run subreport only for existing IDs?
In the Action where you call the sub-report, where you map to shippingIDs_sub, use an expression to pass some valid value whenever the value in your dataset is NULL.
=IIF(IsNothing(Fields!ShippingID.value),"Some Valid Value",Fields!ShippingID.value)
As to this:
Is there any way to filter out NULLs and run subreport only for
existing IDs?
No, you can't turn off the ability to go to a subreport, but you can "hide" it by changing the appearance of whatever your user clicks on so that it doesn't look like it's clickable. For example, in our reports, when something is clickable, we make it underlined in blue. So if I don't want to user to click it, I just make it the same font color/style as all the other text. But it doesn't stop a determined user from clicking on it anyway if they want.

How to set report parameter properties based on previous parameter value

How do I set the selecting of a report parameters in ssrs to default to a different selection based on options selected.
I have a report that have up to 5 radio buttons in my parameter field and the query is such that if one value is true another should be false so users want that when they select a certain radio button, another should default to false.
In Chose default value for this parameter I used a switch function but not getting it right. Please help
I don't think you can do this in SSRS. I'd take care of this in drop downs so you can pass in a parameter to a query to dynamically change what will appear, even if it's just two vaues.
You do this by:
1) Add queries for parent and child datasets
2) Add parameters for parent and child, getting available values from the datasets
3) Reference parent parameter in child dataset
The parameters will now cascade.

Pass a parent datetime parameter to a drillthrough report

I have a main report and a drillthrough(child) reports. Both work very well. But there is an issue with passing parameters.
prodID and #Date. On the main report you would click on the prodID to provide the prodID for the child and that is good. Now, the issue is passing the second parameter(#Date) to filter the result set returned but it happened that there is no matching column to match the #Date parameter to when setting up the Action dialog box because there's no such a column as a datetime data type in the child report except in the where clause. Before now we would have to supply the #Date value manually. How do I modify my query or work around this so the #Date parameter is passed on to the child report as well at run time?
Thanks for the help
in the action dialog box, instead of selecting from the drop down insert the following
=Parameters!Date.Value
you could also press the fx button and the browse to your parameter