Hi,
I have a created a .NET Core application and I have added the Telerik reporting controller as detailed in: http://www.telerik.com/blogs/telerik-reporting-and-aspnet-core
It runs fine when I am using external tdrp reports.
However I am keen to create a report library and use CLR type names.
Unfortunately I am getting the follow error when trying to view the report:
"Unable to get report parameters.
undefinedReport 'Aliaxis.ReportLibrary.Report1%2C%20Aliaxis.ReportLibrary' cannot be resolved."
My viewer report source is set as below :-
//ReportSource - report description
reportSource: {
// The report can be set to a report file name
// or CLR type name (report class definition).
//report: "test.trdp",
report: "Aliaxis.ReportLibrary.Report1, Aliaxis.ReportLibrary",
// Parameters name value dictionary
parameters: {}
}
Report 1 is a blank report with a textbox in the center. Its namespace/class name is :-
namespace Aliaxis.ReportLibrary
{
partial class Report1
Any advice on why I can't get the report to display and am getting this error?
Kind Regards,
Tom
4 Answers, 1 is accepted

What is the error message you receive in the viewer? We would need to check the settings of the viewer and implementation of the REST service (ReportsController) in order to provide you further suggestions.
Most common issues with HTML5 Viewer and the troubleshooting approaches are provided in HTML5 Viewer Troubleshooting help article.
Regards,
Katia
Progress Telerik
[quote]Andrew said:Apologies, you can ignore this question. I've added .AddFallbackResolver(new ReportTypeResolver()) to my rest api controller and all seems to be working.[/quote]
where is the REST api controller?
The Web API Controller is configured by default in the ReportsController class. For details you may check How To: Add Telerik Reporting REST Web API to Web Application and How To: Implement the ReportsController in an application articles.
The communication between the viewer and the REST Service is explained in HTML5 Report Viewer and Reporting REST services article.
Regards,
Todor
Progress Telerik

Hi Jonathan,
I have already responded to a support ticket on the same topic. I will post my answer here too, so other users can also benefit from it.
Generally, the message means that the report cannot be found in the folder it is been looked for. This path is set in the ReportServiceConfiguration in ConfigureServices method of the Startup.cs file:
services.TryAddSingleton<IReportServiceConfiguration>(sp =>
new ReportServiceConfiguration
{
ReportingEngineConfiguration = sp.GetService<IConfiguration>(),
HostAppId = "Html5DemoAppCore",
Storage = new FileStorage(),
ReportSourceResolver = new UriReportSourceResolver(
System.IO.Path.Combine(sp.GetService<IWebHostEnvironment>().ContentRootPath, "reportPath")),
});
I'm afraid I can't say why in Azure the report cannot be found. You need to make sure the reports get successfully deployed in the correct folder on the Azure environment. The problem may be related also to permission to access the folder. You can use Fiddler to check for additional information about the failed request. In the console of the browser you can inspect from which folder the report is loaded.
Regards,
Neli
Progress Telerik
just start using Telerik Reporting for blazor and having same error. as you have mentioned to check "ReportSourceResolver"
but there is "ReportSourceResolver" in ReportServiceConfiguration , i am following example as mentioned in document. i am using "ReportResolver" and here is my code .
services.TryAddSingleton<IReportServiceConfiguration>(sp =>
new ReportServiceConfiguration
{
ReportingEngineConfiguration = ConfigurationHelper.ResolveConfiguration(sp.GetService<IWebHostEnvironment>()),
HostAppId = "ReportingCore3App",
Storage = new FileStorage(),
ReportResolver = new ReportFileResolver(System.IO.Path.Combine(sp.GetService<IWebHostEnvironment>().ContentRootPath, "Reports"))
});
as one of the guy in this asking where should be report on client side or API side ?
AQEEL

All good Working now.
.1 clear all nuget cache(s)
.2 remove nuget.telerik.com source
.3 add again telerik package source again
.4 give your user name and password
search for telerik package , you will see latest packages
in my case designer have different version and package have different
AQEEL
I ran fiddler and this is the response I received if it helps:
400
{"Message":"","ExceptionMessage":"Report 'Aliaxis.ReportLibrary.Report1%2C%20Aliaxis.ReportLibrary' cannot be resolved.","ExceptionType":"Telerik.Reporting.Services.Engine.InvalidReportException","StackTrace":" at Telerik.Reporting.Services.Engine.ReportEngine.ResolveReportSource(String report)\r\n at Telerik.Reporting.Services.Engine.ReportEngine.GetParameters(String clientID, String report, Dictionary`2 parameterValues)\r\n at Telerik.Reporting.Services.AspNetCore.ReportsControllerBase.GetParameters(String clientID, ClientReportSource reportSource)\r\n at lambda_method(Closure , Object , Object[] )\r\n at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeActionMethodAsync>d__27.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at Microsoft.AspNetCore.Mv
208
c.Internal.ControllerActionInvoker.<InvokeNextActionFilterAsync>d__25.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext context)\r\n at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)\r\n at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeNextExceptionFilterAsync>d__24.MoveNext()"}
0
I am getting the exact same error in my HTML 5 viewer, what is the reason for this? seems to happen in many projects when using the latest dll. Code and error below
Viewer Error
Unable to get report parameters.
Report 'ReportLibrary.AccountsReport%2C%20ReportLibrary' cannot be resolved.
Browser Console error
Failed to load resource: the server responded with a status of 404 ()
AccountsReport.html:1 Uncaught (in promise) Error shown. Throwing promises chain stop error.
Report API Code
public class ReportsController : ReportsControllerBase
{
static ReportServiceConfiguration configurationInstance;
static ReportsController()
{
//This is the folder that contains the XML (trdx) report definitions
//In this case this is the app folder
var reportsPath = HttpContext.Current.Server.MapPath("~/");
//Add resolver for trdx report definitions,
//then add resolver for class report definitions as fallback resolver;
//finally create the resolver and use it in the ReportServiceConfiguration instance.
var resolver = new ReportFileResolver(reportsPath)
.AddFallbackResolver(new ReportTypeResolver());
//Setup the ReportServiceConfiguration
configurationInstance = new ReportServiceConfiguration
{
HostAppId = "MvcApp",
Storage = new FileStorage(),
ReportResolver = resolver,
// ReportSharingTimeout = 0,
// ClientSessionTimeout = 15,
};
}
public ReportsController()
{
//Initialize the service configuration
this.ReportServiceConfiguration = configurationInstance;
}
}
Viewer Code
$(document).ready(function () {
$("#reportViewer1")
.telerik_ReportViewer({
// The URL of the service which will serve reports.
// The URL corresponds to the name of the controller class (ReportsController).
// For more information on how to configure the service please check http://www.telerik.com/help/reporting/telerik-reporting-rest-conception.html.
serviceUrl: "/api/reports",
// The URL for custom report viewer template. The template can be edited -
// new functionalities can be added and unneeded ones can be removed.
// For more information please check http://www.telerik.com/help/reporting/html5-report-viewer-templates.html.
//
//ReportSource - report description
reportSource: {
// The report can be set to a report file name (trdx report definition)
// or CLR type name (report class definition).
report: "ReportLibrary.AccountsReport, ReportLibrary"
},
// Specifies whether the viewer is in interactive or print preview mode.
// PRINT_PREVIEW - Displays the paginated report as if it is printed on paper. Interactivity is not enabled.
// INTERACTIVE - Displays the report in its original width and height without paging. Additionally interactivity is enabled.
viewMode: telerikReportViewer.ViewModes.PRINT_PREVIEW,
// Sets the scale mode of the viewer.
// Three modes exist currently:
// FIT_PAGE - The whole report will fit on the page (will zoom in or out), regardless of its width and height.
// FIT_PAGE_WIDTH - The report will be zoomed in or out so that the width of the screen and the width of the report match.
// SPECIFIC - Uses the scale to zoom in and out the report.
scaleMode: telerikReportViewer.ScaleModes.SPECIFIC,
// Zoom in and out the report using the scale
// 1.0 is equal to 100%, i.e. the original size of the report
scale: 1.0,
ready: function () {
//this.refreshReport();
},
parameterEditors: [
{
match: function (parameter) {
return parameter.type === "System.DateTime";
},
createEditor: function (placeholder, options) {
$(placeholder).html('<input type="datetime"/>');
var dateTimePicker = $(placeholder),
parameter,
valueChangedCallback = options.parameterChanged,
dropDownList;
function onChange() {
var dtv = this.value();
if (null !== dtv) {
dtv = myadjustTimezone(dtv);
}
valueChangedCallback(parameter, dtv);
}
return {
beginEdit: function (param) {
parameter = param;
var dt = null;
try {
if (param.value) {
dt = myunadjustTimezone(param.value);
}
} catch (e) {
dt = null;
}
$(dateTimePicker).find("input").kendoDateTimePicker({
format: "dd/MM/yyyy",
parseFormats: ["MM/dd/yyyy"],
min: new Date(2010, 0, 1, 1, 0, 0),
max: new Date(2100, 0, 1, 1, 0, 0),
change: onChange,
value: dt
});
dropDownList = $(dateTimePicker).find("input").data("kendoDateTimePicker");
}
}
}
}]
});
});
I noticed that you are already discussing the issue in the Support ticket you opened on the same topic. Let's continue resolving the problem there.
Regards,
Todor
Progress Telerik
Could you please let us know what is the resolution for this issue,
I have the same issue when I use new developed report not sure why the previous developed report are ok but anything I develop new I cannot use in mu aspx pages I get the same error message
having same issue..
What is the solution?
Where should the REPORT reside?
Does the BUILD ACTION need to be what?
Hi Steven,
Generally, the message means that the report cannot be found in the folder it is been looked for. If the problem appears when the project is deployed, you need to make sure the reports get successfully deployed in the correct folder. The problem may be related also to permission to access the folder. For example, please, make sure that the "Copy to output directory" of the report file is set to True.
I hope this information will help you. Please, let me know if you have any updates.