The SVG image is not rendered correctly. A sample report and the SVG can be found attached.
The designer outputs as on the picture below which is not correct:
Hello
I have problem with visual studio auto close when I'm working in reporting designer.
When I'm working in reporting designer and do about 5 changes, Visual studio freezes and after few monents is restarted and I loose all my work.
It is really frequented problem and I can hardly work with reporting designer.
In Windows Event Viewer I everytime find this exception that referes to problem in GetAggregateFunctions().
Application: devenv.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.NullReferenceException
Server stack trace:
at Telerik.Reporting.Processing.AggregateFunctionHelper.GetAggregateFunctions(IServiceProvider provider)
at Telerik.Reporting.Design.Common.ExpressionBuilder.CategoryAdapter.<GetAggregates>d__1b.MoveNext()
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at Telerik.Reporting.Design.Common.ExpressionBuilder.CategoryAdapter.FillAggregates(Category funcCategory, IServiceProvider provider)
at Telerik.Reporting.Design.Common.ExpressionBuilder.CategoryAdapter.CreateHierarchy(IServiceProvider provider, Boolean isFieldsTreeVisible)
at Telerik.Reporting.Design.Common.ExpressionBuilder.ExpressionBuilderDialog.LoadCategories(IServiceProvider provider)
at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)
at System.Runtime.Remoting.Proxies.RealProxy.EndInvokeHelper(System.Runtime.Remoting.Messaging.Message, Boolean)
at System.Runtime.Remoting.Proxies.RemotingProxy.Invoke(System.Object, System.Runtime.Remoting.Proxies.MessageData ByRef)
at Telerik.Reporting.Design.Common.ExpressionBuilder.ExpressionBuilderDialog+LoadCategoriesDelegate.EndInvoke(System.IAsyncResult)
at Telerik.Reporting.Design.Common.ExpressionBuilder.ExpressionBuilderDialog.OnLoadCategoriesComplete(System.IAsyncResult)
at System.Runtime.Remoting.Messaging.AsyncResult.SyncProcessMessage(System.Runtime.Remoting.Messaging.IMessage)
at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(System.Runtime.Remoting.Messaging.IMessage, System.Runtime.Remoting.Messaging.IMessageSink)
at System.Runtime.Remoting.Proxies.AgileAsyncWorkerItem.DoAsyncCall()
at System.Runtime.Remoting.Proxies.AgileAsyncWorkerItem.ThreadPoolCallBack(System.Object)
at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(System.Object)
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
at System.Threading.ThreadPoolWorkQueue.Dispatch()
at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()
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.
Example:
One panel contains two textboxes which both have property Docking set to 'Top'. If the first textbox expands when rendering as a result of overflowing content and property CanGrow set to 'True', the next textbox seems to be correctly positioned, but any item position below the panel with Docking set to 'Top' will be incorrectly positioned.
Error: Can not resolve assembly from Telerik.ReportViewer.Wpf.Design.Resources.Telerik.Windows.Data.dll Error: System.ArgumentException: The path is not of a legal form.at System.IO.Path.NewNormalizePath(String path, Int32 maxPathLength, Boolean expandShortPaths)at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)at System.IO.Path.GetFullPathInternal(String path)at System.Reflection.AssemblyName.GetAssemblyName(String assemblyFile)at Telerik.ReportViewer.Wpf.Design.Resources.GetResourceAssemblyName(ITracer tracer, String asmName) Error: System.NullReferenceException: Object reference not set to an instance of an object.at Telerik.ReportViewer.Wpf.Design.ItemTemplateWizard.CheckTelerikWpfReferences()at Telerik.ReportViewer.Wpf.Design.ItemTemplateWizard.RunStartedCore(Dictionary`2 replacementsDictionary)
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.
The application is published as a single-file application on Linux. Here is the stack trace of the error:
[21:52:53 ERR] Value cannot be null. (Parameter 'path1') System.ArgumentNullException: Value cannot be null. (Parameter 'path1') at System.IO.Path.Combine(String path1, String path2) at Telerik.Reporting.Configuration.JsonConfigurationProvider.LoadConfiguration() at Telerik.Reporting.Configuration.JsonConfigurationProvider.InstantiateProvider() at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode) at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor) at System.Lazy`1.CreateValue() at System.Lazy`1.get_Value() at Telerik.Reporting.Configuration.JsonConfigurationProvider.get_Instance() at Telerik.Reporting.Configuration.TelerikConfigurationManager.GetConfigurationProvider() at Telerik.Reporting.Configuration.TelerikConfigurationManager.get_ConfigurationProvider() at Telerik.Reporting.Configuration.TelerikConfigurationManager.GetReportingSection() at Telerik.Reporting.Configuration.ReportingConfiguration.get_Default() at Telerik.Reporting.Processing.RenderingExtensionManager.get_RenderingExtensions() at Telerik.Reporting.Processing.ReportProcessor.GetExtensionInfoCore(String name) at Telerik.Reporting.Processing.ReportProcessor.GetExtensionInfo(String format) 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.RenderReport(String format, ReportSource reportSource, Hashtable deviceInfo, CancellationToken cancellationToken) at Telerik.Reporting.Processing.ReportProcessor.RenderReport(String format, ReportSource reportSource, Hashtable deviceInfo) at HaliburtonSoftware.Reporting.Generation.GenerationProcessor.CreateReport(InstanceReportSource reportSource, String fileName, ReportFormat reportFormat) at HaliburtonSoftware.Reporting.Generation.GenerationProcessor.ProcessReport(String culture, String reportName, ReportFormat reportFormat, String fileName, IList`1 parameters, Hashtable deviceInfo)
I also had lots of issues trying to get the application version information of a single-file application and had to revert to using an environmental variable in the container.
Hello,
I can see that we can operate over a file definition using save, open, and save as. It would also be nice to be able to download the report definition as well.