After upgrading to Telerik Reporting 2026 Q3(20.2.26.1007), we are unable to get any of our Object Data sources to load. With the 2026 Q2 release, we had to copy some of the .NET DLL's into the report designer folder for it to work, and after copying the DLLs, everything loaded without any issues.
We have three custom DLL's that depend on MySQLConnector (version 2.6.2) to pull the data from a MySQL DB. When we upgraded to 2026 Q3, we copied our custom DLL's and added them to the config file as assemblyReferences. After copying them in, we added MySqlConnector.dll to the directory. We then received an error that it couldn't load System.Transactions.Local.dll 10.0.0. I copied this DLL into the directory with the EXE for Telerik.ReportDesigner.Net.exe. After adding the DLL, we are now getting this error:
Telerik.Reporting.Processing.Data.ObjectDataSourceException: An error has occurred while resolving 'objectDataSource1' data source: An error occurred while invoking data retrieval method.
---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
---> System.MissingMethodException: Method not found: 'Void System.Data.Common.DbConnection.EnlistTransaction(System.Transactions.Transaction)'.
at MySqlConnector.MySqlConnection.OpenAsync(Nullable`1 ioBehavior, CancellationToken cancellationToken)
at MySqlConnector.MySqlConnection.OpenAsync(Nullable`1 ioBehavior, CancellationToken cancellationToken)
at MySqlConnector.MySqlConnection.Open() in /_/src/MySqlConnector/MySqlConnection.cs:line 517
at TelerikReportsObject.AP.APDebitMemoConnections.GetDataViewSource(UInt32 receiverDetailId, String userName)
at System.Reflection.MethodBaseInvoker.InterpretedInvoke_Method(Object obj, IntPtr* args)
at System.Reflection.MethodBaseInvoker.InvokeDirectByRefWithFewArgs(Object obj, Span`1 copyOfArgs, BindingFlags invokeAttr)
--- End of inner exception stack trace ---
at System.Reflection.MethodBaseInvoker.InvokeDirectByRefWithFewArgs(Object obj, Span`1 copyOfArgs, BindingFlags invokeAttr)
at System.Reflection.MethodBaseInvoker.InvokeWithFewArgs(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 System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
at Telerik.Reporting.TypeValidation.SafeReflection.InvokeMethodSafe(MethodBase mi, Object target, Object[] parameters)
at Telerik.Reporting.Processing.Data.ObjectDataSourceInstanceResolver.TryResolveDataMemberAsMemberMethod(Func`1 resolveTarget, MethodBase mi, Object[] args, Int32 outParemeterIndex, Object& result)
at Telerik.Reporting.Processing.Data.ObjectDataSourceInstanceResolver.TryResolveAsMethodInvocationOnTarget(Type type, Func`1 resolveTarget, String dataMember, ObjectDataSourceParameterCollection parameters, Object& result)
--- End of inner exception stack trace ---
at Telerik.Reporting.Processing.Data.ObjectDataSourceInstanceResolver.TryResolveAsMethodInvocationOnTarget(Type type, Func`1 resolveTarget, String dataMember, ObjectDataSourceParameterCollection parameters, Object& result)
at Telerik.Reporting.Processing.Data.ObjectDataSourceInstanceResolver.TryResolveAsMethodInvocation(Object dataSource, String dataMember, ObjectDataSourceParameterCollection parameters, Object& instance)
at Telerik.Reporting.Processing.Data.ObjectDataSourceInstanceResolver.TryResolveAsMethodInvocation(Object dataSource, String dataMember, Boolean evaluateParametersValues, Object& instance)
at Telerik.Reporting.Processing.Data.ObjectDataSourceInstanceResolver.ResolveDataSource(Object dataSource, String dataMember, Boolean evaluateParametersValues)
at Telerik.Reporting.Processing.Data.ObjectDataSourcePropertiesResolver.ResolveDataSourcePropertiesFromEnumerable(ISimpleDataProvider provider, Object dataSource, String dataMember)
at Telerik.Reporting.Processing.Data.ObjectDataSourcePropertiesResolver.ResolveDataSourceProperties(ISimpleDataProvider provider, Object dataSource, String dataMember, IEnumerable`1 parameters)
at Telerik.Reporting.Processing.Data.ObjectDataProviderBase`1.ResolveDataSourceProperties()
at Telerik.Reporting.Processing.Data.ObjectSchemaAdapter.GetFields()+MoveNext()
at Telerik.Reporting.Processing.Data.SimpleSchemaAdapter.AddDataMeasures(SimpleDataModel model)
at Telerik.Reporting.Processing.Data.SimpleSchemaAdapterBase.Fill(SimpleDataModel model)
at Telerik.Reporting.Processing.Data.SimpleDataProvider`1.GetSchemaCore()
at Telerik.Reporting.Processing.Data.DataProvider`1.Telerik.Reporting.Processing.Data.IDataProvider.GetSchema()
at Telerik.Reporting.Data.Design.DataSourceService.GetLocalSchema(IDataSource datasource, IDataProviderContext dataProviderContext)
at Telerik.Reporting.Data.Design.DataSourceDesignerBase.GetSchemaCore()
at Telerik.Reporting.Data.Design.ObjectDataSourceDesigner.GetSchemaCore()
at Telerik.Reporting.Data.Design.DataSourceDesignerBase.Telerik.Reporting.Design.Interfaces.IDataSchemaProvider.GetSchema()
at Telerik.Reporting.Data.Design.DataSourceService.GetSchemaFromProvider(IDataSchemaProvider provider)
at Telerik.Reporting.Data.Design.DataSourceService.GetSchemaFromContext(Object context)
at Telerik.Reporting.Data.Design.DataSourceService.GetCurrentSchema(Boolean parentContext, Boolean getFromParentRecursively)
at Telerik.Reporting.Data.Design.DataSourceService.Telerik.Reporting.Design.Interfaces.IDataSourceService.GetCurrentDataItemSchema(Boolean getFromParentRecursively)
at Telerik.Reporting.Design.DataExplorerControl.<>c__DisplayClass12_0.<RefreshDataSource>b__0()
Watermark Images with higher than the report rendering DPI are displayed clipped in PPTX rendering.
In PDF, preview of the designers and DOCX the same watermark is shown as expected.
If the DPI of the image is 96 as the default Windows machine DPI used for rendering, the Watermark is displayed correctly also in PPTX.
Currently, like the FileStorage and the MsSqlServerSrorage, the Reporting service performs periodic clean ups of the cachec client assets in the RedisStorage.
Those assets are stored in keys, which do not have an expiration date, so the Reporting service is the one that is single-handedly responsible for deleting those keys.
This approach may work well for the other storages, but in terms of Redis, it leaves more to be desired. Some of the possible cons of this approach are that:
So whether Redis memory is ever reclaimed depends on viewer traffic and upgrade history. In a shared Redis cache, the leftover data builds up until the cache reaches its memory limit. Redis can't evict it, because standard eviction policies apply only to keys with an expiration. The cache then starts rejecting writes, which breaks every application using it.
A cache provider should guarantee its data expires on its own, without depending on later traffic or on cleanup code that knows about earlier versions.
Requested:
An expiration option on RedisStorage, with a sliding expiration refreshed on access. With that in place, Redis reclaims all storage on its own, including data from previous versions, regardless of viewer traffic.
Almost any object can be set to grow (CanGrow = True). Which makes the object grow if the text is too long.
I believe you need a function for making the text fit inside the object.
“ShrinkToFit = True”
This would shrink the text so that it fits inside the object. So if the font size is 20 and a long text wouldn’t fit inside the object, the font size would shrink until it fits.
Today we need to set several conditional formatting rules for this and it’s far from perfect.
I am using the WPF report viewer; however, if I merge the theme resources directly to the report viewer, the search dialog clashes due to a missing "GlyphSearchStop" resource. If I apply them to the hosting window or on application level, the theme affects other controls as well.
Please allow for better control of this so that the resources only affect the viewer and its dialogs.
We render reports to PDF with ReportProcessor.RenderReport, and several renders run in parallel in the same process (background jobs). Occasionally the report items show this error inside the generated PDF instead of their values: "An error has occurred while processing TextBox 'textBox8': Operations that change non-concurrent collections must have exclusive access. A concurrent update was performed on this collection and corrupted its state. The collection's state is no longer correct."
Exception and stack trace:Scenarios:
Observed:
Expected:
In Telerik Reporting versions before 18.1.24.514, I could change the order of items in a section by dragging an item up or down in the Report Explorer list.
If I try that now, nothing seems to happen on the screen. Dragging does not appear to change the position of an item in Report Explorer; the item appears to be fixed in place. However, if I close the report and reopen it, the position of the item may have changed.
The same happens if I use Send To Back/Brink to Front on an item. The new item position is not updated in the Report Explorer.
The data source preview in the web report designer does not show the full shape of the query. It has no horizontal scroll bar to verify the preview data for the entire projection.
Please consider addressing this.
Password-protected PDF documents generated with Telerik Reporting have blank pages when opened with an iPhone.
Hello Team,
I will be great if the Telerik Reporting REST Service Core could support System.Text.Json serialization.
Best Regards,
Hello,
it seems there is some glitch in blazor telerik web report designer. So its not possible, to use stored procedure with parameters as datasource
lets have input parmeter in SP, expecting "some value", how to configure it for report? Only person, which is designin report, puts the value in as constant.
@Typ=1
1) - web report designer doesnt remember sql connection type(Choose data connection): Shared vs EMBEDED. Always fall to shared, when reopening report(but was configured as embeded).
2) - web repor designer, not applying DEFAULT "Configure design time parameters" VALUES, and also "Configure data source parameters". They are correctly stored in TRDP, they are visible in sql wizzard steps, but ALWAYS passed as NULL to the datasource when OPENING report.
= so report is than messed up/or datasource invalid.
**NOT BUG, ENHANCEMET: 3) - allow filtering in SQL datasource wizard "Stored procedure". Normally there is hundred of SP and its pain to pick one. OR allow to write SP directly
4) - when using SQL datasource, its not getting filed values correctly, this command is executed:
exec sp_executesql N' SET FMTONLY OFF; SET FMTONLY ON;exec [dbo].[IMS_PRINT_GETSET] @Typ,@ID;',N'@Typ nvarchar(1),@ID int',@Typ=N'1',@ID=30
in sql wizzard, there is command: "exec [dbo].[IMS_PRINT_GETSET] @Typ,@ID;"
how to solve that?
You are not ALWAYS allowed to modify SP. just consume as DATASOURCE, so its NOT VALID.
IF 1=0 BEGIN
SET FMTONLY OFF
END
iam unable to use version 1007-its not compatibile in project with telerik.blazor 15.1 (conflict in some skia or document proccesing nugets), but its not the case.
example:
Video demonstrating(reopened existing report), all described points + profiler result.
telerik sends - WRONG:
exec sp_executesql N' SET FMTONLY OFF; SET FMTONLY ON;exec [dbo].[IMS_PRINT_GETSET] @Typ,@ID;',N'@Typ nvarchar(4000),@ID int',@Typ=NULL,@ID=NULL
telerik SHOULD send:
exec sp_executesql N' SET FMTONLY OFF; SET FMTONLY ON;exec [dbo].[IMS_PRINT_GETSET] @Typ,@ID;',N'@Typ nvarchar(4000),@ID int',@Typ=N'1',@ID=30
TSQL demo procedure(one procedure for multiple sources - real world usage):
create PROCEDURE [dbo].[IMS_PRINT_GETSET]
@Typ INT,@ID INT
AS
BEGIN
SET NOCOUNT ON;
--!!TELERIK BUGFIX, but you are NOT ALWAYS permited to modify SP!!:
IF 1=0 BEGIN
SET FMTONLY OFF
END
IF @Typ=2 BEGIN
SELECT TOP 500 * FROM vTabOrders_active
RETURN
END
IF @Typ=1 BEGIN
SELECT TOP 500 ID,CisloZakazky,Nazev,Poradi FROM TabXYZ
RETURN
END
END
Thanks, even for some hotfix ideas.
I use the Verdana font in CheckBox items.
In HTML5 and Blazor Report Viewers, the characters like 'p', 'q ', and 'y' appear cut off, just like in this issue:
The workaround with top and bottom padding doesn't work for CheckBox, though.
It would be good a maintain the scroll position on the parent page while navigating back from a drill-through report (using the back button of the report viewer) specially if the parent page contains a vertical scrollbar. This would enhance the user experience and eliminate the need to scroll back to the original position.
It would be great if you could introduce the ability to create custom reusable color palettes in Telerik Report Designer, so I don't have to declare the same set of colors for each chart I need them.
If you have a lot of graphs in your report then it is more convenient to change the color palette one place.
The bug has two requirements for occurring:
When those two conditions are met, the report will fail to render, and an error message stating that one of the numeric values in the report cannot be parsed. For example, the message may look like this:
One or more errors occurred. (The numeric portion of 170.01mm cannot be parsed as a unit of type Mm.)
To avoid the issue, slightly decrease the width of the item so that it does not occupy the full width of the report section. If Docking is used, disable it, or wrap the docked item in a smaller container.
Alternatively, a culture with a dot-based decimal separator may be used.