dbMango/Rms.Risk.Mango/wwwroot/docs/PivotQueryComponent.md
Alexander Shabarshov 2a7a24c9e7 Initial contribution
2025-11-03 14:43:26 +00:00

4.3 KiB

PivotQueryComponent

The PivotQueryComponent is a Blazor component designed to provide a user interface for configuring and querying pivot table definitions. It supports multiple pivot types and allows users to define custom queries, aggregation logic, and grouping options.

Features

  • Pivot Type Selection: Allows users to select between different pivot types such as Simple Aggregation, Custom Query, and Aggregation for Humans.
  • Dynamic Query Configuration: Provides text areas for defining Before Grouping, Additional Grouping, and After Grouping logic.
  • Custom Query Support: Enables users to define and edit custom queries directly.
  • Query Preview: Allows users to reveal the generated query for the current pivot configuration.
  • Modal Integration: Displays query results or exceptions in a modal dialog.

Parameters

Parameter Type Default Value Description
Class string "" CSS class to apply to the root container of the component.
Pivot PivotDefinition? null The pivot definition object to configure.
PivotService IPivotTableDataSource? null The data source service for pivot operations.
Collection string? null The name of the collection to query.
ExtraFilter FilterExpressionTree.ExpressionGroup? null Additional filter expressions to apply to the query.
GetQueryText Func<string, PivotDefinition, FilterExpressionTree.ExpressionGroup?, CancellationToken, Task<string>> A default function returning an empty string. A delegate to retrieve the query text for the current pivot configuration.

Properties

Property Type Description
SimpleClass string CSS class to toggle visibility of Simple Aggregation fields.
CustomClass string CSS class to toggle visibility of Custom Query fields.
PivotTypeName string The display name of the currently selected pivot type.

Behavior

  • Dynamic State Updates: The component dynamically updates its state when the Pivot parameter changes.
  • Pivot Type Visibility: Fields for Simple Aggregation and Custom Query are conditionally displayed based on the selected pivot type.
  • Query Execution: The RevealTheQuery method generates and displays the query for the current pivot configuration.
  • JavaScript Interop: Supports JavaScript-based code editors for advanced query editing.

Methods

Method Description
SelectPivotType Updates the pivot type and refreshes the component state.
RevealTheQuery Retrieves and displays the query for the current pivot configuration.
ShowQueryDialog Displays the query or error message in a modal dialog.
UpdateBeforeGroupingField Updates the BeforeGrouping field dynamically.
UpdateAdditionalGroupingField Updates the WithinGrouping field dynamically.
UpdateCustomQueryField Updates the CustomQuery field dynamically.

Usage

Example: Basic Usage