[]
JavaScript Object Notation (JSON) is a text-based data format in which the data is stored in the hierarchical form. You can use the JsonRenderingExtension to render your report in this format.
ActiveReports offers several options to control how reports render to JSON.
Property | Description |
---|---|
Specifies whether to format the file with tabs and spaces for readability. | |
Specifies whether to enclose property names in quotation marks. |
The following steps provide an example of rendering a report in JSON format.
Create a new or open an existing Windows Forms App in Visual Studio project.
Go to the Project Explorer, right-click the project and select Add > New Item.
Select ActiveReports 19 Standalone Report > Add and choose a report type, RDLX, RDLX Dashboard, or Page report and then click Finish.
Add a reference to MESCIUS.ActiveReports.Export.Xml package in the project.
On the Form.cs or Form.vb that opens, double-click the title bar to create the Form_Load event.
Add the following code inside the Form_Load event.
' Provide the Page report you want to render.
Dim rptPath As System.IO.FileInfo = New System.IO.FileInfo("..\..\..\Report1.rdlx")
Dim pageReport As GrapeCity.ActiveReports.PageReport = New GrapeCity.ActiveReports.PageReport(rptPath)
' Create an output directory.
Dim outputDirectory As New System.IO.DirectoryInfo("C:\MyJSON")
outputDirectory.Create()
' Provide settings for your rendering output.
Dim jsonSettings As New GrapeCity.ActiveReports.Export.Text.Page.JsonRenderingExtension.Settings()
jsonSettings.Formatted = True
' Set the rendering extension and render the report.
Dim jsonRenderingExtension As New GrapeCity.ActiveReports.Export.Text.Page.JsonRenderingExtension()
Dim outputProvider As New GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider(outputDirectory, System.IO.Path.GetFileNameWithoutExtension(outputDirectory.Name))
' Overwrite output file if it already exists.
outputProvider.OverwriteOutputFile = True
pageReport.Document.Render(jsonRenderingExtension, outputProvider, jsonSettings)
// Provide the Page report you want to render.
System.IO.FileInfo rptPath = new System.IO.FileInfo(@"..\..\..\Report1.rdlx");
GrapeCity.ActiveReports.PageReport pageReport = new GrapeCity.ActiveReports.PageReport(rptPath);
// Create an output directory.
System.IO.DirectoryInfo outputDirectory = new System.IO.DirectoryInfo(@"C:\MyJSON");
outputDirectory.Create();
// Provide settings for your rendering output.
eReports.Export.Text.Page.JsonRenderingExtension.Settings jsonSettings = new
GrapeCity.ActiveReports.Export.Text.Page.JsonRenderingExtension.Settings();
jsonSettings.Formatted = true;
// Set the rendering extension and render the report.
GrapeCity.ActiveReports.Export.Text.Page.JsonRenderingExtension jsonRenderingExtension = new
GrapeCity.ActiveReports.Export.Text.Page.JsonRenderingExtension();
GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider outputProvider = new GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider(outputDirectory,
System.IO.Path.GetFileNameWithoutExtension(outputDirectory.Name));
// Overwrite output file if it already exists.
outputProvider.OverwriteOutputFile = true;
pageReport.Document.Render(jsonRenderingExtension, outputProvider, jsonSettings);