We have many reports that contain grids using Table controls. We are using the HTML Report Viewer with the enableAccessibility option set to “true” to display these reports to application users.
Using this configuration, the report when run in a browser generates markup using absolutely positioned DIVs instead of TABLE tags for the grids in the report. The accessibility company provided documentation that the generated report content is in violation of WCAG 2.1 A, 4.1.2, Name Value Role since the generated report content is neither a semantic HTML table nor adheres to the ARIA table pattern.
Since Reporting Tables are rendered as DIV elements, you need to ensure they implement the following ARIA Design Pattern specifications:
We can use Telerik UI components with gRPC service however, Telerik reporting service and HTML 5 viewer do not support gRPC.
With gRPC use growing among the developers, we would like to see Telerik reporting support gRPC out of the box.
I am using the HTML Report Viewer and have a report with a parameter that renders as a combobox in the parameter panel of the report viewer. The tab order of the report parameters do not follow the display order of the parameter fields, specifically any parameter fields that use comboboxes.
An example of this behavior is in the "Employee Sales" report on the Telerik Reporting demo site (https://demos.telerik.com/reporting/employee-sales). In the report there are 2 parameters, one for Report Date (using a date picker control) and another for Employee (which uses a combobox). The report viewer is configured to use the combobox option for viewing single and multi selects:
parameters: {
editors: {
singleSelect: telerikReportViewer.ParameterEditorTypes.COMBO_BOX,
multiSelect: telerikReportViewer.ParameterEditorTypes.COMBO_BOX
}
}
When rendered, the Report Date input has a tab index of 301 whereas the Employee combobox has a tabindex of 0. This results in the tab order of the parameter inputs to not follow the order in which they appear.
I have found that if the above settings are commented out, the tab order of the parameter fields works as expected, but results in a list view control instead of a combobox which is not desirable.
Is it possible to override the tabindex of a combobox parameter input to be set to a tabindex value that is relative to its siblings (i.e., 302) so that tabbing through the fields via keyboard is more natural?
I am using the following Telerik configuration section in the Standalone Report Designer:
<Telerik.Reporting>
<extensions>
<render>
<extension name="IMAGE" description="JPEG">
<parameters>
<parameter name="OutputFormat" value="JPEG"/>
</parameters>
</extension>
</render>
</extensions>
</Telerik.Reporting>When I try to render a report with multiple pages in JPEG, I receive the error message:
IMAGE rendering extension creates more than one stream. To render, please use the 'bool RenderReport(string format, IReportDocument reportDocument, Hashtable devicelnfo, CreateStream createStreamCallback, out string documentName)' overload instead.
Using the Npgsql data provider of version 6.0.7 leads to the following error when there is a DateTime SQL parameter:
Can't write CLR type System.String with handler type TimestampTzHandler or Can't write CLR type System.String with handler type TimestampHandler.
This error is thrown only on Design-Time because the Design-Time value for the SQL parameter does not respect its selected DbType and is instead always a string.
The Telerik.Reporting.Report class has the property ExternalStyleSheets which is an ExternalStyleSheetCollection.
This collection consists of objects of the type ExternalStylesheet which has private Name and ResourceKind properties.
Would be great and make sense to make these properties public since that would help when the external stylesheets need to be resolved dynamically, though a custom IReportSourceResolver for example.
We separated our data objects into a library project and then referenced it via the web.config. It works as intended, both in the designer and during data retrieval, but to update the dll with more objects we have to restart the whole site.
It would be very useful if we could substitute our assemblies without restarting the website.
When a report has a report parameter using a data source, that is visible and has AllowNull set to True, if the value initial value is invalid, no report parameter widget is loaded at all for this parameter.
If this is the only report parameter, the parameters area is not rendered at all, even though the toolbar indicates that it is active.
The issue can be reproduced by loading the attached report in the native Blazor Report Viewer.
I wanted to add some white space between the TOC text and the leader symbols in my TOC. Here is the default TOC when I don't use whitespace:
I tried the following Expression:
= Fields.group1 + " "
Here is the result - the TOC text of the first level was displaced as if the added whitespace is before the text:
The workaround I found is to add one LeaderSymbol at the end of the whitespace string:
= Fields.group1 + " ."
Still, it seems that there is whitespace trimming that is not correctly implemented for the TOC section.
In some scenarios, the PrintOnLastPage functionality of the page sections does not work as expected.
For example, if the report with PrintOnLastPage is the last one in the report book, on the last page of the report book, which will also be the last page for that report, a page section will still be rendered even if PrintOnLastPage is False.
This happens when the default PageNumberingStyle.Continue is used by the reports.
On the other hand, if the last report has a PageNumberingStyle.ResetNumberingAndCount, the page section will not be rendered if PrintOnLastPage is set to False, so in this scenario, it works as expected.
In such a case, the following exception is thrown
Inner exception: System.ArgumentException: The path is not of a legal form. at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths) at System.IO.Path.InternalGetDirectoryName(String path) at Telerik.Reporting.Interfaces.FrameworkDependentDeploymentModel.GetDirectory(Assembly assembly) in
The likely reason for the error is that since the assembly is loaded from the bytes, and not from a path, the assembly.Location in the Telerik.Reporting.Interfaces.FrameworkDependentDeploymentModel.GetDirectory method is Null.
Attempting to delete a group section from the Explorer tab in the Web Report Designer leads to the following error being thrown in the browser console:
Uncaught (in promise) Error: Rollback inner transaction
RollbackTransaction http://localhost:51863/api/reportdesigner/designerresources/js/webReportDesigner-16.2.22.1109.min.js/:9
Rollback http://localhost:51863/api/reportdesigner/designerresources/js/webReportDesigner-16.2.22.1109.min.js/:9
execute http://localhost:51863/api/reportdesigner/designerresources/js/webReportDesigner-16.2.22.1109.min.js/:9As a result, the section is not deleted. However, the section can be deleted by deleting the corresponding report group from the Properties area(Data section) in the Web Report Designer.
The source of my SubReport was in a nested class and in the preview of the main report I received the error "Invalid report type" although the same nested class was successfully discovered in the VS designer with the assembly-qualified name 'Test.Class1+DetailReport1, Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
When I tried using a class (without a nested class, e.g., 'Test.DetailReport1, Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null') then I could get the subreport to render within the main report.
It could be the syntax for the qualified name is not handling nested classes.
Using a Toggle Visibility action to expand/collapse recursive SubReport results in the "Node should be found among parent nodes" error. The recursive SubReport renders fine without the action.
The report from the How to represent hierarchical flat data in report recursively - Telerik Reporting KB article was used as a base.
Recursive sub-report with hierarchical data. When expanding/collapsing, all nodes get expanded or collapsed.
I would expect only the selected node to be expanded/collapsed.
For reference, the report from the How to represent hierarchical nested data in report recursively - Telerik Reporting KB article was used as a base
Item("MyProperty",Fields.MyDictionary)Fields("MyProperty")The JS file with the stringResources shipped with the installation at the following location:
C:\Program Files (x86)\Progress\Telerik Reporting <Release>\Html5\ReportViewer\js
is incorrect, it should be as shown in the Localization - Telerik Reporting article.
Basically, line 9 should be changed to:
; (function (trv, $) {while lines 178 to 180 should be like this:
trv.sr = $.extend(trv.sr, sr);
}(window.telerikReportViewer = window.telerikReportViewer || {}, jQuery));When developing a Telerik report template with the intention of exporting to Excel, I observed the % sign was not displaying for positive numbers in the exported Excel file. The format we were using was {0:N2}%. The results displayed on the HTML report viewer and the Word export document was correct:
However in the excel file result, the cells were formatted without the % for positive numbers, and with the % for negative numbers.
Upon further inspection, I noticed the excel cell formatting was translated as:
This format would not generate the % symbol for a positive number as the trailing % is missing before the semi-colon.
We are fixing this by using the below Format specification directly in the Report Designer:
{0:#,##0.00"%";-#,##0.00"%"}
which is directly retained in the excel custom format:
While I understand that N, C etc. C# number formats are supported according to the design considerations and this bug is also technically resolved by using UseExtendedFormatting (setting this to false translates {0:N2} to #,##0.00"%"), this seems like an unexpected result of translating the format codes that does not match the standard behavior of {0:N2}%. Reporting this behavior for review.