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,
In some cases, the engine will not render the graph and will instead display the message
The current NumericalScale settings would result in more than 1000 labels which will make the scale unreadable. Please set the axis/ grid lines visibility to False or change the corresponding property.
The reason to see this or similar messages is that the selected LabelStep, MajorStep, or MinorStep scale property has a value that is too small and the processing engine will violate the previously mentioned constraint numbers.
The issue is fixed by manually correcting the values for those properties but I wish that the automatic configuration would be better.
The report items that have explicitly set background in the report definition are not highlighted by the Search functionality of the viewer when their content matches the search.
Reproducible with Blazor Native Report Viewer.
Partially reproducible with HTML5 Viewer - the highlighted (when selecting the item in the Search list) class is applied but the shaded is not.
The workaround is to use the following styles on the page with the viewer:
<style>
.trv-report-viewer-wrapper .trv-search-dialog-highlighted-result {
background-color: rgba(0, 35, 102, 0.3);
color: #fff;
background-image: none;
}
.trv-report-viewer-wrapper .trv-search-dialog-shaded-result {
background-color: rgba(255, 140, 0, 0.3);
}
</style>
I have a calculated field of type Decimal where I may dynamically return 0 in some of the rows of data.
If this happens with the first data row, it will not respect the selected data type and will instead infer that the type of data is an integer.
If I use this calculated field in an aggregate function such as Sum(), since the type of the first value will be integer, it will treat the other values as integers as well and the total sum will be incorrectly aggregated.
Reproducible in version: 18.2.24.924 +
Not reproducible in version: 18.2.24.806
Description
In releases before 18.2.24.924 it was enough to open dll with types from SRD in order to be able to import the type reports. Currently, this is possible only if you copy the dll next to SRD exe file and add entry in Assembly References for the dll.
Steps To Reproduce
Build the project CSharp.ReportLibrary.csproj in C:\Program Files (x86)\Progress\Telerik Reporting 2024 Q4\Examples\CSharp.NET Framework\ReportLibrary
Start SRD FF and from Open menu select the CSharp.ReportLibrary.dll dll in C:\Program Files (x86)\Progress\Telerik Reporting 2024 Q4\Examples\CSharp.NET Framework\ReportLibrary\bin\Debug
Expected behavior
Something like "Please add first Assembly reference to the dll... from ...". Or even better. Do you allow the assembly ... to be loaded? And we can add the assembly reference instead of the customer.
Actual behavior
TypeReference error.
It would be very convenient if we could just right-click on a calculated field, such as "Period" in the screenshot below, and be able to modify the existing expression (within a context window)
Instead, I now have to do the following:
1. Click on the Data Source
2. Click on the ellipses button within the "Calculated Fields" property of the Data Source's properties
3. Find the desired expression within the "Edit Calculated Fields" window
4. Click on the expression's drop-down and select <Expression>
That's a lot of clicks for something that is done rather frequently!
If you have the latest Telerik.Reporting NuGet package (18.3.24.1112) installed simultaneously with the Telerik.Documents.Fixed NuGet package, indeed, the compile time error occurs:
The type 'Size' exists in both 'Telerik.Documents.Core, Version=2024.4.1106.20, Culture=neutral, PublicKeyToken=5803cfa389c90ce7' and 'Telerik.Reporting, Version=18.3.24.1112, Culture=neutral, PublicKeyToken=a9d7983dfcc261be'
This undesired behavior is not reproducible with the previous version of Telerik Reporting. This is caused due to the fact that Telerik.Documents.Primitives.Size is contained in both assemblies/packages.
Workaround: Resolving Compile Time Error with Telerik.Documents.Fixed and Telerik.Reporting after Upgrading to Q4 2024
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.
I need an option to set line height for contest in report.
I export the same TRDP report that embeds a Bitmap image on Windows with GDI and on Linux Docker Container.
The result PDF file from the Linux environment is much bigger than the one generated on Windows.
My report contains a Crosstab with HTMLTextBox. When exporting to PDF, the document looks fine.
In Word export, the HTMLTextBox content is partly hidden and shows only when I manually extend the corresponding item height.
In the Standalone Report Designer, collection editors, such as the ReportParameter Collection Editor, do not show the context menu when a property is right-clicked, and resetting property values through such windows is not possible.
The Properties window of the designer illustrates the expected behavior.
We use some cascading/dependant parameters and, in some cases, these have their "value" property (initial/default) value unset, generally to prevent the viewer auto-run as well as to give the user a chance to select first.
The dependant parameters have their Value properties set to the ValueMember field(e.g. =Fields.value) so when the cascading parameter is selected, the dependant will have a valid value set.
However, the "missing or invalid parameter" still shows that the dependant parameter has an invalid value.For example:
In the WebReportDesigner, when resizing a table cell on the designer-Element (NOT through the properties area), the Units of width and height are always reset to pixel.
The selected unit should not change when resizing the table cell/column/row.
The Web Report Designer lets the user change the size of a TextBox inside a Table cell from its Properties. The change is also visualized in design time. For example, if the TextBox is enlarged, it sticks outside the table.
The above change is not respected in the preview of the web designer.
I would expect such a resize to be impossible, as in the Standalone Designer; or the entire table column/row to change its size accordingly.