Power BI Sep-2021 version: https://www.microsoft.com/en-us/download/details.aspx?
id=57271
https://download.microsoft.com/download/8/8/0/880BCA75-79DD-466A-927D-
1ABF1F5454B0/PBIDesktopSetup-2021-09_x64.exe
https://docs.microsoft.com/en-us/power-bi/fundamentals/desktop-latest-update-
archive?tabs=powerbi-desktop#september-2021-update-2977250
https://powerbi.microsoft.com/en-us/blog/power-bi-september-2021-feature-summary/
Amazon
1. Order
Order Id
Order Date
Ship Date
2. Product Details
Product ID
Product Name
Produ Category
3. Suppliers/Venders
Supplier ID
Supplier Details
Dade
4. Customer Details
Customer Name
Customer Address
Customer ID
5.Sales Details
Order Qty
Order Amount
Order Discount
Data Type
Text
Date
Whole Number
Filters
=============================================
DATE FUNCTIONS
TODAY
NOW
YEAR
MONTH
HOUR
MINUTE
SECOND
WEEKDAY
WEEKNUM
SUM
COUNT
COUNTA
COUNT BLANK
MIN
MAX
---------------------------------------------
FILTER FUNCTIONS:
------------------
COUNTIF ---- COUNT
COUNTIFS
SUMIF ---- SUM
SUMIF(RANGE, CRITERIA, SUM RANGE)
RANGE - COLUMN TO FILTER
CRITERIA - A VALUE FROM COLUMN
SUM RANGE - COLUMN TO SUM
SUMIFS
AVERAGEIF ---- AVERAGE
AVERAGEIFS
State-Florida
City-Apopka
----------------------------------------
EDATE - It will return same day of the previous/next month based on the no of
months provided.
EDATE(DATE,NO OF MONTHS)
EDATE(22-10-2021,-1) ----> 22-09-2021
EDATE(22-10-2021,1) ----> 22-11-2021
EOMONTH - It will return end day of the previous/next month based on the no
of months provided.
EOMONTH(DATE,NO OF MONTHS)
EOMONTH(22-10-2021,-1) -----> 30-09-2021
EOMONTH(22-10-2021,0) -----> 31-10-2021
EOMONTH(22-10-2021,1) -----> 30-11-2021
1. Identify current year start date based on today
2. Identify current year end date based on today
------------------------------------------------------------------
---->
LEFT
<----
RIGHT
Pradeep
--------------------------------
10
20
13
9
14
89
90
09
67
61
73
51
17
------ Highest Vales to Lowest Values
90,89,73,67,61,
------------------------------------------
Power BI Components
Power BI Desktop (Power Query, Power Pivot, Power View and Power Map) - Share to
the users
Power Query Editor – ETL(Extraction, Transformation, Load)
Power Pivot – Date Modealing, DAX
Power View – Report Design
Power Map - Report Design
Power BI Mobile – Mobile Application
Power BI Services – Deploy and Share
Data Preparation - Data Engeenier- Data Source intigration - Data Base Design (SQL
Server, Oracle, My SQL, DB2, Teradata, Hana)
Power BI Development
DAX(Data Analysis Expressions)
Comment - Ctrl+K+C
Un Comment - Ctrl+K+U
MSBI Tools(Microsoft Business Intilligence Tools)
SSIS - Sql Server Intigration Services
SSAS - Sql Server Analysis Services
1. Multidimensional Model - MDX(Functional and Query Launguage)
2. Tabular Model - DAX(Functional and Query Launguage)
SSRS - Sql Server Reporting Services
Functional and Query Launguage.
Context - Filter and Row
1. Create New Tables
2. Create new calculated columns
3. Create Measures
1. Table
2. Column
3. Measure
Measure -
SUM(Column Name)
Total Sales = sum('Master Data'[Sales])
'Master Data' - Table
[Sales] - Column
MAX(Column Name)
Highest Sales=MAX('Master Data'[Sales])
FILTER(Table,Filter Expression)
FILTER('Master Data','Master Data'[Region]="South")
SUMX(Table, Expression)
SUMX(FILTER('Master Data','Master Data'[Region]="South"),[Total Sales])
FILTER: It Returns a table as result
Syntax - FILTER(Table, Expression)
FILTER('Master Data','Master Data'[Category]="Technology")
SUMX(FILTER('Master Data','Master Data'[Region]="South"),[Total Sales])
--CALCULATE
CALCULATE(EXPRESSION,FILTER)
CALCULATE(SUM('Master Data'[Sales]),FILTER('Master Data','Master
Data'[Region]="South"))
CALCULATE(SUM('Master Data'[Sales]),FILTER('Master Data','Master
Data'[Category]="Technology"))
CALCULATE(COUNTROWS('Master Data'),FILTER('Master Data','Master
Data'[Category]="Technology"))
CALCULATE(MIN('Master Data'[Sales]),FILTER('Master Data','Master
Data'[Region] IN {"South","West"}))
----------------------------------------
EDIT INTERACTIONS---
ALL - IT WILL REMOVE THE FILTERS ON TABLE OR COLUMN
ALL(TABLE OR COLUMN)
M_ALL SALES =
CALCULATE(SUM('Master Data'[Sales]),ALL('Master Data'))
//CALCULATE(SUM('Master Data'[Sales]),ALL('Master Data'[Category],'Master
Data'[Segment],'Master Data'[Region]))
M_SOUNTH SALES_V1 =
// CALCULATE(
// SUM('Master Data'[Sales]),
// FILTER('Master Data','Master Data'[Region] IN {"South","West"}),
// FILTER('Master Data','Master Data'[Category]="Technology"))
// CALCULATE(
// COUNTROWS('Master Data'),
// FILTER('Master Data','Master Data'[Region] IN {"South","West"}),
// FILTER('Master Data','Master Data'[Category]="Technology"))
CALCULATE(
COUNTROWS('Master Data'),
FILTER('Master Data','Master Data'[Region]="South"))
ALLEXCEPT - It romove the filters on table or column which is not considerd in the
function.
CALCULATE(SUM('Master Data'[Sales]),ALLEXCEPT('Master Data'[Category],'Master
Data'[Segment],'Master Data'[Region]))
-------------------------------
---- TASK ----
SUMX - SUMX(FILTER('Master Data','Master Data'[Region]="South"),[Total
Sales])
COUNTX
MINX
MAXX
AVERAGEX
CALENDAR
CALENDARAUTO
CALENDER - BASED ON CURRENT DATE, CURRENT YEAR START TO END
DYNAMIC CALENDAR = CALENDAR(EOMONTH(TODAY(),-MONTH(TODAY()))
+1,EOMONTH(TODAY(),12-MONTH(TODAY())))
MONTH
YEAR
QUARTER
WEEKDAY
WEEKNUMBER
----------------------------------------------------------------------------
TABLE FUNCTIONS - IT RETURNS A TABLE
CALENDAR - START DATE AND END DATE
CALENDARAUTO -
-------------------------------------------------------
Current Quarter Start Date
Current Quarter End Date
Based on today find out start date for last 6 month.
Current Quarter Start Date =
IF(AND('Master Data'[M-Month]>=1,'Master Data'[M-Month]<=3),"01-01-"&YEAR(TODAY()),
IF(AND('Master Data'[M-Month]>=4,'Master Data'[M-Month]<=6),"01-04-"&YEAR(TODAY()),
IF(AND('Master Data'[M-Month]>=7,'Master Data'[M-Month]<=9),"01-
07-"&YEAR(TODAY()),"01-10-"&YEAR(TODAY()))))
-----------------------------------------------------------------------------------
-------------------------
M_DATESINPERIOD =
CALCULATE(SUM('Master Data'[Sales]),DATESINPERIOD('CALENDAR'[Date],TODAY(),-
1,MONTH))
DATESINPERIOD(DATE,STARTDATE,NO OF INTERVELS,INTERVELS)
DATESINPERIOD(
'CALENDAR'[Date], -- DATE
TODAY(), -- START DATE
-1, --NO OF INTERVELS
MONTH -- INTERVEL
)
DATESBETWEEN
DATESINPERIOD
PARALLELPERIOD
SAMEPERIODLASTYEAR
BASED ON TODAY WE HAVE TO CAALCULATE LAST 6 MONTHS SALES
------------------------------------------------------------------
VARIABLES
POWER BI - LOCAL VARIABLE
YTD - YEAR TO DATE
QTD - QUARTRE TO DATE
MTD - MONTH TO DATE
TOTALMTD
TOTALYTD
TOTALQTD
----------------------------------------------------
M_DYNAMIC RUNNING TOTALS =
CALCULATE(
'Master Data'[M_Total Sales],
FILTER(ALLSELECTED('CALENDAR'),'CALENDAR'[Date]<=MAX('CALENDAR'[Date])))
-----------------------------------------------------------------------------------
------------------
IF(
FIND(" ",NAMES[NAMES],FIND(" ",NAMES[NAMES],1)+1,0)=0,
FIND(" ",NAMES[NAMES],1),
FIND(" ",NAMES[NAMES],FIND(" ",NAMES[NAMES],1)+1)
)
-------------------------------------------------------------------------------
LIST THE DAX FUNCTIONS WHICH RETURNS THE TABLE
1. FILTER
2. SUMMARIZE
3. SUMMARIZECOLUMNS
4. ALL
5. ALLEXCEPT
6. VALUES
7. DISTINCT
8. CALENDAR
9. CALENDARAUTO
10. ALLSELECTED
11. ADDCOLUMNS
CALENDAR_TABLE =
ADDCOLUMNS(
CALENDAR(DATE(2021,01,01),TODAY()),
"YEAR",YEAR([Date]),
"QUARTER",QUARTER([Date]),
"MONTH",MONTH([Date]),
"MONTH NAME",FORMAT([Date],"MMM"),
"WEEK NUM",WEEKNUM([Date],2),
"WEEK DAY",WEEKDAY([Date],2))
------------------------------------------------------------