Cannot turn Off Report Pagination on Reporting Services 2008 - reporting-services

I have a report services project that I'm rending on Mobile. The display is perfect, except that reporting services 2008 paginates the report into two separate tables for reports with many rows. I'd like to turn this off. According to research I have done, you need to set the report's InteractiveHeight to 0 to disable paging. However, there is no such element in the RDL's xml format. Is there somewhere else that this can be done, or is there something I am missing?

You can do this in the Designer:
This element will only be present if there are non-default values for InteractiveSize:
<Page>
<InteractiveHeight>0in</InteractiveHeight>
<InteractiveWidth>8.5in</InteractiveWidth>
<LeftMargin>1in</LeftMargin>
<RightMargin>1in</RightMargin>
<TopMargin>1in</TopMargin>
<BottomMargin>1in</BottomMargin>
<Style />
</Page>
If you haven't changed these values from default, they won't be in the XML:
<Page>
<LeftMargin>1in</LeftMargin>
<RightMargin>1in</RightMargin>
<TopMargin>1in</TopMargin>
<BottomMargin>1in</BottomMargin>
<Style />
</Page>
So you can add this through the Designer, or update the RDL. However, the element won't be present in all cases, as above, so you'll need to add it if its not present.

Report height could be set from designer view (valid for VS 2010). Follow below steps:
Open properties window of visual studio
Select "Report" from drop down
Expand option "Interactive Size"
Set Height Option to "0in"
Image explaining steps to follow

For newer versions of SSRS, I went to Report->"Report Properties", and set the Height to 20 inches.

Related

How do I update Visual Studio 2019's HTML validation rules for Razor/cshtml to recognize <dialog>?

Visual Studio 2019 does not correctly validate HTML5 <dialog> elements: it rejects all child elements (such as <div>) even though the Content Model of <dialog> expressly allows them.
As Visual Studio 2019 uses different HTML validation rules for Razor .cshtml than for the older WebForms-oriented HTML editor tools the "Tag Specific Options" button under Tools > Options doesn't let me make changes to the XML/SGML schema used for the HTML validation rules.
How can I configure Visual Studio 2019, manually if necessary, to validate HTML5 correctly?
There isn't a user-friendly way to override VS's HTML schema. You can edit the files yourself, but they'll be overwritten the next time you update your VS build.
If you wish to attempt it, the files are located at %VSINSTALLDIR%\Common7\IDE\Extensions\Microsoft\Web Tools\Languages\Schemas\HTML with most elements defined in the html.xsd file.
The best way to get it fixed is to report the issue through Visual Studio Feedback so that we can fix it. (Sometimes this takes a while, but I'm trying to get the team to prioritize schema issues. Also, if you can get enough votes on the item, it does internally bump up the priority as well.)
Source: I'm the new owner for these schemas, and am trying to catch up after several years of neglect.
[edit:]
I've just submitted a fix, it will ship in the 16.9 wave. If you want to hotfix it yourself, you should be able to replace lines 585-602 with this:
<xsd:element name="dialog" vs:block="true" vs:description="109">
<xsd:complexType>
<xsd:choice>
<xsd:group ref="flowContent" />
</xsd:choice>
<xsd:attributeGroup ref="commonAttributeGroup" />
<xsd:attribute name="open" type="xsd:boolean" />
</xsd:complexType>
</xsd:element>

Does SSRS 2008 support Page breaks/Page Names?

I made a report using Visual Studio Report Builder and had two datasets for two tables and had them exported on two Worksheets when exporting to Excel, with the help of Page breaks and Page names.
On Visual Studio, the report runs perfectly. But when uploading it to the SSRS Report Server, I get an error message:
The report definition is not valid. Details: The element 'Tablix' in
namespace
'http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition'
has invalid child element 'PageName' in namespace
'http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition'.
List of possible elements expected: 'TablixCorner, TablixBody,
TablixColumnHierarchy, TablixRowHierarchy, LayoutDirection,
GroupsBeforeRowHeaders, RepeatColumnHeaders, RepeatRowHeaders,
FixedColumnHeaders, FixedRowHeaders, Style, SortExpressions,
ActionInfo, Top, Left, Height, Width, ZIndex, Visibility, ToolTip,
DocumentMapLabel, Bookmark, RepeatWith, CustomProperties, PageBreak,
KeepTogether, NoRowsMessage, DataSetName, Filters, DataElementName,
OmitBorderOnPageBreak, DataElementOutput' in namespace
'http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition'
as well as any element in namespace '##other'.
(rsInvalidReportDefinition)
I'm using Visual Studio 2015. My SSRS version is 2008.
I usually have to use a hack to convert my 2015 generated report to make it compatable with my 2008 version SSRS by editing the .rdl file in notepad.
Is there a hack to allow pagebreaks in a report on SSRS 2008?
Your error message tells you everything you need to know:
invalid child element 'PageName'
List of possible elements expected: 'TablixCorner, TablixBody, TablixColumnHierarchy, TablixRowHierarchy, LayoutDirection, GroupsBeforeRowHeaders, RepeatColumnHeaders, RepeatRowHeaders, FixedColumnHeaders, FixedRowHeaders, Style, SortExpressions, ActionInfo, Top, Left, Height, Width, ZIndex, Visibility, ToolTip, DocumentMapLabel, Bookmark, RepeatWith, CustomProperties, PageBreak, KeepTogether, NoRowsMessage, DataSetName, Filters, DataElementName, OmitBorderOnPageBreak, DataElementOutput'
SSRS 2008 support page breaks, it just doesn't support page names. Either get rid of the names and carry on with your hack method of ensuring compatibility, or simply set Visual Studio to target SSRS 2008 and you should be fine.

SSRS Possible to toggle Header visibility based on export type? 2008-R2

I'm familiar with dynamically showing/hiding other report objects (textboxes/tablix/columns etc...) based on a variable or parameter value - but is there a way to do this with the header? I don't see any "visibility" tab on the header object to set an expression.
Further more, is there a way to do hide the header based on the export style. For example, I want to show the header when exported to PDF, but want to hide it when exporting to XLS (to prevent cell merging).
I've seen examples of when the "header" is replaced by a "rectangle" which can be toggled. I've also seen articles refering to =Globals!RenderFormat.IsInteractive = “EXCEL”), but I don't know where that is set? On a server config file? Is there a way to have it done just for that one specific rdl report file?
Thanks in advance!
Answering your questions:
Is there way to dynamically show/hide the header - no. Unfortunately, you can't set visibility for whole header/footer in RDL reports.
Is there way to hide the header based on the export style - not quite. As I stated, you can't set visibility for whole header, but you can set visibility for separate report items in header based on the export style.
Where that is set - it is set in report, in usual Hidden expressions. There is nothing to do with server config file to achieve this (the only point is to take a look at rsreportserver.config - it contains section with rendering extensions, it's useful to know their names, f.e. name "EXCEL" is for old binary XLS format, while "EXCELOPENXML" is for modern XLSX).
To set visibility based on the export style, you can use built-in report field RenderFormat.Name (notice that it is Name, not IsInteractive!). Just type the following expression for the Hidden property:
=Globals!RenderFormat.Name = "PDF"
In conclusion, you can't set visibility for whole header, you can show/hide report items inside header based on different conditions you want, but header will still take some place. To really hide the header so it will not consume the space of report, you can simulate the header with rectangle and page breaks, this is the workaround.
The report requirement I had before me was of similar nature.
NEED: Hide the headers when exported to CSV file.
The report is going to be exported to CSV and then uploaded into another system (a system that doesn't want headers). To be more user-friendly, I wanted the report to show the headers but not export them in the CSV file.
I tried some things that did not work. Then I found an article describing how you can create a new export format, Labeled: "CSV No Headers", which solved the export requirement.
SOLUTION: rsreportserver.config
FILE: D:\Program Files\Microsoft SQL Server\MSRS13.MSSQLSERVER\Reporting Services\ReportServer\rsreportserver.config
XML:
<Extension Name="CSV (No Header)" Type="Microsoft.ReportingServices.Rendering.DataRenderer.CsvReport,Microsoft.ReportingServices.DataRendering">
<OverrideNames>
<Name Language="en-us"> CSV No Header</Name>
</OverrideNames>
<Configuration>
<DeviceInfo>
<NoHeader>true</NoHeader>
</DeviceInfo>
</Configuration>
SOLUTION DEMO
NEW OPTION:
EXPORTED> Report Name (CSV No Header).csv:
EXPORTED> Report Name (Excel).xlsx:
SOURCE: Charanmandya Blogspot: Export Csv Without Header in SSRS
Things that did not work...
I read through this article, Blog, Beer Intelligence by Valentino Vranken: "Hide/Show Items Dependant On Export Format (SSRS)". The article was helpful with lots of user comments and suggestions. But I tried these things but they did not work for CSV export without header row.
Row Visibility > Expression > =Globals!RenderFormat.Name = "CSV"
This worked for "Excel" or "EXCELOPENXML" format. For some reason "CSV" does not work.
Select Row> Properties: Data Only> [Data Element Output=NoOutput]
Some related stackoverflow questions...
SSRS Export to pipe delimited file loose its headers
Exporting from SSRS to Excel with no headers

How to display text/image in a report depending on buildoption?

I would like to display a text or an image on my reports depending on buildoption, ie debug/release so my users are never confused about what environment they are in.
I work in visual studio 2013. Is it possible to use app.config or something similiar for reports?
Ok, worked this one out for myself, sort of.
I added a background image and used expression (Globals!ReportFolder) if I should display it or not.
Expression was: =IIF((Globals!ReportFolder = "/Test"), "TestBackground", "")
Thanks to Sébastien Sevrin for pointing out that reports arent built and I need to look into deploysettings.

Footer not hiding when export to MS Word

I only want to display the footer (which has some texts) in the first page of my SSRS report. So I code the following in Expression to hide:
=IIF(Globals!PageNumber = 1, false, true)
However, when I export to MS Word via SSRS, I get the footer in every single page (it works perfectly fine in PDF).
This seems to be a known problem according to:
http://msdn.microsoft.com/en-us/library/dd283105(v=sql.105).aspx#ReportHeadersFooters
And the document provided a workaround using "Expression with Text Runs".
I have been trying to figure out what that means and how to apply that but have been struggling for a while.
Does anyone know a work-around for this problem?
Thanks!
This answer is pretty late in coming to this user, but for any others fighting with this, please see the msdn SQL Server export to Word write-up here:
http://msdn.microsoft.com/en-us/library/cc627455(v=SQL.100).aspx
In a nutshell, toggling states anywhere in the report is not supported. Whatever the state of the report item is on the first page is what it'll be throughout the exported report. With that in mind, it appears that PDF will be a better format to support with your customers.