Migrate Report Designer application
To migrate an Angular Report Designer application from Syncfusion® Essential Studio to Bold Reports®, replace the old npm packages, scripts, assemblies, NuGet packages, namespaces and control tags with the Bold Reports® ones. Bold Reports® introduces new client-side and server-side assemblies to resolve the compatibility problem between Essential Studio Report Designer versions, with changes in both the Web API service and the client-side scripts.
The following sections provide step-by-step instructions for migrating the Report Designer from Syncfusion® Essential Studio release version to Bold Reports® version higher than v5.2.xx of Angular Report Designer application.
NPM packages
| Platform | Old Package | New Package |
Javascript |
syncfusion-javascript |
@boldreports/javascript-reporting-controls |
Angular |
ej-angular2 |
@boldreports/angular-reporting-components |
Globalize |
syncfusion-ej-global |
@boldreports/global |
The preceding JavaScript npm packages contain the following scripts and styles required for Reporting components.
| Reporting Component | Styles | Scripts | Usage |
|---|---|---|---|
| Report Viewer |
bold.report-viewer.min.css
|
bold.reports.common.min.jsbold.reports.widgets.min.jsbold.report-viewer.min.js |
bold.report-viewer.min.css - It contains the styles and css references of reporting dependent components.bold.reports.common.min.js - Common script for reporting widgets.bold.reports.widgets.min.js - It contains the scripts of dependent Syncfusion® controls that are common for both Report Designer and Report Viewer.bold.report-viewer.min.js - Renders the Syncfusion® Report Viewer widget. |
| Report Designer |
bold.report-designer.min.css
|
bold.reports.common.min.js bold.reports.widgets.min.js bold.report-viewer.min.js bold.report-designer.min.js
|
bold.report-designer.min.css - It contains the styles and css references of Report Designer Component.bold.reports.common.min.js - Common script for reporting widgets.bold.reports.widgets.min.js - It contains the scripts of dependent controls that are common for both Report Designer and Report Viewer.bold.report-viewer.min.js - Previews the reports designed with Report Designer.bold.report-designer.min.js - Renders the Syncfusion® Report Designer widget. |
Server-side migration
Assemblies
| Old Assemblies | New Assemblies | Description |
|---|---|---|
Syncfusion.EJ.ReportViewer.dll Syncfusion.EJ.ReportDesigner.dll
|
BoldReports.Web.dll
|
The Syncfusion.EJ.ReportViewer.dll and Syncfusion.EJ.ReportDesigner.dll assemblies have been combined as BoldReports.Web.dll. |
Packages
| Old Packages | New Packages |
|---|---|
Syncfusion.Web.ReportDesigner Syncfusion.Web.ReportViewer |
BoldReports.Web
|
Namespace changes
|
Assembly Name |
Old Namespace |
New Namespace |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Based on the preceding assembly and namespace changes, modify the Report Designer Web API Controller in your application.
Control initialization
| Old code snippet | New code snippet |
|---|---|
<ej-reportdesigner id="designer">
</ej-reportdesigner>
|
<bold-reportdesigner id="designer">
</bold-reportdesigner>
|
Report export configuration
The BoldReports.Web assembly can export the reports with data visualization components such as chart, gauge, and map, only if you configure the web scripts in the Report Designer Web API controller. To configure the scripts in the Web API controller, use the following steps:
-
Open the Report Designer Web API controller.
-
Configure the following scripts and styles in
OnInitReportOptionson Web API controller:jquery-3.6.0.min.jsbold.reports.common.min.jsbold.reports.widgets.min.jsbold.report-viewer.min.js
-
You can replace the
OnInitReportOptionsaction in the Report Designer Web API controller using the following code snippet:[NonAction] public void OnInitReportOptions(ReportViewerOptions reportOption) { var resourcesPath = System.Web.Hosting.HostingEnvironment.MapPath("~/Scripts"); reportOption.ReportModel.ExportResources.Scripts = new List<string> { resourcesPath + @"\bold-reports\common\bold.reports.common.min.js", resourcesPath + @"\bold-reports\common\bold.reports.widgets.min.js", resourcesPath + @"\bold-reports\bold.report-viewer.min.js" }; reportOption.ReportModel.ExportResources.DependentScripts = new List<string> { "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js" }; }The data visualization components will not export without the above script configurations.