ActiveReports 18 .NET Edition
Developers / Export Reports / Export Page/RDLX Reports / XML Export
In This Topic
    XML Export
    In This Topic

    XML is a useful format for delivering data to other applications as the resulting XML file opens in an internet browser. You can use the XmlRenderingExtension to render your report in this format. XML is a good format for delivering data to other applications. The resulting XML file opens in an internet browser.

    Xml Rendering Properties

    ActiveReports offers several options to control how reports render to XML.

    Property Description
    Encoding Select the encoding schema to use in the XML transformation.
    XslStylesheet

    Select the existing XSL Stylesheet file to use to transform the resulting XML file. Note: When using the XslStylesheet option, be sure to save the file in the correct file format, such as HTML.

    Controlling XML Output

    You can also control XML output through properties on the individual report controls. These properties are:

    Interactivity

    XML format does not support interactive features except that when rendering a report to XML, complete drill-down data is shown regardless of whether the data is rendered in an expanded state or not.

    Export Report using XML Rendering Extension

    The following steps provide an example of rendering a report in XML format.

    1. Create a new Visual Studio project.
    2. In the New Project dialog that appears, select ActiveReports 18 Page report Application and specify a name for the project in the Name field.
    3. Click OK to create a new ActiveReports 18 Page report Application. By default, a Page report is added to the project.
    4. Add a reference to MESCIUS.ActiveReports.Export.Xml package in the project.
    5. On the Form.cs or Form.vb that opens, double-click the title bar to create the Form_Load event.
    6. Add the following code inside the Form_Load event.
    Visual Basic.NET code. Paste INSIDE the Form Load event.
    Copy Code
    ' Provide the Page report you want to render.
    
    Dim rptPath As New IO.FileInfo("..\..\PageReport1.rdlx")
    
    Dim pageReport As New GrapeCity.ActiveReports.PageReport(rptPath)
    
    ' Create an output directory.
    Dim outputDirectory As New System.IO.DirectoryInfo("C:\MyXml")
    outputDirectory.Create()
    
    ' Provide settings for your rendering output.
    Dim xmlSetting As New GrapeCity.ActiveReports.Export.Xml.Page.Settings()
    Dim setting As GrapeCity.ActiveReports.Extensibility.Rendering.ISettings = xmlSetting
    
    ' Set the rendering extension and render the report.
    Dim xmlRenderingExtension As New GrapeCity.ActiveReports.Export.Xml.Page.XmlRenderingExtension()
    
    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(xmlRenderingExtension, outputProvider, xmlSetting)
    
    C# code. Paste INSIDE the Form Load event.
    Copy Code
    // Provide the Page report you want to render.
    System.IO.FileInfo rptPath = new System.IO.FileInfo(@"..\..\PageReport1.rdlx");
    
    GrapeCity.ActiveReports.PageReport pageReport = new GrapeCity.ActiveReports.PageReport(rptPath);// Create an output directory.
    System.IO.DirectoryInfo outputDirectory = new System.IO.DirectoryInfo(@"C:\MyXml");
    outputDirectory.Create();
    
    // Provide settings for your rendering output.
    GrapeCity.ActiveReports.Export.Xml.Page.Settings xmlSetting = new GrapeCity.ActiveReports.Export.Xml.Page.Settings();
    GrapeCity.ActiveReports.Extensibility.Rendering.ISettings setting = xmlSetting;
    
    // Set the rendering extension and render the report.
    GrapeCity.ActiveReports.Export.Xml.Page.XmlRenderingExtension xmlRenderingExtension = new GrapeCity.ActiveReports.Export.Xml.Page.XmlRenderingExtension();
    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(xmlRenderingExtension, outputProvider, xmlSetting);