JavaScript Object Notation(JSON)はデータが階層形式で格納されたテキストベースデータ形式です。レポートをこの形式でエクスポートするには、JsonRenderingExtension を使用します。
レポートをJSON形式でエクスポートする方法の一例を以下に示します。
Visual Basicコード(Form Loadイベント内に貼り付けます。) |
コードのコピー
|
---|---|
' 描画するページレポートを指定します。 Dim report As New GrapeCity.ActiveReports.PageReport() Dim reportDocument As New GrapeCity.ActiveReports.Document.PageDocument(report) ' 出力先のディレクトリを作成します。 Dim outputDirectory As New System.IO.DirectoryInfo("C:\MyJSON") outputDirectory.Create() ' エクスポートの各種設定を行います。 Dim jsonSettings As New GrapeCity.ActiveReports.Export.Text.Page.JsonRenderingExtension.Settings() jsonSettings.Formatted = True ' RenderingExtensionを使用し、レポートをエクスポートします。 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)) ' 出力ファイルがすでに存在する場合は上書きします。 outputProvider.OverwriteOutputFile = True reportDocument.Render(jsonRenderingExtension, outputProvider, jsonSettings) |
C#コード(Form_Loadイベント内に貼り付けます。) |
コードのコピー
|
---|---|
// 描画するページレポートを指定します。 GrapeCity.ActiveReports.PageReport report = new GrapeCity.ActiveReports.PageReport(); GrapeCity.ActiveReports.Document.PageDocument reportDocument = new GrapeCity.ActiveReports.Document.PageDocument(report); // 出力先のディレクトリを作成します。 System.IO.DirectoryInfo outputDirectory = new System.IO.DirectoryInfo(@"C:\MyJSON"); outputDirectory.Create(); // エクスポートの各種設定を行います。 GrapeCity.ActiveReports.Export.Text.Page.JsonRenderingExtension.Settings jsonSettings = new GrapeCity.ActiveReports.Export.Text.Page.JsonRenderingExtension.Settings(); jsonSettings.Formatted = true; // RenderingExtensionを使用し、レポートをエクスポートします。 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)); // 出力ファイルがすでに存在する場合は上書きします。 outputProvider.OverwriteOutputFile = true; reportDocument.Render(jsonRenderingExtension, outputProvider, jsonSettings); |