DevExpress Reporting 24.1

Released: Jun 13, 2024

24.1 での更新項目

機能

Reporting for Web

  • Native React Report Viewer Component - The native React Report Viewer component leverages the internal architecture of the DevExpress Angular Report Viewer and associated assistive technologies. This implementation delivers superior user experiences and improved performance when compared to solutions based on JavaScript wrappers. The new React Report Viewer ships with the following built-in customization capabilities:
    • Toolbar Customization.
    • Parameters Customization.
  • Native Angular Report Viewer
    • Toolbar Customization API - With this release, the Angular Report Viewer allows you to customize its built-in toolbar as requirements dictate.
    • OnPush Change Detection Strategy Support - This release also adds support for OnPush Change Detection Strategy. Angular's OnPush change detection strategy improves performance by reducing unnecessary rendering cycles and only triggering change detection when input references change. With this update, you can change the detection strategy from default to ChangeDetectionStrategy.OnPush by adding the changeDetection property in the @Component decorator.
  • New Standalone Parameters Panel Component for ASP.NET Core, Blazor, Angular
    • The new Report Parameters Panel component automatically generates a layout for report parameter editors (including associated grouping) based on a report instance supplied from the backend.
    • This component addresses a variety of usage scenarios, including the need to programmatically create a report and export it or send it by mail - without displaying its print preview to an end-user. The Standalone Parameters Panel helps reduce an app's overall memory footprint because it eliminates the need to generate report images in the background and send them to a client app.
    • Component implementation is based on the Parameters Panel in the Report Viewer component. As such, it gives you access to the same set of component public properties and events related to report parameters.
  • Web Report Designer - Hide/Restrict Parameter Editing
    • Introduced a new set of APIs to help customize edit settings for parameters, parameter groups, and parameter separators. This API will be of value when creating a set of "canned" or predefined reports with mandatory/hidden parameters. The new ParameterEditingSettings class contains the following settings that affect the Properties Panel, Field List and Parameter Editor:
      • AllowEditParameterCollection - Hides parameter add and delete buttons.
      • AllowEditParameterGroups - Hides parameter group add and delete buttons.
      • AllowEditParameterSeparators - Hides parameter separator add and delete buttons.
      • AllowEditProperties - Disables properties editors for parameter and groups.
      • AllowReorderParameters - Hides the up and down buttons and disables drag-n-drop operations.
    • A new CustomizeParameterProperties event has also been introduced that allows you to customize a specific parameter or disable/hide specific properties editors at the web Report Designer level.

Reporting for Blazor

  • Report Viewer - Send an Email - An example has been created that uses the Mailkit library to send an email from the Native Blazor Report Viewer. The "Send Email" button in the Viewer's toolbar opens a DxPopup. In the "Send Email" window, you can specify a recipient list, subject, attachment, and body. Click the "Send" button to send the report with the specified settings.

All Platforms

  • SVG Export - This release ships with a new SVG export option. When enabled, it allows users to save reports as a collection of scalable vector graphics (SVG) images. This new export format will produce high-quality vector report page images without loss of text content quality. SVG export will be of value for those who wish to modify/share report images or embed report thumbnails on web pages.
  • New Expression Functions
    • Added the following new expression functions to criteria language syntax used in DevExpress Reports:
      • PrevRowColumnValue(string columnName) - Allows users to retrieve the value of the previous column/row. The function call returns the same record if it is the first record in the data source.
      • NextRowColumnValue(string columnName) - Allows users to retrieve the value of the next column/row. The function call returns the same record if it is the latest record in the data source.
      • GroupIndex(int level) - Allows users to retrieve the current group index.
      • CurrentRowIndexInGroup() - Allows users to retrieve the current row index within a group.
    • Functions are applicable to report control properties whose values can be set via expression binding. They are especially useful when you need to hide first or last records within a group, or highlight these records (i.e., modify appearance properties like Font, BackColor, etc.). Obtaining the group index or the row index within a group is helpful when you need to display group numbering in the group header or record numbering within the group itself. The introduction of PrevRowColumnValue and NextRowColumnValue functions also simplifies migration from Microsoft SSRS and Crystal Reports, where their counterparts exist.
  • Parameters Localization Enhancements - With the built-in DevExpress Reports localization engine, individuals using the Report Designer can now localize the titles of parameter groups displayed within the Parameters Panel across all supported platforms. Descriptions for lookup parameter static values are also localizable.

Cloud Deployment

  • Skia-Based Graphics Engine (non-Windows Environment) - Performance Enhancements - Refactored the implementation of the cross-platform drawing engine: caching has been added for font internals and dynamic memory allocation has been optimized.
  • Microsoft Azure and Amazon Web Services App Deployment Tutorials
    • Created and published a set of help topics designed to simplify the deployment of DevExpress Reports-powered web apps to Microsoft Azure and AWS. Tutorials include:
      • Microsoft Azure
        • The deployment of an ASP.NET Core Reporting app via Visual Studio to Azure App Service (Linux).
        • The deployment of a dockerized ASP.NET Core Reporting app via Visual Studio/CLI to Azure App Service (Linux).
        • The deployment of an Azure Functions App (Linux-based) with the Reporting capabilities.
        • The usage of the Azure Storage Cache to store report documents.
      • Amazon Web Services (AWS):
        • The deployment of a dockerized ASP.NET Core Reporting app (Linux-based) to AWS Elastic Container Service using the AWS Fargate.
        • The deployment of an AWS Lambda function app.
        • The creation and deployment of a REST API application with Reporting capabilities to AWS Lambda.
  • Reporting for Microsoft Azure - Updated References
    • Refactored the internal implementation of services responsible for communicating with the Azure Service Bus and Azure Storage. These services are designed to host multi-instance ASP.NET Web Forms, MVC, and ASP.NET Core web apps with DevExpress Reports on Microsoft Azure. They also allow you to cache report documents in Azure Table and Azure Blob storage. This implementation now uses the most recent versions of the following NuGet packages.
      • Azure.Data.Tables v12.8.3.
      • Azure.Storage.Blobs v7.17.4.
      • Azure.Messaging.ServiceBus v12.19.1.

Accessibility

  • Added support for assistive tools for the following controls:
    • Native Blazor Report Viewer.
    • JS Report Viewer.
    • WinForms Report Viewer.
    • WPF Report Viewer.
  • The accessibility tree has been enhanced to ensure that assistive technologies receive the information they require from user interface elements in accordance with accessibility guidelines outlined in WCAG.
  • Assistive technologies (screen readers) can now access document content in the Native Blazor Report Viewer, JS Report Viewer, WinForms Report Viewer, and WPF Report Viewer controls.
  • The following controls now fully supports keyboard navigation:
    • Native Blazor Report Viewer.
    • HTML5/JS Report Viewer.
  • Users can move through user interface elements and navigate through document content using tab, arrow and special keys.

Data Sources

  • SqlDataSource Wizard - Trust Level Certificate and Encryption Options
    • Enhanced the user experience in the Data Source Wizard while binding a report to an instance of the MS SQL Server. The data source connection screen now features two new options.
    • These new options/changes allow you to avoid the "The certificate chain was issued by an authority that is not trusted" error while binding a report to MS SQL Server database if you cannot set up MS SQL Server differently.
  • SqlDataSource - Postgres Data Driver v7.0 Support - Modified the Postgres Database connection and now allow you to bind DevExpress Reports and BI Dashboards to Postgres Functions while using the newest v7.0 database driver.
  • JsonDataSource - The Use of The System.Text.Json NuGet Package - With this release, DevExpress Reports and BI Dashboard will utilize functionality from the System.Text.Json assembly/NuGet package (by default). This change was influenced by security considerations and the improved performance offered by Microsoft's built-in library.