Forcing a SSRS subreport to show
In SSRS, when the dataset of a subreport contains no data, the subreport won't show in your main report. You can use the NoRows property of in the main report to show a message, but maybe you want the controls of your subreport to be visible (the table headers,...)
The following hack can achieve this:
Add a new DataSet to your subreport
Choose a DataSource (even though we won't use it) and set the following as query:
SELECT ' ' AS DUMMY
Or for Oracle (PL/SQL):
SELECT ' ' AS DUMMY FROM DUAL
Now add a Textbox to your subreport and set its value to:
=First(Fields!DUMMY.Value, "DataSetToForceSubreportVisibility")
Leave the textbox as visible or it won't work (at least, it didn't for me). That's why I took an empty string and not a number (i.e. SELECT 1).
Now, even when your main DataSet doesn't have data, your subreport will have data and so your subreport will always be visible.
Written by Peter Morlion
Related protips
3 Responses
Thank you =, This saved me a ton of wailing and gnashing of teeth.
Glad to help!
thank you so much, it works perfectly
and your explanation is easy and clear !!!