IT Training

# Mastering DAX

In this course you will learn how you can use DAX to create calculated columns and measures and how you can use DAX as a query language.

###### Who should attend this course?

This course is geared towards Business Intelligence technical professionals

###### Prerequisites

Students must have experience with Business Intelligence and building so-called Tabular Models.

#### An introduction to DAX

This chapters provides a introduction to the DAX language. Students will learn where DAX can be used, and will see some typical.

• DAX use cases
• Understanding calculated columns and measures
• Building tables with DAX
• DAX as a query language
• DAX for row level security
• DAX patterns
• LAB: Creating calculated columns, tables and measures in DAX

#### DAX Studio

A good tools can make the job a lot easier. And DAX Studio is a super handy free tool for DAX developers, independant of whether you are using Power BI Desktop, Excel or Visual Studio in the end. This module explains why and how to use DAX Studio.

• Introducing DAX Studio
• Installing DAX Studio
• Writing DAX queries: EVALUATE, ORDER BY and START AT
• Constructing tables with FILTER, DISTINCT, ROW, SELECTCOLUMNS and SUMMARIZECOLUMNS
• Who’s eating up the resources: Querying meta-data
• Performance tuning
• Profiling DAX queries
• LAB: Running and profiling queries in DAX Studio

#### DAX expressions

When writing scalar expressions a good understanding of the DAX data types, operators and functions is needed.

• DAX data types
• Getting started with constants
• Mathematical, boolean and string operators
• The most important scalar functions in DAX
• LAB: Evaluating and writing DAX expressions

#### Creating DAX measures

The CALCULATE function is probably the most used function in DAX when you are defining measures. To really understand how to use the CALCULATE function, you must have a good understanding of the concepts of row and filter contexts, which are also explained in the chapter.

• Introduction to evaluation context
• The CALCULATE function and the row and filter context
• Aggregation functions
• Defining table scopes
• Using ALL and VALUES
• LAB: Using CALCULATE

#### Using CALCULATE for time intelligence

DAX includes time intelligence functions that enable you to manipulate data using time periods, including days, months, quarters, and years, and then build and compare calculations over those periods.

• Creating calendar tables using CALENDAR and CALENDARAUTO
• Working with multiple data tables
• Mark as Data Table
• Computing YTD/QTD and MTD totals
• Comparing data over time using DAX
• Calculating Rolling Totals
• Calculating Moving Averages
• LAB: Implementing Time Intelligence

#### Working with calculation groups

Often measures such as a year-to-date (YTD) calculation have to be repeated for multiple base measures. Calculation groups provide as sort of template with which these repetitive measures can be easily created and maintained.

• The need for calculation groups
• Creating calculation groups
• Format strings in calculation groups
• Excluding measures from calculation items
• LAB: Implementing a calculation group and calculation items

#### More on measures: Iterators

When you need to iterate through data iterators such as SUMX become useful. This chapter discusses how to work with iterators, and how to apply context transitions within iterators.

• SUMX aggregation function
• Linking to different tables with RELATED
• More iterators: RANKX, CONCATENATEX, …
• Using variables in DAX
• Context transition
• LAB: Using iterators in measures

#### Inspecting and controlling the execution context

Often a measure only makes sense in a certain context (e.g. only relevant at the month level, but not the year level). In this chapter DAX functions are covered which allow you to inspect the current context such that you can protect your measures.

• Why do we need the context?
• HASONEVALUE
• ISFILTERED
• ISCROSSFILTERED
• ISINSCOPE
• SELECTEDVALUE
• ALLSELECTED
• Handling hierarchies in DAX
• Calculate ratio’s to a parent subtotals
• Raising errors in DAX
• LAB: Inspecting execution context

In this last chapter some of the more advanced DAX topics are introduced.

• CALCULATE modifiers USERELATIONSHIP, CROSSFILTER, …
• Expanded tables
• CALCULATETABLE
• Calculating cumulative percentages – pareto analysis
• ABC analysis
• Calculating customer churn – new customer, lost customers
• LAB: Implementing Pareto analysis (cumulative total percentage)
• LAB: DAX Workshop #### Practical information

Duration

3 Days

Languages

EN

Price

€1400,00 + 3% VAT

Location

Online Classroom Course

#### Schedule

Guaranteed to run

Sessions in English
13/2 - 15/2
11/4 - 13/4
30/5 - 01/6
16/8 - 18/8
02/10 - 04/10
27/11 - 29/11