calc-groups

Implement Power BI calculation groups for cross-measure transformations in TMDL.

2|Updated May 1, 2026
One-click install
npx skills add https://github.com/jonathan-pap/PowerBI-Claude-Design --skill calc-groups
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: calc-groups
Source: https://github.com/jonathan-pap/PowerBI-Claude-Design/tree/main/calc-groups
Command: npx skills add https://github.com/jonathan-pap/PowerBI-Claude-Design --skill calc-groups

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Reference for Power BI Calculation Groups in TMDL. Use this whenever a user asks for time intelligence patterns (YTD, QTD, rolling periods, prior year), scenario switching (Actual/Budget/Forecast), currency conversion, or any pattern where the same transformation needs to apply dynamically across many measures. Always consult this before writing individual YTD/PY/Rolling measures from scratch — a calc group is the correct architecture and eliminates boilerplate at scale.

Core Features & Use Cases

  • Calculation groups intercept SELECTEDMEASURE() and transform it, applying the same logic across every measure in the model without duplicating DAX.
  • Time Intelligence: YTD, QTD, MTD, SAMEPERIODLASTYEAR, rolling windows anchored to LASTDATE('Date'[Date]).
  • Cross-measure transformations: reduce boilerplate and ensure consistent logic across reports and dashboards.

Quick Start

Use the calc-groups skill to reference and implement calculation groups across your Power BI model to standardize time intelligence patterns.

Frequently Asked Questions about calc-groups

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I apply time intelligence patterns across multiple Power BI measures without duplicating DAX?

Power BI calculation groups intercept SELECTEDMEASURE() to apply transformations like YTD, QTD, and rolling windows dynamically across every measure in your model, eliminating duplicated DAX boilerplate at scale.

What is the best way to switch between Actual, Budget, and Forecast scenarios in Power BI dashboards?

Scenario switching in Power BI is achieved using calculation groups, which intercept the selected measure and dynamically apply the appropriate logic for Actual, Budget, or Forecast without creating separate measures for each scenario.

How do I create rolling window calculations in Power BI using calculation groups?

Rolling windows in Power BI calculation groups are anchored using LASTDATE('Date'[Date]), allowing the transformation to intercept SELECTEDMEASURE() and calculate rolling periods consistently across all measures in the data model.

Do I need to use TMDL to implement calculation groups in Power BI?

Familiarity with the TMDL format is required, specifically understanding the 3-tab calculationGroup structure and 3-tab indentation for calculationItem definitions, alongside avoiding forbidden properties when defining the items.

When should I use calculation groups instead of writing individual time intelligence measures from scratch?

You should use calculation groups whenever the same transformation, such as time intelligence or currency conversion, needs to apply dynamically across many measures, as it provides the correct architecture and eliminates boilerplate at scale.

Can calculation groups handle currency conversion across diverse Power BI reports?

Yes, calculation groups support cross-measure transformations like currency conversion by intercepting SELECTEDMEASURE() and applying the conversion logic consistently, ensuring uniform results across all reports and dashboards.