Report Designer Requirements and Limitations

  • 4 minutes to read

Report Designer Requirements

Required Libraries

The Web Report Designer requires the following libraries:

To include these script libraries in a client application, do one of the following:

  • Automatic Integration

    Add the resources section to the application’s Web.config file to include client-side libraries on the web page:

    <devExpress>
        <!-- ... -->
        <resources>
            <add type="ThirdParty" />
            <add type="DevExtreme" />
        </resources>
    </devExpress>
    
  • Manual Integration

    You can prevent a control from loading libraries automatically (e.g., when libraries are already referenced on the web page).

    • Declare an empty resources section in the Web.config file.

      <resources>
      </resources>
      
    • Attach the following scripts and stylesheets to the <head> section of the page:

      <html>
      <head>
          <script src="Scripts/jquery-3.5.1.min.js"></script>
          <script src="Scripts/jquery-ui-1.12.1.custom.min.js"></script>
          <script src="Scripts/knockout-3.5.0.js"></script>
      
          <script src="Scripts/ace/ace.js"></script>
          <script src="Scripts/ace/ext-language_tools.js"></script>
          <script src="Scripts/ace/theme-dreamweaver.js"></script>
          <script src="Scripts/ace/theme-ambiance.js"></script>
      
          <link href="Content/jquery-ui-1.12.1.custom.min.css" type="text/css" rel="Stylesheet" />
          ...
      </head>
      ...
      </html>
      
      TIP

      You can use the following links to download scripts from npm:

    NOTE

    If you remove the DevExpress resources section from the Web.config file, only DevExtreme libraries are loaded. For more information, review the following help topic: Embed Third-Party Libraries.

For a list of supported web browsers, refer to the following help topic: Supported Browsers.

Register HTTP Handlers

Register ASPxHttpHandlerModule in the web.config file as a module to process resources and as a handler to process data.

The ASPxHttpHandlerModule is automatically registered in this file in the following cases:

  • When you use DevExpress project templates to create an application with reporting controls;
  • When the Visual Studio Designer opens a page with the Report Designer in markup.

If you create the Report Designer in code, you should register ASPxHttpHandlerModule explicitly. Insert the declarations in the system.web/httpModules and system.webServer/modules configuration sections, and add the handler registration to the system.web/httpHandlers and system.webServer/handlers sections.

<system.web>
...
  <httpHandlers>
    ...
    <add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v21.1, Version=21.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 
         verb="GET,POST" path="DXXRD.axd" validate="false" />
    <add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v21.1, Version=21.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 
         verb="GET,POST" path="DXXRDV.axd" validate="false" />
    <add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v21.1, Version=21.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 
         verb="GET,POST" path="DXQB.axd" validate="false" />
  </httpHandlers>  
  <httpModules>
    <add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v21.1, Version=21.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" name="ASPxHttpHandlerModule" />
  </httpModules>
</system.web>
<system.webServer>
  <handlers>
    ...
    <add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v21.1, Version=21.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 
         verb="GET,POST" path="DXXRD.axd" name="ASPxReportDesignerHandlerModule" preCondition="integratedMode" />
    <add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v21.1, Version=21.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 
         verb="GET,POST" path="DXXRDV.axd" name="ASPxWebDocumentViewerHandlerModule" preCondition="integratedMode" />
    <add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v21.1, Version=21.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" 
         verb="GET,POST" path="DXQB.axd" name="ASPxQueryBuilderDesignerHandlerModule" preCondition="integratedMode" />
  </handlers>
  <modules runAllManagedModulesForAllRequests="true">
    <add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v21.1, Version=21.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" name="ASPxHttpHandlerModule" />
  </modules>
</system.webServer>

The Report Designer validates the configuration and displays the following error message if the corresponding handlers are not registered.

The DXXRD.axd handler is not registered in the web.config (section: system.webServer/handlers). To disable web.config validation, use the DevExpress.Web.Mvc.ReportDesignerSettings.DisableHttpHandlerValidation property.

Do not use handlers and/or validate their registration in the following cases:

  • You use custom HTTP handlers or MVC controllers to process requests.
  • If the application does not include SQL data sources and users do not need Query Builder functionality in the Report Designer, the DXQB.axd handler is unnecessary.
  • Handlers are registered in the <location> section and automatic validation fails.

To disable automatic handler validation, set the ReportDesignerSettings.DisableHttpHandlerValidation option to true:

@Html.DevExpress().ReportDesigner(settings => {
    settings.Name = "ReportDesigner1";
    settings.DisableHttpHandlerValidation = true;
}).Bind(Model.Report).GetHtml();

Scripting Support

Report scripts are disabled in the Web Report Designer. For more information on security in report scripts, review the following help topic: Scripts Security.

Limitations