1. Introduction to Data Analysis Expressions (DAX)
- DAX data types
- Understanding calculated columns and measures
- Understanding aggregators and iterators: SUM,COUNT, MIN, MAX, AVARAGE,
COUNTROWS, DISTINCTCOUNT, SUMX, AVERAGEX
- Using logical functions: IF, AND, OR, SWITCH, IFERROR
- Relational functions: RELATED and RELATEDTABLE
2. Basic table functions
- Understanding FILTER function
- Introducing ALL, ALLEXCEPT and ALLSELECTED functions
- Understanding VALUES, DISTINCT functions and their difference
3. Evaluation Context
- Filter context
- Filter and relationships
- Row context, using RELATED in a row context
- Understanding nested row context, using EARLIER function
4. CALCULATE function
- Understanding difference between CALCULATE and other DAX functions
- CALCULATE for replacing, ignoring and intersecting with outer filters
- Understanding CONTEXT TRANSITION
- CALCULATE and advanced filters
- CALCULATE modifiers ( KEEPFILTER, USERELATIONSHIPS, CROSSFILTER, ALL family functions)
- CALCULATE rules
5. Variables
- Introducing VAR syntax
- The scope of variables
- Using table variables
- Common patterns using variable
6. Iterators
- Using iterators: MAXX, MINX, CONCATENATEX
- Understanding RANKX
- RANKX with ISINSCOPE function (explanation of HASONEVALUE and SELECTEDVALUE)
7. Date table and Time intelligence functions in DAX
- Functions to create data table
- Understanding “Marks as date table”
- DATESYTD (applying Fiscal Year to Date), DATESQTD, DATESMTD
- SAMEPERIODLASTYEAR, PARALLELPERIOD
- PREVIOUSYEAR, PREVIOUSQUARTER, PREVIOUSMONTH, PREVIOUSDAY
- DATEADD (Day-Month-Quarter-Year)
- DATESBETWEEN, FIRSTDAY, LASTDAY
- Other date functions: CLOSINGBALANCEMONTH, CLOSINGBALANCEQUARTER,
CLOSINGBALACEYEAR
- Writing Custom Time Intelligence Functions
- Working with custom calendars
8. Authoring queries
- Introducing DAX Studio
- EVALUATE syntax, measures in DEFINE, using VAR
- CALCULATETABLE function
- ADDCOLUMNS, SELECTCOLUMNS functions
- SUMMIRIZE, SUMMIRIZECOLUMNS, GROUPBY functions (Similarities and differences).
CROSSJOIN function
- TOPN and GENERATE functions
- UNION, INTERSECT and EXCEPT functions
9. Advanced DAX concepts
- Introducing expanded tables
- Understanding the difference between table filters and column filters
- Understanding data lineage and TREATAS
- Understanding arbitrarily shaped filters
10. Advanced relationships
- Implementing relationships based on ranges (static segmentation)
- Understanding many to many relationships
- Computing multiple-column relationships (LOOKUPVALUE)
- Managing granularities
11. Additional Practical cases
- ABC Pareto analysis
- New and Returning Customers
- Parent-child hierarchies