Skip to content
  • There are no suggestions because the search field is empty.

Dataflow Sets Aggregation Amount (Business Rule)

Applies to
Platform: Microsoft SQL Server · Snowflake · Snowflake dbt · Databricks · Databricks dbt · Fabric Lakehouse · Fabric Warehouse · Oracle

This business rule checks that a dataflow set uses an aggregation in all of its mapped terms or in none of them. It raises an error, which blocks generation in the client until you fix it. The rule ID is ID-10002.

Message

The client shows an error with this text on the model object. <model object name> and <type> stand for its name and type.

Model object '<model object name>' of type '<type>' has the wrong amount
of aggregations defined. If aggregations are used in any term mapping of
a dataflow set, all mapped terms should use an aggregation.

On the model object card, point to the error icon to see this message with the rule ID: Error ID-10002. The Generate Artifacts page lists the message without the ID.

Error popup of a Satellite card with Error ID-10002 and the message details

Cause

At least one term mapping of a dataflow set has an Aggregation Type other than None, and another term mapping of the same dataflow set has an expression but no aggregation. Term mappings with only a default value do not count.

Fix

  1. Open Manage Term Mappings of the model object and select the dataflow set.
  2. Open Edit Term Mapping for each mapped term and set its Aggregation Type. Either every mapped term gets an aggregation, or every one gets None. The error disappears.

Check the result

The error icon is gone from the model object, and generation is no longer blocked by it.

Example

In a Data Mart project on Microsoft SQL Server, the Mart Out dataflow_aggregation_mo aggregates the terms QUANTITY, REDUCTION_PERCENT, SALES_PRICE and TRANSACTION_TIME. The aggregation of SALES_AMOUNT is removed. The client shows:

Model object 'dataflow_aggregation_mo' of type 'Mart Out' has the wrong
amount of aggregations defined. If aggregations are used in any term
mapping of a dataflow set, all mapped terms should use an aggregation.

Related articles