I have a requirement for my report book to feature a title page and *THEN* a table of contents for the report book, followed by the report book's content. Currently, the TOC for a report book can only go at the beginning or the end of the book. My requirement required the ability to specify the TOC position more generally. Here are two possible approaches: 1. Implement the requirement as it is stated by allowing the report book's TOC to be positioned after such and such a report - the nth, or some other means of identification. 2. Honour the TOC for a report book that is nested inside another. I created a 'sub book' with the TOC as its first page and then added this an outer book. Unfortunately, the inner book's TOC was not honoured and the report was skipped. To my mind, the second suggestion above feels easier to implement (but I am guessing, of course). It certainly would allow just about any combination.
A Reporting engine should expose the ability to control the layout of the table of contents\Document Map. Reports are not always data driven and should give the ability to display the contents of the report at different levels, much like Microsoft Word does with their table of contents.
Please add a new ZoomMode to stretch the report to the viewer's visible area
To store reports, the Web Report Designer offers FileDefinitionStorage as an out-of-the-box solution for the DefinitionStorage. this FileDefinitionStorage does not support relative paths or sub-directories.
While the UriReportSourceResolver, which is used in the REST Service for rendering reports, does support sub-directories. These two services will often be used together, and for this reason, should behave consistently.
I have configured Asp.NET Core 5 IReportServiceConfiguration in DI for ReportsControllerBase with ReportServiceConfiguration.ReportingEngineConfiguration set to IConfiguration with custom IConfigurationProvider providing ConnectionStrings which can change in runtime so the provider notifies about configuration changes via IChangeToken.
But the updated ConnectionStrings are not propagated to the service.
To fix it, I have made this hack:
reportEngineConfigurationChange = engineConfiguration.OnChange(() =>
{
telerikConfigurationManagerReset();
configuration.ReportingEngineConfiguration = engineConfiguration;
});which listens to IConfiguration changes and calls TelerikConfigurationManager.Reset (via reflection) and sets configuration again.
It would be nice if this would be implemented on Your side, please.
Can we achieve Excel slicers kind of filters in Dashboards using Telerik Report controls?
I am rendering a report with multiple large images in PDF. The rendering fails with the following error:
System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
at System.IO.MemoryStream.set_Capacity(Int32 value)
at System.IO.MemoryStream.EnsureCapacity(Int32 value)
at System.IO.MemoryStream.Write(Byte[] buffer, Int32 offset, Int32 count)
at System.IO.BinaryWriter.Write(Byte[] buffer)
at System.Runtime.Serialization.Formatters.Binary.__BinaryWriter.WriteSingleArray(NameInfo memberNameInfo, NameInfo arrayNameInfo, WriteObjectInfo objectInfo, NameInfo arrayElemTypeNameInfo, Int32 length, Int32 lowerBound, Array array)
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteArray(WriteObjectInfo objectInfo, NameInfo memberNameInfo, WriteObjectInfo memberObjectInfo)
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.Write(WriteObjectInfo objectInfo, NameInfo memberNameInfo, NameInfo typeNameInfo)
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.Serialize(Object graph, Header[] inHeaders, __BinaryWriter serWriter, Boolean fCheck)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize(Stream serializationStream, Object graph, Header[] headers, Boolean fCheck)
at Telerik.Reporting.Cache.SerializationUtils.Serialize(Object value)
at Telerik.Reporting.Services.Engine.PersistableObject.SetObject(String key, Object value)
at Telerik.Reporting.Services.Engine.DocumentResources.AddResource(RenderingResource resource)
at Telerik.Reporting.Services.Engine.Rendering.StoreRenderingStream(RenderingStream renderingStream)
at Telerik.Reporting.Services.Engine.RenderingStream.Finish()
at Telerik.Reporting.ImageRendering.DocumentPdf.EndDocument()
at Telerik.Reporting.Writing.DocumentWriter.Telerik.Reporting.BaseRendering.IWriter.WriteEndDocument()
at Telerik.Reporting.BaseRendering.PageHandler.Telerik.Reporting.Paging.IPageHandler.EndDocument(Boolean output)
at Telerik.Reporting.Paging.PageCompositionBase.<>c__DisplayClass110_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.InternalWait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, 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)
I have C# external c# function that my report is uses =pws_service.Reports.ReportFunctions.IndentLevel(Fields.Pad, Exec('table5', AllDistinctValues(Fields.Pad)))
It looks like the report designer is unable to locate the c# function code. Is there a configuration to say where this code lives?