EPEnglishPreps Log InFree Sign Up
Home › Academic Composition › Other Compositions

Course (Part 749)

Other Compositions · English · 3 Dec 2025

🎯 Other Compositions🌐 English📅 3 Dec 2025📖 Course 40 of 683
📚 All Other Compositions compositions
🧠 Test Your Skill10 questions from this composition
Other CompositionsCourse (Part 749)

Course: Microsoft Power BI: Beginner to Advanced Intelligence

Here is a short composition (13 sentences) followed by the requested lecture sheet as semantic HTML. Composition (13 sentences) Power BI’s DAX (Data Analysis Expressions) is the language that unlocks advanced calculations and meaningful models inside reports. In this course we begin by establishing the practical foundations for using DAX in real-world Power BI work. You will learn why calculated tables are useful, and how a dedicated calendar table improves every time intelligence calculation. For example, a simple DAX calendar expression can generate a complete date dimension from the minimum to the maximum date in a fact table. We also demonstrate how to summarize and aggregate data using SUMMARIZECOLUMNS, and how measures such as Orders or Avg Profit per Order are produced. The DIVIDE function is emphasized because it safely handles division and prevents division-by-zero errors. Students will learn that DAX queries do not inherit Power BI visual sort orders; ORDER BY must be specified explicitly. The course introduces START AT for controlled query pagination so you can inspect records beginning at a chosen identifier. Throughout, we balance conceptual clarity with hands-on practice so you can build, test, and optimize models and queries. By the end of the chapter you will understand the who, what, and why of DAX and be ready to write safe, clear measures. The training emphasizes good practices: create date tables in the model, prefer measures over repeated calculations, and use filters thoughtfully. We’ll practice with examples such as summarizing clothing sales by month and computing average profit per order. Welcome aboard — this course is designed to make DAX useful, practical, and immediately applicable to your Power BI reports. Lecture sheet — semantic HTML

Lesson

Topic: Power BI DAX Fundamentals — Calculated Tables, Summaries, Queries, and Practical Practices

Learning Outcomes

  • Understand what DAX is and where it is used in Power BI.
  • Create calculated tables (calendar table example) and know why a date dimension matters.
  • Summarize data using SUMMARIZECOLUMNS and compute robust measures (Orders, Avg Profit per Order).
  • Write DAX queries (EVALUATE) and control ordering (ORDER BY) and pagination (START AT).
  • Handle errors and blanks with DIVIDE, IFERROR/COALESCE and manage filter contexts with CALCULATE/ALL/ALLEXCEPT/REMOVEFILTERS.

Conceptual Explanation

DAX (Data Analysis Expressions) is a formula language created for data modeling and analytics in Power BI and related Microsoft tools. Its primary artifacts are calculated columns, measures, and calculated tables. Calculated tables let you derive new tables from existing data; for time intelligence you typically create a calendar table using CALENDAR(MIN(...), MAX(...)). Aggregation and grouping in queries usually use SUMMARIZECOLUMNS (or SUMMARIZE) combined with measures. For per-row math or protections against divide-by-zero use DIVIDE; to handle missing data use COALESCE or IF(ISBLANK(...)). DAX queries (EVALUATE ...) return tables and must explicitly specify ORDER BY if you need a particular sort; Power BI visual sort order is not applied. START AT can be used to display rows beginning at a specific key. CALCULATE changes filter context and, together with USERELATIONSHIP or CROSSFILTER, lets you use alternate relationships in calculations. For advanced filtering control, functions like ALL, ALLEXCEPT, and REMOVEFILTERS are essential. Use variables (VAR ... RETURN ...) to simplify and optimize complex expressions. Finally, combine clean data preparation (Power Query) with DAX measures for best performance and clarity.

Bilingual (EN → বাংলা)

EN: Create a calendar table with DAX: Dim_Calendar = CALENDAR(MIN('Fact_StrategyPlan'[Datekey]), MAX('Fact_StrategyPlan'[Datekey])).

বাংলা: DAX দিয়ে ক্যালেন্ডার টেবিল তৈরি করুন: Dim_Calendar = CALENDAR(MIN('Fact_StrategyPlan'[Datekey]), MAX('Fact_StrategyPlan'[Datekey]))। এটি সময়ভিত্তিক বিশ্লেষণের জন্য প্রয়োজনীয়।

Important Notes

  • Use Power Query for heavy cleaning. Use DAX for model-level calculations and measures.
  • DAX queries do not inherit visual sort order — include ORDER BY in your DAX queries.
  • Prefer measures to repeated expressions; use VAR for readability and performance.
  • Protect against errors with DIVIDE and handle blanks with COALESCE / ISBLANK.
  • Document renamed/deleted fields; deleting referenced measures breaks visuals.

Exercises

True / False

  1. SUMMARIZECOLUMNS automatically inherits the sort order from Power BI visuals.
  2. Answer

    False — DAX queries do not inherit visual sort order. Use ORDER BY explicitly.

  3. DIVIDE(x, y) is safer than x / y when y might be zero.
  4. Answer

    True — DIVIDE includes an alternate result parameter and avoids division-by-zero errors.

  5. CALCULATE can change filter context and apply new filters.
  6. Answer

    True — CALCULATE evaluates an expression in a modified filter context.

Fill in the Blanks

  1. To create a continuous date table from a fact table you use the DAX function ________.
  2. Answer

    CALENDAR

  3. Use ________ to concatenate multiple row values into a single string separated by a delimiter.
  4. Answer

    CONCATENATEX

  5. To remove all filters from a column inside CALCULATE use ________.
  6. Answer

    ALL (or REMOVEFILTERS)

Multiple Choice (MCQ)

  1. Which function returns a table grouped by columns and additional measures?
    • A. FILTER
    • B. SUMMARIZECOLUMNS
    • C. DIVIDE
    • D. SELECTCOLUMNS
  2. Answer

    B. SUMMARIZECOLUMNS — groups by columns and can add measures.

  3. Which DAX expression handles division safely?
    • A. /
    • B. DIVIDE()
    • C. QUOTIENT()
    • D. SAFE_DIV()
  4. Answer

    B. DIVIDE()

  5. To keep a filter on Category but remove all other filters you use:
    • A. ALL()
    • B. ALLEXCEPT()
    • C. REMOVEFILTERS()
    • D. VALUES()
  6. Answer

    B. ALLEXCEPT() — removes all filters except for specified columns.

Matching

Match the DAX function to its primary purpose:

FunctionPurpose
1. CALCULATEA. Create a range of dates
2. CALENDARB. Modify filter context
3. DIVIDEC. Safe division
Answer

1 → B, 2 → A, 3 → C

Descriptive

Describe the difference between a calculated column and a measure and when you would use each.

Answer

A calculated column is evaluated row-by-row during data refresh and stored in the model; use it when you need a persistent per-row value (e.g., a normalized category or full name). A measure is computed at query time within the current filter context and should be used for aggregations that need to be dynamic (e.g., Total Sales, Avg Profit per Order). Measures are more memory-efficient for aggregations and are preferred for report visuals.

Creative

Design a 3-card layout for a Wealth dashboard (title and three measures). Provide the DAX for each measure.

Answer

Title: Wealth Snapshot — Current Period
Card 1 (Total Assets): Total Assets = SUM('Assets'[MarketValue])
Card 2 (Total Liabilities): Total Liabilities = SUM('Liabilities'[Amount])
Card 3 (Net Worth): Net Worth = [Total Assets] - [Total Liabilities]

Activities, Vocabulary, Homework, Practice Task

Activities

  1. Create a calendar table and add Month and Year columns.
  2. Answer

    Use Dim_Calendar = CALENDAR(MIN(...), MAX(...)), then add Month = FORMAT(..., "MMMM") and Year = YEAR(...).

  3. Write a measure: Average Profit per Order using DIVIDE.
  4. Answer

    Avg Profit per Order = DIVIDE([Total Sales Profit], [Orders])

Vocabulary

  • Context — The set of filters that affects a calculation.
  • Answer

    Context can be row context (calculated columns) or filter context (measures, slicers).

  • Measure — A dynamic aggregation calculated at query time.
  • Answer

    Measures react to report filters and are not stored in the model as values.

Homework

  1. Build a page with: a calendar slicer, a summary table (Month × Category), and three cards (Total Sales, Orders, MoM Growth). Document DAX measures used.
  2. Answer

    Suggested measures: Total Sales = SUM('Fact_Sales'[SalesAmount]), Orders = COUNTROWS('Fact_Sales'), MoM Growth = DIVIDE([Total Sales] - CALCULATE([Total Sales], PREVIOUSMONTH(Dim_Calendar[Date])), CALCULATE([Total Sales], PREVIOUSMONTH(Dim_Calendar[Date])), 0).

Practice Task

Given a 'Sales' table and 'Product' table, create a query that shows month, product category, orders and avg profit per order for "Clothing" and sort by month.

Answer
EVALUATE
SUMMARIZECOLUMNS(
  'Dim_Calendar'[Month Name],
  'Dim_Calendar'[Month of Year],
  'Product'[Category],
  FILTER( VALUES('Product'[Category]), 'Product'[Category] = "Clothing" ),
  "Orders", COUNTROWS('Sales'),
  "Avg Profit per Order", DIVIDE( SUM('Sales'[Profit]), COUNTROWS('Sales') )
)
ORDER BY 'Dim_Calendar'[Month of Year] ASC
      

Further reading: Microsoft DAX reference, Power Query best practices, and the course exercises. Happy analyzing!

Similar compositions

🎓 Want more writing practice?Make academic composition sheets for any class, subject and chapter on AlphaGenEdu - free.
Create free account →