Bird
Raised Fist0
Power BIbi_tool~15 mins

SUMX and iterators in Power BI - Real Business Scenario

Choose your learning style10 modes available
Scenario Mode
👤 Your Role: You are a sales analyst at a retail company.
📋 Request: Your manager wants to understand the total revenue generated by each product category, considering the quantity sold and unit price for each product.
📊 Data: You have a sales table with columns: ProductCategory, ProductName, QuantitySold, and UnitPrice.
🎯 Deliverable: Create a report that shows total revenue by product category using a calculated measure with SUMX.
Progress0 / 3 steps
Sample Data
ProductCategoryProductNameQuantitySoldUnitPrice
ElectronicsSmartphone10300
ElectronicsLaptop5800
Home AppliancesMicrowave7150
Home AppliancesRefrigerator31200
ClothingT-Shirt2015
ClothingJeans1040
ElectronicsHeadphones1550
Home AppliancesBlender8100
1
Step 1: Create a new calculated measure named 'Total Revenue' in Power BI.
Total Revenue = SUMX(Sales, Sales[QuantitySold] * Sales[UnitPrice])
Expected Result
The measure calculates total revenue for all sales rows by multiplying quantity and price, then summing.
2
Step 2: Create a table visual in Power BI with 'ProductCategory' as rows and the 'Total Revenue' measure as values.
Table visual configuration: Rows = ProductCategory, Values = Total Revenue
Expected Result
The table shows total revenue for each product category.
3
Step 3: Verify the total revenue values by manually calculating for one category, e.g., Electronics.
Electronics revenue = (10*300) + (5*800) + (15*50) = 3000 + 4000 + 750 = 7750
Expected Result
The Electronics category shows a total revenue of 7750.
Final Result
ProductCategory | Total Revenue
----------------|--------------
Electronics     | 7750
Home Appliances | 5450
Clothing        | 700
✓Electronics category generates the highest revenue of 7750.
✓Home Appliances follow with 5450 total revenue.
✓Clothing category has the lowest revenue of 700.
Bonus Challenge

Create a measure that calculates total revenue only for products where QuantitySold is greater than 5.

Show Hint
Use SUMX with a FILTER inside it: SUMX(FILTER(Sales, Sales[QuantitySold] > 5), Sales[QuantitySold] * Sales[UnitPrice])

Practice

(1/5)
1. What does the SUMX function do in Power BI?
easy
A. It sums values after calculating an expression for each row in a table.
B. It counts the number of rows in a table.
C. It filters rows based on a condition.
D. It returns the maximum value from a column.

Solution

  1. Step 1: Understand the purpose of SUMX

    SUMX iterates over each row of a table and evaluates an expression for that row.
  2. Step 2: Summation after calculation

    It then sums all the results of these row-wise calculations to produce a total.
  3. Final Answer:

    It sums values after calculating an expression for each row in a table. -> Option A
  4. Quick Check:

    SUMX = sum after row calculation [OK]
Hint: Remember: SUMX sums after row-by-row math [OK]
Common Mistakes:
  • Confusing SUMX with SUM which sums directly
  • Thinking SUMX counts rows
  • Assuming SUMX filters data
2. Which of the following is the correct syntax for using SUMX in DAX?
easy
A. SUMX(Table, Expression)
B. SUMX(Expression, Table)
C. SUMX(Table)
D. SUMX(Expression)

Solution

  1. Step 1: Identify SUMX parameters

    SUMX requires two parameters: a table to iterate over and an expression to evaluate per row.
  2. Step 2: Confirm correct order

    The correct order is SUMX(Table, Expression), where Table is first, then Expression.
  3. Final Answer:

    SUMX(Table, Expression) -> Option A
  4. Quick Check:

    SUMX syntax = SUMX(Table, Expression) [OK]
Hint: Table first, expression second in SUMX [OK]
Common Mistakes:
  • Swapping the order of parameters
  • Providing only one argument
  • Using incorrect parameter types
3. Given the table Sales with columns Quantity and Price, what is the result of this measure?
SUMX(Sales, Sales[Quantity] * Sales[Price])
medium
A. The maximum Quantity sold in any transaction
B. The total number of sales transactions
C. The average price of all sales
D. The sum of Quantity multiplied by Price for each row

Solution

  1. Step 1: Understand the expression inside SUMX

    For each row, it multiplies Quantity by Price, calculating the sales amount per transaction.
  2. Step 2: SUMX sums all these calculated amounts

    It adds all these row-wise sales amounts to get the total sales value.
  3. Final Answer:

    The sum of Quantity multiplied by Price for each row -> Option D
  4. Quick Check:

    SUMX = sum of (Quantity * Price) [OK]
Hint: SUMX sums after multiplying per row [OK]
Common Mistakes:
  • Thinking it counts rows instead of summing
  • Confusing sum with average or max
  • Ignoring the multiplication inside SUMX
4. Identify the error in this DAX formula:
SUMX(Sales, Sales[Quantity] + )
medium
A. Table name is incorrect
B. Missing expression after the plus sign
C. SUMX cannot use addition inside expression
D. Quantity column does not exist

Solution

  1. Step 1: Check the expression inside SUMX

    The expression ends with a plus sign but has no value after it, making it incomplete.
  2. Step 2: Understand syntax requirements

    Every operator must have operands on both sides; missing operand causes syntax error.
  3. Final Answer:

    Missing expression after the plus sign -> Option B
  4. Quick Check:

    Incomplete expression causes syntax error [OK]
Hint: Check for incomplete expressions after operators [OK]
Common Mistakes:
  • Ignoring incomplete expressions
  • Assuming SUMX disallows addition
  • Mistaking table or column names
5. You want to calculate total profit where profit per sale is (Price - Cost) * Quantity. Which DAX formula using SUMX correctly calculates this?
hard
A. SUMX(Sales, Sales[Price] - Sales[Cost] * Sales[Quantity])
B. SUMX(Sales, Sales[Price] - (Sales[Cost] * Sales[Quantity]))
C. SUMX(Sales, (Sales[Price] - Sales[Cost]) * Sales[Quantity])
D. SUMX(Sales, Sales[Price] * Sales[Cost] * Sales[Quantity])

Solution

  1. Step 1: Understand the profit formula per row

    Profit per sale is (Price - Cost) multiplied by Quantity, so parentheses are needed to subtract before multiplying.
  2. Step 2: Check each option's expression

    SUMX(Sales, (Sales[Price] - Sales[Cost]) * Sales[Quantity]) correctly uses parentheses to subtract Price and Cost first, then multiplies by Quantity.
  3. Final Answer:

    SUMX(Sales, (Sales[Price] - Sales[Cost]) * Sales[Quantity]) -> Option C
  4. Quick Check:

    Correct order of operations with parentheses [OK]
Hint: Use parentheses to ensure correct math order [OK]
Common Mistakes:
  • Missing parentheses causing wrong calculation
  • Multiplying Cost by Quantity before subtracting
  • Using addition instead of subtraction
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard