SQL Server SSRS Layout – Is Complex Design Possible?

business-intelligencesql serversql-server-toolsssrstable

I have been ordered to do a report with a pretty sophisticated table layout. Okay, it's not that sophisticated, but we all know how SSRS is with those things. I am pretty certain that layout cannot be achieved, but I want some feedback before I start simplifying it.

table layout

This is the table layout. I've replaced everything with 'header' and 'data' accordingly. What gives me a tiny bit of hope is that the dataset will always return one row, so I may ignore the header and detail regions assigned by SSRS. I only need to somehow achieve that layout and I'm good.

I have tried using matrix, it lets me merge cells vertically but then it only lets me merge them horizontally if it is the upppermost row. So guys, is there any chance to insert the photo the way it is done in the image (merging 10 rows vertically and 2 rows horizontally altogether in the middle of the table)?

Kind regards,
Mash

Best Answer

If you're using a single dataset which returns a single row, this should be pretty easy to achieve.

Not with subreports, but rather "sub tables". Create separate tables for certain areas, then drag and drop them in to appropriately sized cells within the main table.

Create a table, then another with the content you want to place in a certain position. Size the container cell accordingly (you can merge horizontal cells in the master to achieve this if necessary) or else things start to go a bit weird:

Size the cell in the master to to table you want to places there

Then drag & drop the sub-table in to place:

Drag the sub-table in to the cell

The tables have to have a dataset in common, which is fine in this context if I understand your description. And I think there are limits as to which area of a table you can place sub-tables, but other than that it can be a pretty powerful tool.

And I think your approach of ignoring headers and footers is right for this example. Just use detail rows for everything. Create as many as you need.

Hopefully I've given you enough to experiment with. I can expand on this at a later date if you need it.