Tuesday, March 20, 2012

RS/AS 2005 Reports on Cube datasource, drilldown not working

I have an AS 2005 cube created.
I am able to generate reports in RS 2005 by setting the report datasource to
point to my cube.
I have tried to setup a report to drillthrough to another report ( also
based on the same cube datasource ) via the TextBox Navigation/Jump To Report
setting.
I am able to select the report to which I need to jump. The parameters for
that report appear in the navigation setup dialog, and I am able to set the
parameter values e.g. =Fields!Product_Type.Value.
However, whenever I run the report ( in BIDS preview, via Report Manager, or
in a Report View web control ) and click the navigation text box, I always
get the message "The 'PRODUCTProductType' parameter is missing a value "
When trying to do this via a Report Viewer web control, I can look at the
parameters in the report being drilled into by examining the
DrillThroughEventArgs in my DrillThroughEventHandler of my Report Viewer web
control.
ServerReport serverReport = (ServerReport)e.Report;
ReportParameterInfoCollection parms = serverReport.GetParameters();
There are 3 parameters as expected, but for each of them, parms[i].state = "MissingValidValue"
I see that this exact same setup works when the datasource for the report is
relational, and I hope that I'm just missing something simple to make it work
when the data source is a cube.
Any help is greatly appreciated!If you are using the Analysis Services provider (the one that comes
with a UI for you to drag and drop), any query parameters are bound to
another dataset by default. The parameter value passed/received need
to be a member of the "available" list.
I got similar message ""The 'PRODUCTProductType' parameter is missing a
value " when the value is not found in the available list of values.
So, you may want to check this first?
Looking at the parameter name, its value should be of the format of
[PRODUCT].[Product Type].&[<a key>]. So, you need to also ensure the
value is passed in this format.|||One more thing:
RS has the behaviour of changing the query parameter to be
"multi-valued" enabled. So you need to make sure the parameters
defined at both main and sub reports are of the same type, either both
multi-valued or both single-valued.
Multi-valued requires a different format e.g.
=Fields!Product_Type.Value(0)|||Thanks for your help, I'm getting closer with this now.
For now, I've removed the product type parameter, because it's a calculated
field, adn I'm trying to use a parameter called FACDESC that is a straight
database column value.
When I literaly past in the value
[PRODUCT].[FACDESC].&[IMACS General Hospital]
the parameter is passed to the drill through report perfectly.
However, I'd like it to use the current value of the report fields in the
cell I'm drilling through. I've tried these:
[PRODUCT].[FACDESC].&[Fields!FACDESC.Value]
[PRODUCT].[FACDESC].&[Fields!FACDESC.Value(0)]
and it goes back to the missing parameter problem.
If I pass in as the drillthrough parameter
=[PRODUCT].[FACDESC].&[Fields!FACDESC.Value]
but then I get the build error:
[rsCompilerErrorInExpression] The Value expression for the textbox
â'DischargeQuarterâ' contains an error: [BC30451] Name 'PRODUCT' is not
declared.
"Rose" wrote:
> If you are using the Analysis Services provider (the one that comes
> with a UI for you to drag and drop), any query parameters are bound to
> another dataset by default. The parameter value passed/received need
> to be a member of the "available" list.
> I got similar message ""The 'PRODUCTProductType' parameter is missing a
> value " when the value is not found in the available list of values.
> So, you may want to check this first?
> Looking at the parameter name, its value should be of the format of
> [PRODUCT].[Product Type].&[<a key>]. So, you need to also ensure the
> value is passed in this format.
>|||Finally got this to work.
To set up a report in RS2005 that is based on an AS2005 Cube data source, so
that it will drill through to another report, also based on an AS2005 Cube
data source, passing parameter values to the subreport:
Pass the report parameters like this:
= "[PRODUCT].[FACDESC].&[" + Fields!FACDESC.Value + "]"
Thanks to Rose for pointing me in the right direction.
"Rose" wrote:
> If you are using the Analysis Services provider (the one that comes
> with a UI for you to drag and drop), any query parameters are bound to
> another dataset by default. The parameter value passed/received need
> to be a member of the "available" list.
> I got similar message ""The 'PRODUCTProductType' parameter is missing a
> value " when the value is not found in the available list of values.
> So, you may want to check this first?
> Looking at the parameter name, its value should be of the format of
> [PRODUCT].[Product Type].&[<a key>]. So, you need to also ensure the
> value is passed in this format.
>|||=Fields!Product_Type.UniqueName
should also work, exept when its part of a hierchy in the master-report and
not in the sub-report
"DTK" wrote:
> Finally got this to work.
> To set up a report in RS2005 that is based on an AS2005 Cube data source, so
> that it will drill through to another report, also based on an AS2005 Cube
> data source, passing parameter values to the subreport:
> Pass the report parameters like this:
> = "[PRODUCT].[FACDESC].&[" + Fields!FACDESC.Value + "]"
> Thanks to Rose for pointing me in the right direction.
>
> "Rose" wrote:
> > If you are using the Analysis Services provider (the one that comes
> > with a UI for you to drag and drop), any query parameters are bound to
> > another dataset by default. The parameter value passed/received need
> > to be a member of the "available" list.
> >
> > I got similar message ""The 'PRODUCTProductType' parameter is missing a
> > value " when the value is not found in the available list of values.
> > So, you may want to check this first?
> >
> > Looking at the parameter name, its value should be of the format of
> > [PRODUCT].[Product Type].&[<a key>]. So, you need to also ensure the
> > value is passed in this format.
> >
> >

No comments:

Post a Comment