Hello,
Since my previous post, we've been evaluating the functionalities of the designer.
One of our main requirement is to display data as crosstabs.
We intend to use a WebServiceDataSource to fetch the data as JSON so that the report will only have to display them, without having to make any calculations or containing business rules.
I've included the JSON sample that I'm using below. As you can see, we have a school, which contains classes, which contains a list of students and a list of subjects. Each student has evaluations : a grade in one of the subject of the class. Each subject has a display order and a grade average of the class.
Each report page must display one class with a crosstab. The crosstab must display the grades of each students for each subjects.
Now, I struggle to show the following information (in yellow in the screenshot below) :
For each subject, the average class (from the JSON) should be displayed at the bottom of the crossbar
Some information :
I'd be glad if you could advise me on the best way to solve those issues.
Also, I've two additional questions :
Thanks a lot for your help and I can provide more information if needed or if something is unclear.
Here's the JSON which is the main Datasource. Also, I'm attaching the .trdx (in the .zip) to this post.
{ "schoolName": "Muggle School", "schoolImage": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNk+A8AAQUBAScY42YAAAAASUVORK5CYII=", "classes": [ { "name": "East123", "roomNumber": 10, "studentAmount": 3, "students": [ { "id": 12345, "name": "Snow", "surname": "John", "evaluations": [ { "subjectCode": "ENGL", "grade": 6 }, { "subjectCode": "FREN", "grade": 3 }, { "subjectCode": "MATH", "grade": 5.5 } ] }, { "id": 12346, "name": "Potter", "surname": "Harry", "evaluations": [ { "subjectCode": "ENGL", "grade": 4 }, { "subjectCode": "FREN", "grade": 4.5 }, { "subjectCode": "MATH", "grade": 4.5 } ] }, { "id": 12347, "name": "Parker", "surname": "Peter", "evaluations": [ { "subjectCode": "ENGL", "grade": 5 }, { "subjectCode": "FREN", "grade": 5.5 }, { "subjectCode": "MATH", "grade": 6 } ] } ], "subjects": [ { "code": "ENGL", "label": "English", "displayOrder": 2, "classAverage": 5 }, { "code": "FREN", "label": "French", "displayOrder": 3, "classAverage": 4.5 }, { "code": "MATH", "label": "Mathematics", "displayOrder": 1, "classAverage": 5.5 } ] }, { "name": "South123", "roomNumber": 20, "studentAmount": 3, "students": [ { "id": 12348, "name": "Sparrow", "surname": "Jack", "evaluations": [ { "subjectCode": "ENGL", "grade": 6 }, { "subjectCode": "FREN", "grade": 3 }, { "subjectCode": "MATH", "grade": 5.5 } ] }, { "id": 12349, "name": "Black", "surname": "Sirius", "evaluations": [ { "subjectCode": "ENGL", "grade": 4 }, { "subjectCode": "FREN", "grade": 4.5 }, { "subjectCode": "MATH", "grade": 4.5 } ] }, { "id": 12350, "name": "Baggins", "surname": "Frodo", "evaluations": [ { "subjectCode": "ENGL", "grade": 5 }, { "subjectCode": "FREN", "grade": 5.5 }, { "subjectCode": "MATH", "grade": 6 } ] } ], "subjects": [ { "code": "ENGL", "label": "English", "displayOrder": 2, "classAverage": 5 }, { "code": "FREN", "label": "French", "displayOrder": 3, "classAverage": 4.5 }, { "code": "MATH", "label": "Mathematics", "displayOrder": 1, "classAverage": 5.5 } ] } ] }
I'm trying to use Telerik.Reporting 14.1.20.618 in a NET 8 AWS Lambda. The lambda project makes reference to another class library where there's also a reference to Telerik.Reporting, but whenever I try to generate a report, I keep getting the following error message:
Could not load file or assembly 'Telerik.Reporting, Version=14.1.20.618, Culture=neutral, PublicKeyToken=a9d7983dfcc261be'. An operation is not legal in the current state. (0x80131509)
Resolved assembly's simple name should be the same as of the requested assembly.
at System.Runtime.Loader.AssemblyLoadContext.ValidateAssemblyNameWithSimpleName(Assembly assembly, String requestedSimpleName) at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingEvent(AssemblyName assemblyName) at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingResolvingEvent(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)
I have a report having 28 column to display with 13000 records with grouping applied on 3 fields which comes in 890 pages it takes around 2 mins to render.How to improve the performance of the report?
I am binding List<Generic Type> as report data source.
Hello Telerik,
I am following the Telerik Virtual Classroom course for Telerik Reporting. At the end of the Hosting an API Endpoint section the teacher runs the app and sees the Report Viewer Container. When I launch the app (without errors) I do not see this report container on the Reports.razor page.
Thank you for your assistance.
@page "/report"
@using Telerik.ReportViewer.Blazor
<style>
.trv-report-viewer {
width: 100%;
height: 880px;
}
</style>
Testing Outside of Div
<div class="dashboard">
Testing inside of Div
<ReportViewer ViewerId="rv1"
ServiceUrl="api/reports"
ReportSource="@(new ReportSourceOptions
{
Report = "rps_dashboard_report.trdp"
})"
/>
</div>
<link href="css/dashboard.css" rel="stylesheet" />
@code {
}
I'm using Q32024 (Trial) in a Blazor Server App, added after initial project creation (existing app, not using the "create Telerik app" wizard)
I have a VERY simple page with just a native report viewer (added via Add new Blazor Component -> Telerik Native Report Viewer Page) pointed to the SampleReport generated when adding this page.
When rendering the page, the report takes over 10s to show. (I'm able to provide a video of this). Any other report has the same issue, both with and without parameters. Subsequent loads are a little bit quicker, but still C5s
Looking in Output, it looks like it's attempting to repeatedly render the report - I have the following block repeated several times (Snipped for brevity, more available);
icrosoft.AspNetCore.Components.Server.Circuits.RemoteRenderer: Debug: Completing batch 32 without error in 32.2212ms.
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 154 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 155 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 156 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 157 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.SignalR.Internal.DefaultHubDispatcher: Trace: InvocationId (null): Sending result of type 'System.Void'.
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 158 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 159 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 160 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 161 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 162 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 163 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 164 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 165 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 166 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 167 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 168 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 169 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 170 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 171 of type Telerik.Blazor.Components.ToolBar.ToolBarToolsFactory
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 118 of type Telerik.Blazor.Components.Common.Popup
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 126 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 127 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 128 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 129 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 130 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 131 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 132 of type Telerik.Blazor.Components.ToolBarTemplateItem
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 133 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 134 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 135 of type Telerik.Blazor.Components.ToolBarToggleButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 136 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 137 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 138 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 139 of type Telerik.Blazor.Components.ToolBarToggleButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 140 of type Telerik.Blazor.Components.ToolBarToggleButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 141 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 142 of type Telerik.Blazor.Components.ToolBarButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 143 of type Telerik.Blazor.Components.ToolBarToggleButton
Microsoft.AspNetCore.Components.RenderTree.Renderer: Debug: Rendering component 144 of type Telerik.Blazor.Components.ToolBarToggleButton
Anyone have any ideas as to why it's doing this or why it's SO slow - as it stands it's unacceptable for me to use, but I'm happy for someone to point out where I may have gone wrong / something I may have missed....
<EDIT>
Looking at the code that's been added by the add item wizard, it's correctly (?) added the TelerikRootComponent to my main layout page, but I also needed to wrap the whole Viewer in ANOTHER root component otherwise I'm seeing an error that no root component is present.
Also, and not sure if this is significant, the Sample Report actually states that
"This is a sample report to demonstrate a working HTML5 Report Viewer and REST Reporting Service with XML report definition (trdx). The report definition is created with the Standalone Report Designer" - I understand that the Blazor native viewer is built on top of the HTML5 viewer, but this seemed odd (doubly since it wasn't actually created by the standalone designer but I guess that's the "original" source of the report!
I've also noticed that despite the fact I've set @bind-ParametersAreaVisble to a false value, it still shows (sample report has a date param), even though I'm specifying the parameter;
public ReportSourceOptions ReportSource { get; set; } = new ReportSourceOptions { Report = "sampleReport.trdp", Parameters = new Dictionary<string, object>
{
{"Date", DateTime.Today}
}};
I've also tried passing as a simple string in the format "12/08/2024" - interestingly, in both cases, the value I specify for the parameter is actually shown in the parameter editor
</EDIT>
I have installed the trial report. I tried with standalone report designer for a nested report. I need to filter the table data based on the parent Id of report detail section. Picture is given below.
The report dataSource is SqlDataSourceMain and Table DataSource is sqlDataSourceDetail
I do not want user input parameter for filtering. The report will be filterd based on the parent Id on the Report Detail Section.
I also need similar filter for Graph for each Site_id parent value.
I am looking forward to the solution asap.
Thanks
Zillur