 # Conquering DAX 2019

RM4,000.00 RM4,240.00 (after 6% SST)

## Description

#### WHAT YOU WILL LEARN?

This workshop is a complete course about the DAX language. DAX is the native language of Power BI, Power Pivot for Excel, and SSAS Tabular models in Microsoft SQL Server Analysis Services. The training is aimed at users of Power BI, Power Pivot for Excel, and at Analysis Services developers that want to learn and master the DAX language. This course covers the latest version of DAX 2019.

#### OBJECTIVE

After completing this course, students will be able to:

• Understand all the features of the DAX language
• Write formulas for common and advanced scenarios

#### PREREQUISITES

Attendees need to have a basic knowledge of the data modeling in Power Pivot for Excel, or Power BI Desktop, or Analysis Services Tabular modeling.

## COURSE CONTENT

1. Introduction to DAX

• What is DAX?
• DAX data types
• Calculated columns
• Measures
• Aggregation functions
• Counting values
• Conditional functions
• Handling errors
• Using variables
• Mathematical functions
• Relational functions

Table Functions

• Introduction to table functions
• Filtering a table
• Ignoring filters
• Mixing filters
• DISTINCT Function
• How many values for a column?
• ALLSELECTED function
• RELATEDTABLE function
• Tables and relationships
• Tables with one row and one column
• Table variables

Evaluation Contexts

• Introduction to evaluation contexts
• Filter context
• Row context
• Context errors
• Filtering a table
• Using RELATED in a row context
• Ranking by price
• Evaluation contexts and relationships
• Filters and relationships

4. CALCULATE Function

• Introduction to CALCULATE function
• CALCULATE function examples
• CALCULATE function recap
• What is a filter context?
• KEEPFILTERS function
• CALCULATE operators
• Use one column only in a compact syntax
• Variables and evaluation contexts

• CALCULATE modifiers
• USERELATIONSHIP function
• CROSSFILTER function
• ALL function
• ALLSELECTED function
• KEEPFILTERS function
• Context transition
• Circular dependency
• CALCULATE execution order

6. Iterators

• Working with iterators
• MINX and MAXX functions
• Useful iterators
• RANKX function
• ISINSCOPE function

7. Building a Date Table

• Introduction to date tables
• Auto Date/Time
• CALENDARAUTO function
• Mark as date table
• Using multiple dates

8. Time Intelligence in DAX

• What is time intelligence?
• Time intelligence functions
• DATESINPERIOD function
• Running total
• Mixing time intelligence functions
• Calculation over weeks

9. Hierarchies in DAX

• What are hierarchies?
• FILTER and CROSSFILTER function
• Percentages over hierarchies
• Parent-child hierarchies

10. Data Lineage and TREATAS

• What is data lineage?
• TREATAS function

11. Expanded Tables

• Filters are tables!
• Difference between base tables and expanded tables
• Filtering a column

12. Arbitrarily Shaped Filters

• What are arbitrarily shaped filters?
• Example of an arbitrarily shaped filter

13. ALLSELECTED and Shadow Filter Contexts

• ALLSELECTED function revisited

14. Segmentation

• Static segmentation
• Circular dependency in calculated tables
• Dynamic segmentation

15. Many-to-many Relationships

• How to handle many-to-many relationships
• Bidirectional filtering
• Expanded table filtering
• Comparison of the different techniques

16. Ambiguity and Bidirectional Filters

• Understanding ambiguity

17. Relationships at Different Granularities

• Working at different granularity
• Using TREATAS function
• Calculated tables to slice dimensions
• Leveraging weak relationships
• Scenario recap
• Checking granularity in the report
• Hiding or reallocating

18. Querying with DAX

• Working with tables and queries
• EVALUATE syntax
• CALCULATETABLE function
• SELECTCOLUMNS function
• SUMMARIZE function
• SUMMARIZECOLUMNS function
• CROSSJOIN function
• TOPN and GENERATE functions
• ROW and DATATABLE functions
• Tables and relationships
• UNION, INTERSECT and EXCEPT functions
• GROUPBY functions
• Query measures

## LAB EXERCISES

Lab 01

• First steps with DAX
• Average sales per customer
• Average delivery time
• Last update of customer
• Working days
• Discount categories

Lab 02

• Percentage of sales
• Delivery working days
• Sales of products in the first week
• Customers with children

Lab 03

• Nested iterators
• Customers in North America (BASIC)
• Create a parameter table

Lab 04

• Sales of red and blue products
• Understanding CALCULATE
• Sales of blue products
• Customers in North America (ADVANCED)
• Computing percentages

Lab 05

• Correct sales of grey products
• Best customers
• Large sales
• Percentage of customers
• Counting spikes

Lab 06

• Ranking customers (static)
• Ranking customers (dynamic)
• Date with the highest sales
• Moving average

Lab 07

• Running total
• Comparison YOY%
• Sales in the first three months

Lab 08

• Distinct count of countries
• Sales quantity greater than two

Lab 09

• Static segmentation

Lab 10

• Many-to-many relationships

Lab 11

• Sales by year
• Filtering and grouping sales
• Using TOPN and GENERATE
• Sales of top customers
• Sales of top three colors

Bonus Lab

• Same product sales
• Commentary on report
• New customers