When the report rendering is manually stopped through the Report Viewer, the Release Document request is made, however, it does not wait for the report rendering to be fully canceled, instead, it only sets a flag that it should stop.
The report engine checks for the flag periodically and eventually stops the report rendering, throwing an OperationCanceledException. I need to be able to catch this exception so that I can dispose of the document resources as soon as possible.
When there is rotated text (270 degrees) in the Crosstab header, the FreezeColumnHeaders and FreezeRowHeaders don't work as expected.
Resetting the angle to the default (0 degrees) fixes the problem.
Currently, to customize the report engine, for example to add some custom user functions, we have to either use the app config or provide a IConfiguration to ReportProcessor constructor, which seems to set a static field for all reports, and on top of that we have to provide a whole assembly (which will load ALL non-private static methods, I did try to use typereferences instead of assemblyReferences, but that doesn't seem to work for custom functions).
Meanwhile all we needed was to expose a handful of functions. Our current workaround is to have a whole assembly dedicated to that.
It'd good to be able to:
- Specify either a single class or individual methods through the library API (e.g. reportProcessor.AddCustomFunction("name", (arg) => ...); or reportProcessor.AddCustomFunctions(typeof(MyCustomFunctions);)
- Avoid using static state (it limits how the library can be used and, more importantly, tested)
- Maybe have a way to provide a Service Provider, that Telerik library would use to create services/classes and pull IConfiguration from, especially those we provide, that way the custom functions could use services from our application, rather than using all static methods.
Thank you,
When I render a report with Gujarati language text to PDF on Windows, the GDI graphics engine is used and the text is displayed properly.
When I render the same report with the Skia graphics engine, on Windows or Linux, the characters are misplaced or incorrectly drawn.
Hi Team,
I see you have written this custom example for using EntityFrameworkCore and SQL to act as a source of report storage (not cache storage).
This is a request to do the same but using the Azure Storage File Shares client library for .NET - Azure for .NET Developers | Microsoft Learn SDK to host the TRDP files.
For example:
ReportSourceResolver = new AzureStorageReportSourceResolver()
Thank you,
Mike
When the end-user closes the browser or the window where the web report viewer is rendering the report, the report rendering is not automatically cancelled on the server.
The report rendering should stop when the browser/window is closed.
If I create a report with a report parameter whose value is initially False, and then load it in the Native Angular Report Viewer, it is initially loaded properly.
However, if I click the "Preview" button, and the parameter is still unchecked(false), I get an error that the value is invalid.
The issue does not reproduce if the report parameter has AutoRefresh=True and there is no "Preview" button. I can successfully change the value of the parameter and the report loads without errors.
I have a report that uses custom assemblies and I export it through the ReportProcessor class in my .NET application.
For the reporting engine to resolve the custom assemblies, I had to pass an IConfiguration instance through its constructor where the custom assembly is referenced in the assemblyReferences element - Configuration for the ReportProcessor in .NET.
This approach does not work with the latest version of Telerik Reporting(18.2.24.924). I get errors that the assembly and the used types are not registered in the configuration file when I render the report.
Using the MySQL Connector/NET data provider with the latest version of Telerik Reporting - Telerik Reporting - Progress® Telerik® Reporting 2024 Q3 (18.2.24.924), leads to the following error when using Stored Procedures:
System.ArgumentException: Object of type 'MySql.Data.MySqlClient.MySqlCommand' cannot be converted to type 'System.Data.SqlClient.SqlCommand'.
at System.RuntimeType.TryChangeType(Object value, Binder binder, CultureInfo culture, Boolean needsSpecialCast)
at System.Reflection.MethodBase.CheckArguments(Object[] parameters, Binder binder, BindingFlags invokeAttr, CultureInfo culture, Signature sig)
at System.Reflection.RuntimeMethodInfo.InvokeArgumentsCheck(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at Telerik.Reporting.Processing.Data.SqlProviderFactory.DeriveParameters(IDbCommand command)
at Telerik.Reporting.Processing.Data.SqlCommandProvider.ResolveProcedure(IDbCommand command, SqlDataSourceParameterCollection parameters)
at Telerik.Reporting.Processing.Data.SqlQueryProvider.CreateCommandCore(IDbConnection connection, Boolean evaluateParameters)
at Telerik.Reporting.Processing.Data.SqlQueryProvider.CreateCommand(IDbConnection connection)
at Telerik.Reporting.Processing.Data.SqlDataEnumerable.<GetEnumerator>d__2.MoveNext()
at Telerik.Reporting.Processing.Data.LazyList`1.LazyListEnumerator.MoveNext()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
at Telerik.Reporting.Processing.Data.SeedDataAdapter.Execute(IEnumerable`1 data)
at Telerik.Reporting.Processing.Data.ResultSetAdapter.Execute(IEnumerable`1 data)
at Telerik.Reporting.Processing.Data.MultidimentionalDataProvider.Execute(MultidimensionalQuery query)
at Telerik.Reporting.Processing.DataItemResolveDataAlgorithm.GetDataCore(IDataSource dataSource, MultidimensionalQuery query, IServiceProvider serviceProvider, EvalObject expressionContext, IProcessingContext processingContext)
at Telerik.Reporting.Processing.Report.GetDataCore(IDataSource dataSource, MultidimensionalQuery query)
at Telerik.Reporting.Processing.DataItemResolveDataAlgorithm.ResolveData(String processingId, InMemoryState inMemoryState, MultidimensionalQuery query, Func`1 getDataCore, EvalObject expressionContext)
at Telerik.Reporting.Processing.Report.ResolveData()
at Telerik.Reporting.Processing.Report.ProcessItemCore()
at Telerik.Reporting.Processing.Report.ProcessItem()
at Telerik.Reporting.Processing.ReportItemBase.ProcessElement()
at Telerik.Reporting.Processing.ProcessingElement.Process(IDataMember dataContext)The previous version - Telerik Reporting - Progress® Telerik® Reporting 2024 Q3 (18.2.24.806), is working fine.
Hi Team,
Is it possible to remove dll version and report designer path from Creator and Producer metadata tags. We got this requirement from our client. I am posting the remediation steps shared by our client below-
Is this possible to remove Telerik Reporting 14.1.20.618 (http://www.telerik.com/products/reporting.aspx) highlighted part and keep Telerik Reporting only?
<Telerik.ReportViewer.BlazorNative.ReportViewer
@ref="reportViewer"
ServiceType="ReportViewerServiceType.REST"
PageMode="PageMode.SinglePage"
ServiceUrl="@(ServiceUrl)"
@bind-ReportSource="@ReportSource"
AuthenticationToken="@(AuthToken)"
ScaleMode="(ScaleMode)ReportSetItem.Report.ScaleMode"
@bind-ParametersAreaVisible="@ParametersAreaVisible"
Scale="1.5">
</Telerik.ReportViewer.BlazorNative.ReportViewer>The variable, ParametersAreaVisible, is set to false. The report viewer is still showing the parameters area. I went back to the designer and set all parameters to Visible = false. When I did this, the parameters area is not displayed.
The report viewer should respect what is bound to ParametersAreaVisible.
Currently, any custom implementations of the IResourceResolver and ISharedDataSourceResolver require using a parameterless constructor because the types are initialized via Reflection at runtime.
We would like to be able to dependency inject services into the custom resolver implementations through the constructors.
We have an app that loads a list of reports. When a report is selected, a report viewer page is loaded. It contains a set of parameters. In this stage, we get a http 400 error because it is the hitting the GetParameters endpoint right away. The user has not selected any parameters. It should only hit this endpoint when the user has selected the parameters and runs the report.
This is not the behavior in the HTML viewer.
In the images attached, the Initial Load image is the error we get when the report viewer page is loaded.
The Report Source is the payload when the GetParameters endpoint is called. As you can see it's empty since the report is not ran yet.
In the Running image, the error is when the user runs the report.
When I set the Graph Legend Position to Absolute, the Legend is drawn always inside the Plot area:
I would expect it to behave as the other Legend Positions and draw the Legend outside the Plot area.
I set globally the culture on the Linux Ubuntu Docker Container. Interestingly, the negative currency with en-US and fr-CA was displayed with the '-' sign rather than in brackets.
This was reproduced even in the values set with the Text Function FormatWithCulture(cultureName, format, args). The function displayed wrong formatting also on Windows, even in the Standalone Report Designer for .NET 8.
When the global culture on Windows was en-US, the negative decimal value formatted without the FormatWithCulture function was displayed correctly in .NET 8.
In the .NET Framework, the negative currencies were displayed as expected in all scenarios.
I have linked also a muted video showing the issue.
When I try to open the edit dialog for a report parameter from the Report Explorer in the .NET Standalone Report Designer, the dialog does not open.
The same appoach works as expected with the .NET Framework Standalone Report Designer.
As an alternative for the .NET Standalone Report Designer, the second approach from the ReportParameter Collection Editor at a Glance - Telerik Reporting article may be used.
In my report, I show a tiny goat symbol with the font 'Segoe UI Emoji'. It looks good in the Standalone Designer for .NET Framework, but it is not shown in the PDF export from my .NET application, although the font is correctly embedded.
In the Standalone Report Designer for .NET 8, the goat is not displayed when previewing or exporting either.