If the file `WebReportDesignerSettings.json` doesn't exist before running the Web Designer REST Service, the latter will create it. However, the file will remain locked and the service will throw the exception:
"The process cannot access the file '/app/Telerik_Reporting/WebReportDesignerSettings.json' because it is being used by another process."
When the file exists, the problem will be avoided, which leads to the workaround - create the file at a starting point of the application. Here is a sample code:
static void InitFile()
{
var path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Telerik Reporting", "WebReportDesignerSettings.json");
File.Create(path).Close();
}
When my application runs in full trust permissions set, the following error is thrown if I have used the Telerik.Reporting.OpenXmlRendering NuGet package and try exporting to any of the OpenXML formats :
ERROR: Attempt by security transparent method 'Telerik.Reporting.OpenXmlRendering.Spreadsheet.Workbook..ctor()' to access security critical method 'DocumentFormat.OpenXml.Packaging.SpreadsheetDocument.Create(System.IO.Stream, DocumentFormat.OpenXml.SpreadsheetDocumentType)' failed.
When generating PDF/UA files, we need to have special objects that are read by an internal system but ignored by screen readers. This cannot be achieved with the existing functionality.
It would be beneficial if we could configure reports so that specific objects inside the generated document are ignored by screen readers. For example, by setting a special value to the AccessibleRole property of a text box.
The Export dropdown menu looks like the following image when using Kendo UI 2023.2.606+
When certain fonts are used, the text of reports exported to PDF looks different between the Skia and GDI rendering engines, even if the fonts are fully embedded.
For example, if the TT Norms font is used and the report is exported to PDF (full font embedding) with both engines, the document rendered by Skia is much larger and looks different than the GDI-rendered document.
Since upgrade to openXML 3.0.0 we get exceptions at runtime when we want to create a report in XLS.
While a feature request has been filed here: https://feedback.telerik.com/reporting/1631967-openxml-renderings-should-work-with-documentformat-openxml-3-0-0-and-newer one could argue it is a bug. Anyway, i raise this issue here to have some extra attention to it.
System.TypeLoadException
HResult=0x80131522
Message=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.
Source=Telerik.Reporting.OpenXmlRendering.2.7.2
StackTrace:
at Telerik.Reporting.OpenXmlRendering.Spreadsheet.Worksheet..ctor(Workbook workbook, WorksheetPart worksheetPart)
at Telerik.Reporting.OpenXmlRendering.Spreadsheet.Workbook.AddWorksheet()
at Telerik.Reporting.ExcelRendering.Report.Render(IWorkbook workbook)
at Telerik.Reporting.OpenXmlRendering.Spreadsheet.SpreadsheetReport.Telerik.Reporting.Processing.IRenderingExtension.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.ProcessAndRender(String format, ReportSource reportSource, Hashtable deviceInfo, IRenderingContext renderingContext, CreateStream createStreamCallback)
at Telerik.Reporting.Processing.ReportProcessor.ProcessAndRenderStateless(String format, ReportSource reportSource, Hashtable deviceInfo, IRenderingContext renderingContext, CreateStream createStreamCallback)
at Telerik.Reporting.Processing.ReportProcessor.<>c__DisplayClass47_0.<RenderReport>b__0(SingleStreamManager sm)
at Telerik.Reporting.Processing.ReportProcessor.RenderReportSafe(Func`2 renderCallback, String format, IRenderingContext renderingContext)
at Telerik.Reporting.Processing.ReportProcessor.RenderReport(String format, ReportSource reportSource, Hashtable deviceInfo, CancellationToken cancellationToken)
at Telerik.Reporting.Processing.ReportProcessor.RenderReport(String format, ReportSource reportSource, Hashtable deviceInfo)
at Indato.Reporting.TelerikReports.<>c__DisplayClass1_0.<RenderReportAsync>b__0() in C:\Users\leosiepel\Source\Workspaces\Indato\Indato-Main\Indato.Reporting\TelerikReports.cs:line 42
at System.Threading.Tasks.Task`1.InnerInvoke()
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
The Standalone Report Designer allows users to add Anchoring to an item even if its container has KeepTogether set to False. This is not valid and can break report definitions without a warning.
The reports can be fixed by editing the XML code of the definition manually and setting the KeepTogether property to True.
Conditional formatting property already exists in Telerik.Reporting.LegendItem class however does not exist on Telerik.Reporting.GraphLegend.
Would be great to have a ConditionalFormatting property into the Telerik.Reporting.GraphLegend to allows to perform bindings on this element.
Exemple of use case not possible currently: Bind the GraphLegend.Position property with an expression.
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.
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.
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.
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.
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.
Telerik.Reporting.Services.HttpClient version
17.2.23.1114
references a bad version of
Microsoft.IdentityModel.Clients.ActiveDirectory
That has inconsistent references as can been seen from this error (from System.Private.DataContractSerialization 4.1.1)
##[error]src\Cms.Wpf\Cms.Wpf\Cms.Wpf.csproj(0,0): Error NU1605: Warning As Error: Detected package downgrade: System.Text.Encoding.Extensions from 4.3.0 to 4.0.11. Reference the package directly from the project to select a different version. Demurrage -> Telerik.Reporting.Services.HttpClient 17.2.23.1114 -> Microsoft.IdentityModel.Clients.ActiveDirectory 3.14.0 -> System.Runtime.Serialization.Json 4.0.2 -> System.Private.DataContractSerialization 4.1.1 -> System.Xml.ReaderWriter 4.0.11 -> System.IO.FileSystem 4.0.1 -> runtime.win.System.IO.FileSystem 4.3.0 -> System.Text.Encoding.Extensions (>= 4.3.0) Demurrage -> Telerik.Reporting.Services.HttpClient 17.2.23.1114 -> Microsoft.IdentityModel.Clients.ActiveDirectory 3.14.0 -> System.Runtime.Serialization.Json 4.0.2 -> System.Private.DataContractSerialization 4.1.1 -> System.Text.Encoding.Extensions (>= 4.0.11)
This results in a publish failure with .net 8 where warning are treated as errors by default when publishing.
A workaround is to add<NoWarn>NU1605</NoWarn>