Unplanned
Last Updated: 27 Nov 2023 13:02 by Kalli Kaldi

The OpenXML renderings in .NET work with DocumentFormat.OpenXml 2.7.2 - 2.20.0

When upgrading to version 3.0.0 the Word rendering throws the following exception:

CSharp.Net7.Html5IntegrationDemo Error: 0 : System.TypeInitializationException: The type initializer for 'Telerik.Reporting.OpenXmlRendering.Wordprocessing.DocumentHelper' threw an exception.
 ---> System.TypeLoadException: Could not load type 'DocumentFormat.OpenXml.Packaging.ImagePartType' from assembly 'Telerik.Reporting.OpenXmlRendering.2.7.2, Version=17.2.23.1114, Culture=neutral, PublicKeyToken=a9d7983dfcc261be' due to value type mismatch.
   at Telerik.Reporting.OpenXmlRendering.Wordprocessing.DocumentHelper..cctor()
   --- End of inner exception stack trace ---
   at Telerik.Reporting.OpenXmlRendering.Wordprocessing.DocumentHelper.CreateMainPart(WordprocessingDocument package)
   at Telerik.Reporting.OpenXmlRendering.Wordprocessing.DocumentBuilder.CreateMainPart()
   at Telerik.Reporting.OpenXmlRendering.Wordprocessing.DocumentBuilder.CreateBodyLayout()
   at Telerik.Reporting.OpenXmlRendering.Wordprocessing.ReportWriter.WriteDocument(DocumentBuilder documentBuilder, LayoutElement layoutElement)
   at Telerik.Reporting.OpenXmlRendering.Wordprocessing.WordprocessingWriter.WriteEndElement(LayoutElement source, ElementPageInfo pageInfo)
   at Telerik.Reporting.BaseRendering.PageHandler.Telerik.Reporting.Paging.IPageHandler.EndElement(LayoutElement element, ElementPageInfo info)
   at Telerik.Reporting.Paging.PageEndElement.OutputToPage(IPageHandler handler)
   at Telerik.Reporting.Paging.PageElementsLayer.OutputToPage(IPageHandler handler)
   at Telerik.Reporting.Paging.PageContent.Output(IPageHandler handler)
   at Telerik.Reporting.Paging.PageCompositionBase.OutputPageContent(Stopwatch stopwatchOutputContent, PageContent pageContent)
   at Telerik.Reporting.Paging.PageCompositionBase.<>c__DisplayClass124_0.<CreatePageContentOutputTask>b__0()
An error has occurred while rendering the report: System.OperationCanceledException: The operation was canceled.
   at System.Threading.CancellationToken.ThrowOperationCanceledException()
   at System.Threading.ManualResetEventSlim.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.SpinThenBlockingWait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.InternalWaitCore(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait(CancellationToken cancellationToken)
   at Telerik.Reporting.Paging.PageCompositionBase.SeparateThreadOutputBehavior.Finish()
   at Telerik.Reporting.Paging.PageCompositionBase.CreatePages()
   at Telerik.Reporting.Paging.PagerBase.Telerik.Reporting.Paging.IPager.CreatePages(IPageHandler handler, LayoutElement root)
   at Telerik.Reporting.BaseRendering.RenderingExtensionBase.Render(LayoutElement root, Hashtable renderingContext, Hashtable deviceInfo, CreateStream createStreamCallback, EvaluateHeaderFooterExpressions evalHeaderFooterCallback, PageSettings pageSettings)
*** Render Report #0 "ReportCatalog" DONE in 00:00:00.2183346 ***

CSharp.Net7.Html5IntegrationDemo Error: 0 : An error occurred while rendering the report in separate thread: System.OperationCanceledException: The operation was canceled.
   at System.Threading.CancellationToken.ThrowOperationCanceledException()
   at System.Threading.ManualResetEventSlim.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.SpinThenBlockingWait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.InternalWaitCore(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait(CancellationToken cancellationToken)
   at Telerik.Reporting.Paging.PageCompositionBase.SeparateThreadOutputBehavior.Finish()
   at Telerik.Reporting.Paging.PageCompositionBase.CreatePages()
   at Telerik.Reporting.Paging.PagerBase.Telerik.Reporting.Paging.IPager.CreatePages(IPageHandler handler, LayoutElement root)
   at Telerik.Reporting.BaseRendering.RenderingExtensionBase.Render(LayoutElement root, Hashtable renderingContext, Hashtable deviceInfo, CreateStream createStreamCallback, EvaluateHeaderFooterExpressions evalHeaderFooterCallback, PageSettings pageSettings)
   at Telerik.Reporting.BaseRendering.RenderingExtensionBase.Render(Report report, Hashtable renderingContext, Hashtable deviceInfo, CreateStream createStreamCallback, EvaluateHeaderFooterExpressions evalHeaderFooterCallback)
   at Telerik.Reporting.Processing.ReportProcessor.RenderCore(ExtensionInfo extensionInfo, IList`1 processingReports, Hashtable deviceInfo, IRenderingContext renderingContext, CreateStream createStreamCallback)
   at Telerik.Reporting.Processing.ReportProcessor.RenderCore(String format, IList`1 reports, Hashtable deviceInfo, IRenderingContext renderingContext, CreateStream createStreamCallback)
   at Telerik.Reporting.Services.Engine.ReportRenderer.Render(ReportRendererArgs args)
   at Telerik.Reporting.Services.Engine.Rendering.RenderWithCulture(ReportRendererArgs args)
   at Telerik.Reporting.Services.Engine.Rendering.ThreadFunc(Object o)

 

I would prefer my OpenXML rendering to work with the latest DocumentFormat.OpenXml version.

Unplanned
Last Updated: 27 Nov 2023 09:36 by ADMIN
Scheduled for 2024 R1

I am getting an error message, even when setting the culture manually to 'en-US', that the culture 'aa' is not found. Tried other approaches to get the culture manually installed, but there shouldn't be a reason your code is pulling all cultures when 'en-US' is the one being manually set by my code and in the report designer.

Unplanned
Last Updated: 24 Nov 2023 15:33 by Kumaresan

When I try to export a ReportBook to TIFF as explained in Exporting a report to a multi-document format, I receive an exception related to the file '.../report/image.tif' that cannot be created.

When I create the folder '.../report', there is another exception message:

'The process cannot access the file '...\report\image.tif' because it is being used by another process.'

The above error was thrown the second time the ReportProcessor tried to access the 'CreateStream' method from the code snippet in the above article. The 'image.tif' file is created and contains only the first report from the ReportBook.

With version 15.0.21.112 the last exception is not thrown and the 'image.tif' file contains all reports from the ReportBook.

Unplanned
Last Updated: 24 Nov 2023 11:31 by ADMIN

I have projects on .NET Core and I want to use the System.Text.Json serializer that is the new default, but reporting relies on Newtonsoft.Json.

---

ADMIN EDIT

There are two approaches that can be taken right now to solve this:

OPTION 1: define separate endpoints (services, projects) for the different tasks - they can still use the same database layer through a shared project, depending on the architecture you have. This would let you have separated services with the appropriate serializers without custom attributes and code (see below). For example, create a separate project for the reporting REST services.

OPTION 2: add some custom decoration on the endpoints so you can choose which serializer is used on each, you can find some examples here: https://stackoverflow.com/questions/59650907/how-to-configure-two-json-serializers-and-select-the-correct-one-based-on-the-ro - the point being to register a serializer depending on the endpoint based on your own code rather than let the framework put one in for all endpoints.

NOTE: This would be a breaking change.

---

Completed
Last Updated: 23 Nov 2023 12:53 by ADMIN
Release R3 2021 SP1

Not sure if you are aware of this but the new property SkipBlankPages in 2021/R1 will result in a corrupt (unopenable) PDF/XLS if the report contains no data.

The output used to be a blank report.

This behaviour is fixed by setting the Value to 'False' but this now requires the developer to remember to set this value on each new report. Perhaps the default should have stayed as 'False' and those who wish to remove blank pages could set it to true.

We are aware the property is set to true by default.

We have now had to modify (and subsequently retest) > 100 reports.

The generator should probably not create a 'corrupt' file in these cases.

Kind regards

Unplanned
Last Updated: 23 Nov 2023 10:33 by ADMIN

I have DataSource assigned to my report, which content is displayed in its Detail section. The Page sections have some static content. The SkipBlankPages property is set to False.

When the data set received by the report is empty, the static content in its Page sections is not displayed in Interactive View. In PrintPreview the Page Header/Footer content is displayed as expected. When the data set returns valid data, the Interactive view displays everything as expected.

Pending Review
Last Updated: 22 Nov 2023 14:07 by John
I have a generate button to create the report programmatically, with my own form and controls that are sent as parameters.  I do not want the report to render immediately as the user needs to select the parameters first.  
Unplanned
Last Updated: 22 Nov 2023 11:50 by ADMIN

Currently, when you set SplitWorksheetOnPageBreak to True, the Excel Sheet name is formed from the DocumentName or ReportName and the number of the page.

It would be very helpful if the report authors can manipulate these names with Expressions.

Pending Review
Last Updated: 21 Nov 2023 14:31 by Kyle
Created by: Kyle
Comments: 0
Type: Feature Request
0

Requesting a feature to allow some sort of selection feature on the "Send Mail Dialog". The issue that we're having is if the user needs to email a report to 5 or 10 people it becomes very daunting, ugly and difficult for them to achieve this without making errors in typing out every single email.

Also, in most cases the user might not know the individuals email official email address in the organization so they have to go look up every single one. If there was a drop down selection or an auto predict while typing then once clicked it grouped up the name to make it look cleaner and easier for them to find the email addresses that would be wonderful. Here's an example of what it looks like right now.

 

Unplanned
Last Updated: 20 Nov 2023 16:31 by Marko

The report processing is stopped and the following message is shown when trying to preview a report that uses one of the available DataDirect drivers in a .NET Core application.

The same report can be previewed successfully in a .NET Framework application.

Unplanned
Last Updated: 20 Nov 2023 12:14 by Zeb

When editing a report that has a watermark of type BackgroundOverlay with Sizing set to TopLeft, the design time preview of the watermark does not scale with the zoom level correctly.

The preview displays correctly only at 100% zoom level.

In Development
Last Updated: 20 Nov 2023 09:39 by ADMIN
Scheduled for 2024 R1

We upgrade to 17.2.23.1010 and after going through the report Upgrade Wizard we are getting this error for the CheckBox item:

Error CS0266 Cannot implicitly convert type 'System.Drawing.ContentAlignment' to 'Telerik.Drawing.ContentAlignment'. An explicit conversion exists (are you missing a cast?)

 

Declined
Last Updated: 17 Nov 2023 15:29 by ADMIN

To prevent questions that I can't answer: I'm an end user for this product. I DO NOT have the ability to look at or update code related to the tools integration. So please ignore my answers to Product Version and Target Framework. They were required before I was allowed to post this ticket. 

 

The uploaded report has 6 components. 

Two panels (one containing multiple objects, the other only containing one object [hb2])

4 text boxes each with some bindings.

The two key components to look at for the issue are hb and hb2. Both these objects are identical and both have the same bindings for height and top.

From my math hb2 is correctly positioned and sized by hb has been pushed down. The only difference is that other objects are in the container for hb.

Without any containers, hb and hb2 are positioned incorrectly.

I'm doing all this because the vertical alignment for text boxes was not working, once I exported to PowerPoint.

 

What I expected was that the Top value would only depend on the container holding the component and the components' top value. I did not expect it to be dependent on a mixture of variables from other components also held within the same container.

 


 

Unplanned
Last Updated: 17 Nov 2023 14:22 by ADMIN
Scheduled for 2024 R2

When using the SqlDataSource component with a stored procedure that has an IF-ELSE condition which selects a different set of columns depending on whether the condition is true or false, the returned data schema is always as if the condition is evaluated to true.

While the schema is wrong, if I manually type the fields, at runtime, they get resolved correctly but it is inconvenient.

In Development
Last Updated: 17 Nov 2023 14:19 by ADMIN

In the Desktop Report Designers, you may display the Text of the Tooltips on several lines by adding new lines (\n) inside the text.

In the HTML5 Viewrs, the new lines are ignored and the text is displayed on a single line. You may work around this by replacing the new lines with <br /> elements. It would be much easier for the users if this is done in the code of the viewer instead.

Unplanned
Last Updated: 17 Nov 2023 14:13 by ADMIN
The current version(R3 2023) of the MsSqlServerStorage implementation uses the old System.Data.SqlClient data provider which forces to use a different connection string from my application because keywords such as 'authentication' are not supported by the older provider.
Unplanned
Last Updated: 17 Nov 2023 14:11 by ADMIN
Scheduled for 2024 R2

When a system tells users they should look into the report parameters as the reason the report isn't displaying.  It's reasonable for your users to believe you aren't misleading them. 

The report viewer error message misleads users.  In reality the parameters are correctly configured and it the repot URL could be wrong.  Or a variety of other issues are at play; for instance, a problem with you connection string will also return the "Unable to get report parameters" error message.  I'd like to see this error message at minimum changed to "report can't display."   It's better to throw out a generic message vs having users spend hours or days troubleshooting the report parameters.  Better yet a proper catch/validation system put into place please.  

Unplanned
Last Updated: 17 Nov 2023 14:05 by ADMIN
Scheduled for 2024 R2
When trying to duplex print a report that has odd page numbers, the next report's first page prints on the back of the previous report. We need the ability to conditionally insert a page break based on whether the report's (the group's) page count is odd or even. Since we don't have access to the global pagecount variable outside the footer, there is no way to use it to insert a page break into the body of the report. This seems like it would be such a common need with the desire by many to save paper that it would be an obvious feature to include in the product. Thanks.
Unplanned
Last Updated: 17 Nov 2023 13:48 by ADMIN
Scheduled for 2024 R1

Currently, the Map's TileProvider UrlTemplate property may be set only to a hard-coded string. It would be very useful to be configurable as an Expression to allow for dynamic values.

Completed
Last Updated: 17 Nov 2023 09:57 by ADMIN
Release 2024 R1 PI1
Created by: Levi
Comments: 65
Type: Feature Request
53

What's the long-term plan for supporting Linux and Telerik Reporting? The dotnet design team is looking to remove support for System.Drawing.Common on Linux platforms. They're recommending compiler warnings in .Net 6, and full PlatformNotSupportedExceptions in .Net7

 

Sources:

designs/system-drawing-win-only.md at main ยท dotnet/designs (github.com)

Breaking change: System.Drawing.Common only supported on Windows - .NET | Microsoft Docs

1 2 3 4 5 6