Afrikaans
Akan
Albanian
Amharic
Arabic
Armenian
Azerbaijani
Basque
Belarusian
Bemba
Bengali
Bihari
Bosnian
Breton
Bulgarian
Cambodian
Catalan
Cebuano
Cherokee
Chichewa
Chinese (Simplified)
Chinese (Traditional)
Corsican
Croatian
Czech
Danish
Dutch
English
Esperanto
Estonian
Ewe
Faroese
Filipino
Finnish
French
Frisian
Ga
Galician
Georgian
German
Greek
Guarani
Gujarati
Haitian Creole
Hausa
Hawaiian
Hebrew
Hindi
Hmong
Hungarian
Icelandic
Igbo
Indonesian
Interlingua
Irish
Italian
Japanese
Javanese
Kannada
Kazakh
Kinyarwanda
Kirundi
Kongo
Korean
Krio (Sierra Leone)
Kurdish
Kurdish (Soranî)
Kyrgyz
Laothian
Latin
Latvian
Lingala
Lithuanian
Lozi
Luganda
Luo
Luxembourgish
Macedonian
Malagasy
Malay
Malayalam
Maltese
Maori
Marathi
Mauritian Creole
Moldavian
Mongolian
Myanmar (Burmese)
Montenegrin
Nepali
Nigerian Pidgin
Northern Sotho
Norwegian
Norwegian (Nynorsk)
Occitan
Oriya
Oromo
Pashto
Persian
Polish
Portuguese (Brazil)
Portuguese (Portugal)
Punjabi
Quechua
Romanian
Romansh
Runyakitara
Russian
Samoan
Scots Gaelic
Serbian
Serbo-Croatian
Sesotho
Setswana
Seychellois Creole
Shona
Sindhi
Sinhalese
Slovak
Slovenian
Somali
Spanish (Latin American)
Sundanese
Swahili
Swedish
Tajik
Tamil
Tatar
Telugu
Thai
Tigrinya
Tonga
Tshiluba
Tumbuka
Turkish
Turkmen
Twi
Uighur
Ukrainian
Urdu
Uzbek
Vietnamese
Welsh
Wolof
Xhosa
Yiddish
Yoruba
Zulu
Hello friends hope you had a really good
start of 2025 I Amit chandak a Microsoft
data platform MVP and a powerb community
super user I also chief altic officer at
caner I welcome you to this video learn
powerbi yes it is a full video of 20
hours in 2023 I released a similar video
of 11 hours and 30 minutes I'm taking a
next step to bring you even bigger and
better content we are going to cover
visualization Texs and power query in
details I'm hopeful this video will help
you to enhance your journey of power bi
in a great way start this journey with
me and I will take you through a Content
which consists of more than 140 plus
videos which has been recorded and
edited throughout
2024 you will find some of the uis has
changed over a period of time but I've
taken care that I have Incorporated the
new UI at the right place so let's begin
this journey learn
powerbi and data analytics industry is
continue to grow and it creates lot of
opportunities for business intelligence
data analytics and visualization tools
powerbi is leading the that weave today
with the emergence of Microsoft fabric
it has taken next step in that Journey
so learning powerbi as a skill can be
really useful and I have done an attempt
to make sure that I cover all those
aspect in this particular video I would
also like to take this opportunity to
thank each and everyone of you who have
watched the previous video where over
last two years there were more than
200,000 views and 4,000 like you have
really appreciate that video you have
asked many question on that video and
based on that I have created many other
videos the channel now have more than
850 videos and you can take full
advantage of those videos more than 500
videos are only on powerbi and there are
more than 80 plus videos on Microsoft
fabric including English and Hindi so my
advice would be to watch all these other
videos other than this course to take
the full advantage of powerb there are
detailed videos on each and every
function of Dex and power query on my
channel and you should also watch other
than watching this full course I wish
you a very successful power ba Journey
with this video and hoping that this
video will make your powerbi journey
really easy in case you have some
questions you can ask them in comments
but with that let's begin our journey in
20125 to learn powerbi and take a next
step in your data analytics career so
friends the question arise why powerbi
powerbi is leading business intelligence
Analytics tool and for last many years
every business intelligence analytics
industry reports put powerbi as the top
leading tool in terms of feature and
capabilities with the launch of
Microsoft fabric an integrated
environment where powerbi is also part
of it which has capabilities of having
lake houses warehouses realtime Antics
all together on integrated platform as a
powerbi developer you have a leap to
take my recommendation is with the help
of this video you learn powerbi and then
take the advantage of various other
videos on my channel to learn Microsoft
fabric 202 4 is expected to be the era
of Microsoft Fabric and you have a
pivotal role to play as a powerbi
developer and enhancing your skill to
the next level to the Microsoft fabric
becoming a Microsoft fabric developer so
let's start together this exciting
journey of learning powerbi taking the
analytics experience to the next level
for the end user and then take it to the
next level using Microsoft
fabric so let's understand what is is
powerbi powerbi is a business
intelligence and analytics service that
delivers Insight from analyzing the data
powerb is a collection of software
Services app and connectors that work
together to turn your unrelated sources
of data into coherent visually immersive
and interactive Insight it can share
those insights through data
visualization which can make up reports
and dashboards to enable the fast
informed decision power ba scales across
and organization and it has built in
governance security allowing business to
focus on using data more than managing
it in the today's datadriven world
powerbi stands out as a pivotal tool in
the data visualization and business
intelligence it is not just presenting
the data it's about unlocking the
insights and for decision making so
let's begin this interesting journey in
the world of powerbi so whether you're
beginner or eager to dive into the data
visualization or a professional looking
to update your skills this video is a
gateway mastering powerb together let's
transform the way we understand the
data so the first term is data itself so
data is a set of values of qualitative
or quantitive variable means something
which we want to measure against
something which we want to measure and
it's not only about data it's about
quality data see in business
intelligence and data analytics we use a
term garbage in garbage out what does
that means if you if you don't have
quality data you'll not be able to get
quality analysis and that's really
important here and that might require
transformation and powerbi is capable of
doing the transformation then we have a
term data analytics data analytics is
the process of examining and analyzing
the data sets in order to draw insights
conclusion and make data driven decision
making so we are talking about data
driven decision making it involves using
statistical and analytical techniques to
extract and interpret relevant
information from data and can be applied
in wide range of fields and industries
so basically we are driving out the
information from the data we are taking
decisions which will drive our
businesses we have another term which is
business intelligence and business
intelligence refers to decision making
now according to o.com the term business
intelligence bi refers to the technology
application and practice for collection
integration analysis and presentation of
business information the purpose of
business intelligence is to support B
better decision making now here we are
talking about collection of data
integration of data analysis of data and
presentation of data power ba can do all
four means it can collect data from
different sources it can integrate them
it can analyze and present also it could
happen that most of the time this
collection and integration is happening
outside maybe in a data warehouse and
Analysis and presentation is going to
happen in powerbi now data could be
structured semi- structured or
unstructured most of the time we are
going to deal with the structure data
and this structure data can come from
rdbms and sometime it may be also
available in Excel files or csvs where
targets and budgets are commonly kept
now ideally we should move them into the
data warehouse or a common storage so
that they can be managed properly but in
any project you will not have 100% data
coming from rdbm you may have some data
coming outside now semi- structure data
and un structure data would be dealt
little bit outside the powerbi or maybe
converted into some useful information
or data and then maybe U given in power
ba for analysis now you will come across
the term tables and fact now table is
basically a collection of related data
entries and it consists of numerous
columns and rows so there are rows and
columns and it contains data now table
could be a fact table or table could be
a dimension table fact table is the
table which containing the majors or the
facts facts means truth about your
organization my sales my purchase my
inventory number of employees their
salary all these are the facts of your
organization they are the truth about
your organization that are used to
analyze data as well as Dimension Keys
against which they need to be analy so
it will also contain the dimension Keys
against which you need to analyze this
data you will also hear this term major
matrices kpi and then you will also hear
the term parameter filter Dimension so
what is measor so something which you
want to measure measure for your success
of your organization and then you will
measure it against something against
time against geography against customer
against vendor against items articles so
you say I have done good sales sales is
a major or matrices what is what do you
mean by good have you done good against
your competitor have you done good
against last year have you done good
because your margin has increased all
these questions are there and such
questions we will be trying to answer
using business intelligence and data
analytics so these are the terms you
should be hearing time and again then
there are two kind of matrices lead
matrices and lag matrices lead mattress
is something which can indicate what is
going to happen lag is something which
is actually analyzing what has already
had happened sales is basically
something already has happened but is
sales going to decrease how you are
going to know so it's basically size of
your funnel how many opportunities or
leads you have if your leads are
decreasing your opportunities are
decreasing at 1 F day your sales will
decrease so there are lead indicators
and that is how the prediction happens
so somebody's saying okay downtime is
coming or how this is coming because
they look at the lead in mates and once
lead and mat is going down we know that
the lag mattress is will follow it soon
these kind of metrices you should also
remember in your analysis what you plan
to analyze now you will hear about
relational schema star schema and
snowflake schema and star schema is very
common term which you will hear while
you are doing your analysis now without
going into lot of details of this one
let me explain you one quick example in
typical in a relational schema what
happens we try to store information in
such a manner that it doesn't repeat at
all so let's say if I store state in a
city table what would happen the state
name will repeat for many cities so
instead of storing the state name what
I'll do I'll create a state ID and state
name in a separate table and I'll only
store the state ID in the city table so
if the state name changes or updated I'm
only updating one record so in such a
manner we create a set of table using a
process called normalization and
relational schema or the oltp system
online transaction processing system
which are our base core erps or CRM they
typically follow relational schema back
because of which they are able to handle
thousands of transaction or millions of
transaction in a day so this is
typically how a relational schema looks
like you might have a sales table sales
might have a detail sales might join to
city and state it might join with time
and time may be further classified as
date month quarter year there could be
Separate Tables or one table it could be
joining with customer customer can join
further with customer group CS detail
can join with item item can join with
brand category subcategory and all so
many tables could be there what what
happens is then this is relational
schema we have a dimensional schema
there are two dimensional schema which
are pretty common one is Snowflake and
second one is star schema now what
happens in case of snowflake schema you
can still have subdimensions like I
combined sales and sale detail here I
combined also customer and customer
group but I still have item and brand
means item table is there and it's also
connected to Brand you can also have
city and state means still separate out
table time is one combined it maybe
previously also combined I also combined
but when you come to Star schema what
happens is that you do do not have any
join between Dimensions also so no fact
join with other fact no Dimension join
with other dimension and the distance of
information is one so I want to know
brand wise sales item wise sales the
distance is one one joint I want to know
statewise sale one joint I will get
State I want to know customer group wise
one join with customer table I'll get
that information so I can have many join
but all these joins are just one step
apart that's what the star schema and in
that one fact will not join with fact
Dimension will not join with Dimension
so these are basic few concept which
should be aware and you will hear all
these terms time and again so let's
begin this journey of learning powerbi
to start this journey let's first
understand Microsoft powerb ecosystem
this ecosystem does not include
Microsoft fabric ecosystem I have
knowingly excluded that which we can
discuss in a separate video of Microsoft
fabric you can watch the introduction
videos in Hindi and English on my
channel explaining the various
components that Microsoft fabric
provides you so the Journey of any
business intelligence analytics tools
start with the sources so what kind of
sources we can have for powerbi the
usual sources are external sources like
Excel databases Etc then we will discuss
later on about these remaining two
sources you import that into the powerbi
desktop for databases we do have option
for direct query what is Import in case
of import the data would be residing in
the powerbi and we will be creating the
model into the powerbi and we will be
creating measures and would be analyzing
the data also so powerbi own meta as
well as data in case of direct query we
create the connection we do not import
the data but we create the metadata we
create the model we create the
definitions we create the relationship
we create measures we create
visualization finally analyze so power
VI will have model power VA will have
visualization but will not have data
that is direct query mode now once you
create your power bi report on the
desktop with help of transformation
using power query and measures and
calculation using Dex and finally
creating visualization using powerbi you
can publish this file on powerbi
service powerbi service is the ecosystem
where you are going to share this report
and do the collaboration with other user
powerb desktop is a development tool it
does not have security you can create
roles to apply the security on powerbi
service but unlike Excel where it is
password protected that's not powerb
desktop powerb desktop all the
information is available you can
restrict what you wanted to load but the
entire information is available so once
you are done with your development on
powerb desktop you publish it orto the
powerbi service now if you are using on
promise sources you need on promise
Gateway way that include on promise
databases like SQL server or Excel
sheets you need on promise Gateway if
your sources are Cloud you don't need on
promise Gateway they can directly be
refreshed on service remember in powerbi
desktop you have a refresh button to
refresh the data on the service we can
schedule the data set refresh
automatically to happen 8 times for pro
48 times for premium users when when it
goes to powerbi service the report which
you publish the PBX which we have on the
desktop it get divided into two parts
one is data set or what we call a
semantic model and another one is report
the data set or what we call a semantic
model it can also act as a source again
and you can create report paginated
report and dashboard on top of it you
can take it back to the powerbi desktop
and again create a report which you can
publish you can re use it on the report
developer paginated reports can be
created using this data set and that can
be published again on powerbi service
known as paginated report so it means
once you create the data set you will be
able to use that it again and the
connection this time we are going to
create when we use the data set is known
as live connection reports will have a
live Connection in this case you can
finally create a powerbi app and
distribute the content and this is
really helpful when you want to
distribute it to the large number of
user you can combine multiple reports
along with the dashboards and share it
with user you can create create multiple
audiences and share different set of
reports with them now let's talk a
little bit about two components of the
powerb desktop so one of the component
of the powerb desktop was power query
power query is used for data preparation
data cleaning and data transformation
Dex is used for creating complex measure
calculations which help you to finally
create the
analysis so what happen is in power
query whatever you transformation you
create remain with that file but what
happens if we have to do same kind of
transformation again and again how do we
keep its record across various users or
various files so to address that power
ba has come up with the online version
of power query and that is known as data
flow in powerbi world we use data flow
gen one or data flow in Microsoft Fabric
World we use the next version of data
flow which is known as data flow Gen 2
data flow Gen 2 is the online version of
the power query and you can use it for
data preparation data cleaning and data
transformation now data flow Gen 2
stores the data but it cannot create a
data set so you have to bring it back to
the powerbi desktop and then create your
data set after you create the data set
without creating a visualization you can
publish that data set you can use that
data set back to create the
visualization and this is one of the
pattern we use now in the data flow we
may not have all the heavy tables
Dimensions or the small table which
which have lot of transformation can be
part of data flow so have the dimension
table or small table having lot of
transformation in the data flow take it
to the powerb desktop merge it with
other fact tables create relationship
create measures create all the complex
calculation which you require without
creating a visualization publish it and
create a powerb data set or what we call
a semantic model so the term which we
are using now for few months is semantic
model create your semantic model and use
that in the live connection on powerbi
desktop or in powerbi service itself you
can create the report and visualization
same can be used in power P now now you
would have understood why I kept PBI
data flow
here then what is this one Lake and what
is this almost very similar icon what
happens is basically in Microsoft fabric
we have a direct Lake connector in
Microsoft fabric most of the things
resides on Lake where whether it is the
structure data or unstructured data we
save it using lakehouses or warehouses
and lak houses and warehouses create a
data set or what we call a semantic
model the data set or what we call a
semantic model directly gives you data
from lake houses and warehouses and it
doesn't need a direct query it is a best
possible merge of import and direct
query so there is a new connection type
which is direct Lake connection type so
when you connect to the one L Lake you
get a new kind of connection which is a
direct Lake connection semantic model
created on the lake houses or warehouses
or the custom semantic models created on
lake houses or Warehouse so in this
manner you can use the direct Lake
connection and you can now create the
reports using the direct Lake connection
and then publish them it again to the
power
ba there is one different version of
powerb which is known as powerbi report
server which can be installed on premise
there is a special IAL version of
powerbi desktop available for that that
is known as powerbi desktop optimized
for report it is usually 3 to 6 month
behind from the current powerbi and it
also does not include preview features
there's a whole list of comparison what
you don't get available on the Microsoft
side powerbi desktop or powerbi we get
11 releases per year other than January
every month we will have one release so
your powerb desktop keep on updating
every month but that's not true with
reports or we have only three releases
in a year and because powerbi does 11
releases it's really important that you
keep eye on blog. powerbi.com and always
keep on monitoring the latest update
because feature keep on changing fast
one of the reason of creating this video
again that we have got quite a few new
features and there is so many changes in
the UI that it could not have been done
without creating a new new video and
that is why we again created this entire
video for you to learn the powerbi on
the latest version which has been
released in December
2023 so now let us understand the
process of creating a powerbi login one
of the best method is that admin of the
tenant should use admin.
microsoft.com if you have your own a
registered domain for that domain you
should go ahead and register yourself to
admin.
microsoft.com and once an organization
able to register and admin on admin.
microsoft.com you will be able to create
users and able to assign the licenses to
them so let me go ahead and showcase you
how you are going to do that on admin.
microsoft.com so first of all log to
admin. microsoft.com
I'm assuming you already have the admin.
microsoft.com access and you are admin
if not then this step need to be
executed by your admin the admin need to
go and register a new user and under the
user management either you will click on
the users active users and you should
get that option add users or on the
homepage you will also get it so click
here on add a
user you will get let a popup here you
start giving details of the user
Amit
Amit will display name let me give a
username here Amit
C so I'm creating a new user on the
Microsoft portal usually you can share
this password to another email ID which
could be the email ID of that person the
personal email ID or the manager's email
ID or the admin's email ID then go ahead
and press next button
and in the next button you can assign
the licenses right now what I'm going to
do is I'm not going to assign the
license to this particular user I have
the only thing which I can assign here
is the Microsoft fabric free licenses I
don't have any pro licenses to assign to
it usually the organizations will have
Pro
licenses in my case in this tenant I
don't have Pro licenses so I'll not be
able to assign so I'll say create user
without product licenses and press on
next then it will ask for additional
options which I'm going to
skip these are the details anything I
want to edit right now I can edit it and
finish adding post that this user need
to log in and change its password right
now it is showing us the password which
is this user is going to
get so right now it is showing the
details along with the password which
this user is going to get for the first
time this user need to log to app.
powerbi.com or any other Microsoft
application and reset its password if
you have enabled two Factor
authentication that also need to be
enabled and by executing this exercise
on app. powerbi.com the user will be
able to claim the Microsoft fabric free
license or the powerb free
license if your organization has not
disabled
that I'm going to show you the next step
how user in this case when we have not
assigned him the license we go ahead
reset its password and going to get the
Microsoft fabric free license which is
available for all the users in this
particular
tenant admin has registered your login
and now the time has come to log to app.
powerbi.com in the first login it may
ask you to reset the password as as well
as set up the two Factor authentication
if that is the requirement from your
tenant side or from your organization s
so let's jump onto the app. powerbi.com
open app. powerbi.com
once it is open enter your email ID
which has been provided to you by your
admin once you give that email ID post
that you can click on submit it will
take you to the next page and ask for
the password you have to give the
password which admin has provided to
you enter the password and click on sign
in after you enter Because admin has set
up your account and you are loging for
the first time you need to reset the
password by giving the new password and
click on sign in
then press next on the next screen now
you need to set up the Microsoft
authenticator or any other authenticator
which you want click on that and
next then you need to scan the code and
you will be able to set up your
authenticator provide the six-digit code
from your authenticator here and then
again press
next your authentic is successful once
the authentication is successful you
should be able to sign in to app.
powerbi.com once you log in you should
be able to see a free account for you so
authentication is successful let's go
onto the right top the user details
click on the user icon you should be
able to see your email ID and the type
of license what you have
here here you can see I have got a free
account and Microsoft fabric trial is
also available for me in this manner you
will be able to set up your account so
now let's understand powerbi licenses
typically powerbi licenses can be
divided into three
categories free license Pro license and
premium license premium has two part PPU
and premium capacity with the emergence
of Microsoft fabric you have more
options to know the information about
powerbi licenses what you can do is
search for Power bi licenses on the web
and you will get the product pricing for
Microsoft
powerbi now when you go to the pricing
depending on the country which you are
in you can see the
pricing and what I can do is in instead
of in I can make itus
so now I got the US pricing so depending
on Country you can change it and get the
pricing so first of all Microsoft
powerbi in free fabric account you have
a Microsoft fabric free account there
you can get the free Microsoft powerbi
Microsoft powerbi desktop is already
free you have you can create a powerbi
free account Fabric and you can get it
then we have the powerbi pro license
which is basically the user based
license which is $10 per user per
month and you can publish and share
report powerbi Pro is included in
Microsoft 365 E5 also and you can buy it
using the credit card also then we have
powerbi premium per user premium per
user include the features that available
in powerbi Pro additional feature in the
powerbi premium there are few premium
capacity features which are available
here and you can buy it it is $20 per
user per month so double the cost now
when you further go
down it talks about the capacity
basically because of the merge with
Microsoft fabric this is power be
premium capacity can also be used for
fabric so that is why Microsoft fabric
power be premium capacity SKU the skus
which start with P1 so those SKU you
have do
4,500
4,995 which is P1 capacity include all
the features available in power gain
access to rest of the Microsoft fabric
workloads as a unified product use Auto
scale to respond to occasional unplanned
outage and spike in the capacity by
automatically adding one Vore at a time
per hour so if you want to Auto scale
then there are separate charges now when
you go to Microsoft fabric capacity
which is f64 equivalent of P1 you get
licensed to your organization access for
Microsoft Fabric in unified product
experience that uses the same compute
capacity and
storage smaller entry level start from
F2 so the capacity start from F2 in
powerbi the premium capacity only start
with one which is equivalent of f64 but
here it start from F2 Microsoft as your
consumption commitment
eligible and gain access to full
Microsoft fabric workload through
unified product experience
capacity that is also there then we have
per month f64 SKU P1 equivalent
Microsoft capacity pay as you go this is
pay as you go this is very similar to
the f64 but you can shut down this
capacity pay as you go and this is
basically you kind of hourly capacity
which you again these kind of capacities
start with F2 so F2 F4 f8 F32 f64 these
kind of capacities are available then
when you further go down it talks about
E5 powerb desktop which is free you it's
available Microsoft powerbi
for mobile powerbi embedded when you
further go down it compares the feature
of powerbi with powerbi free account Pro
account premium account and premium per
capacity if you go down
here look at
this
comparison so create reports with
desktop available everywhere publish
report and share collaboration
see you can't do the collaboration
without having any license so you so you
at least need Pro license for
collaboration then Advanced Ai and data
flow data M xmla endpoints are only
available in the premium feature all
user can consume bi without paid per
user license is only available with
premium capacity P1 or f64 onwards so
viewers viewers don't need license from
those capacities onward
access to all Microsoft fabric workload
including data factory data engineering
data
warehousing data science realtime
analytics and data activator is only
available with P1 capacity or f64
capacity premium capacity memory size
limit for you will very get very small
memory size limit for free account 1 GB
for pro 100 GB for PPU and 400 GB for P1
premium capacity refresh rates for
powerbi data sets 8 per day for pro 48
per day for PPU and 48 per day for
premium
capacity maximum
storage powerbi native storage when you
are using powerbi then this is
applicable 10gb PPU 100 TB and premium
capacity P1 100 TB data security
encryption available everywhere one L
Storage one L B CDR storage one Lake
cache one networking only available with
premium prium capacity or Microsoft
fabric capacities there are additional
notes and comments I will also provide
the link of this one into the
description so those who have looked at
the older pricing now you will see few
difference in the pricing and these
differences have came because of the
availability of Microsoft fabric and
fabric capacities previously without
having a premium capacity you cannot buy
a capacity that's not true in case of
Microsoft Fabric World you can buy a F2
Capac and start with that and you can
buy priv Pro licenses and can start
using the all the features of Microsoft
Fabric and
powerbi
so now you have lot M options to buy
capacity because of Microsoft fabric
allows you to to have capacity as low as
F2 and the pricing start very low you
can check out the prices on Microsoft
fabric page for that
let's understand various options to
install
powerbi there are two very common
options to install powerbi download and
install so you can go to the powerbi
site or you can search on the internet
download and install
it what is the advantage of this you can
control the installation version you can
decide when to upgrade
it is supported on the most of the
versions of Windows and you don't need
Microsoft store for that so if the
Microsoft store is not there you don't
need it but what is the
disadvantage see powerbi updates
almost once in a
month if you don't update it is fair
chances that you will be lagging behind
and sometime I've seen users are as
behind as one year and it is is really
difficult from that stage to upgrade
it you will miss out on the feature and
new launches because you continue to
work on older version and you might have
a better solution available in the newer
version which you may miss
out the second way to install powerbi is
use Microsoft
Store you don't require admin privilege
for the installer to install this one so
if the Microsoft store is enabled you
can install
it as the power ba releases new versions
it will get automatically updated so you
will get
it what is the disadvantage of this
frequent update sometime what happens is
when the new release comes in it has its
own changes which has come in and some
certain things may break because of that
all of sudden you will start seeing
those those
changes now this is a better method
because everybody in the organization
would be on the same version if you
download and install not everybody would
be in the same version but yes there are
methods where the it can install or push
the powerbi version on all the desktop
that can also be controlled using it so
that is one more method where it can
control what version you have and then
they can keep the entire organization on
the latest
version to install powerbi I have opened
my browser and in that I have used the
search engine and searched for download
powerbi after the search I got few
results and the first result is the most
appropriate result for me which is
giving me link for HTTP power p by.
microsoft.com us downloads depending on
the country and language you can get
different links once you click on this
link you will get this page which is the
powerbi download page scroll down on
that and use Advanced download
options once you click on the advanced
download option you will come to the
download page which will allow you to
select the language and the download
option if you go further down it will
let you know which version and when that
was release so right now when I'm
recording in the latest version is
published in December
2023 and the version is
2. 1
24
2124 do1
052.0 if you further scroll down it will
tell you about the uses of powerbi
desktop and most importantly is the
system requirement what all are
supporting operating system and
installation instruction
you can also search for how to install
powerbi and you will get link of this
document I will share the link of this
document in the
description and if you go down it shows
you the various options to
install the link is also available on
app. powerbi.com and we can can install
by download and what are the different
requirement so I can go back to the
download page and download powerbi but
this is not the mechanism I'm going to
install as I've already told you there's
an
advantage of installing powerbi using
Microsoft store so I'm going to use that
but just for your reference I'll click
on the download button button and use
64bit because I'm working on a 64bit and
click on
download once it is downloaded you can
doubleclick on it and follow the
installation
instruction powerb desktop download of
exe file has been completed and if I
click on it it will open the installing
a
window I can select a language and move
forward it will ask for the
permission and it will start installing
the power B
desktop and it will give you the
visard so you can press on the next
accept the
agreement next you can choose a
location next and click on install
button I'm not going to click on the
install button because I'm going to
install the version which is provided by
Microsoft store so you can install if
you want the downloaded version the
advantage of this that you can control
which version you want it to have on
your
desktop but in any case make sure that
you are not 3 to 6 month behind in the
release I'm cancelling it
and now let me search for store and open
Microsoft
store in Microsoft store I will search
for
powerbi once I search Power bi I get few
option
powerbi powerbi desktop power powerbi
report
Builder powerbi is powerbi app which is
same as
your iPhone app as well as your Android
app it is Windows app what we need here
is for our learning is power ba desktop
and I'll click on
get it will start downloading I double
clicked on it it I can see the install
button I can click on the install button
and it will start downloading it and we
install powerbi
desktop on my Windows
machine it may take little bit of
time the the advantage of this method is
every month Whenever there is a new
release powerbi desktop will get
automatically
update once the installation is finished
we will go ahead and start
powerbi
desktop continuing installing
powerbi has has installed and time to
open I can click open in the Microsoft
store or I can search
powerbi and open powerbi
Desktop let me click on
open power VI desktop is opening up
and let let me give you a quick overview
of powerbi desktop powerbi desktop has
opened and it is showing me welcome
screen some of you will not get the
welcome screen because you might have
enabled powerbi home from options and
setting option preview feature that we
will discuss in some time when you open
the powerb desktop for the first time
you'll get this welcome screen the get
data option
on the left hand side and recent sources
you might not have recent sources for
the first time but as you start creating
content you will be able to see recent
sources and also be able to see some of
your reports under this left hand side
section open other reports so what we
will do now is we will cross this screen
and enter into the powerbi desktop you
can start the Journey of the powerbi
desktop by signing in into the
appropriate
account or you can start your
development and when you want to publish
you have to sign in now before I tell
you how to sign in I would like to show
you what all we have on the powerb
desktop and some of this what we are
seeing is because of the settings I have
done on December
2023 and one of the setting which I have
done is available from December 2023 3
if you go down into the release notes of
December 2023 you will find that we have
been offered option when we opened it
for the first time is choose the pain
Arrangement that works for you you can
always customize the setup later by
going to settings keep current setup use
more classic pan setup I like this
classic pain setup where I have the
build visual I have the visualization
type
and I have used update setup now the old
setup which was there was because of own
object interaction which is still
enabled in my case and I will let you
know about that
setting those who want to follow this
video and want to learn I would
recommend them to use this option update
setup in case they are getting it but I
will let you know how you are going to
get some more options in your options
and setting where you will be enabled
these
things even if you have not chosen for
them for the first time so let me jump
back onto the powerbi desktop and give
you an overview of powerbi desktop on
the powerbi desktop on the top we have
this ribbon which contains the menu item
for file home which is currently open
insert modeling view optimize help and
external tools we will use them as we go
forward inside the Home tab you can see
get data using which you will be able to
get the data from various sources and we
will start our journey by getting Excel
Source at Excel workbook we have a quick
connector data Hub again we have quick
connector
powerbi semantic models data Mars lakeh
house warehouse and and kqal databases
equal server we can enter the data we
can use data verse as a connection and
we can use some of the recent
connection transform data is there to go
to Power query power query is used for
transformation of data and then you can
alter your data source setting or you
can modify some of the data source
setting using data source setting option
those of you who has enabled on object
interaction will get this visualization
option but if you don't see this option
it means the on object interaction is
not enabled when I'll go to the preview
feature I'll let you know more about
that in the insert tab again you have
the visualization insert option along
with the more
option then you have key influencer
decomposition tree narrative page report
power app power automate text boxes and
Etc all these are the visualization
which you can insert into the powerbi
desktop or the components which you can
insert to make or beautify your powerbi
desktop report and once you publish it
it will become the powerbi service
report under the modeling tab you will
get quite a few options right now some
of these options are disabled because of
the reason we have not added any data
once you add data depending
on what is available one or more option
will be enabled so manage relationship
once you want to create the relationship
new major once you have the data quick
measure to Quick create measures new
column to create new calculated column
new table is available back because we
can start our modeling by creating a DEX
table new parameter we will explore this
option later to create dynamicity in the
content and then we have language and
linguistic schema options in the view
options you have the theme which is one
of the first thing we are going to do
then we have the page view and the
mobile layout then we have grid lines
snap to grid lock objects etc for
various options on the top you have
various pan options which you can use to
enable and disable various panes so like
for filter
pane I can enable or disable it using
the filter
pan so as you can see now there is no
filter
pan I have enabled it again similarly
you can see the data pane here the build
visual pane here format pan here and
then you can customize by clicking here
or you can add by checking it here so
both of them are going to do the same
job let me enable The Bookmark tab I got
a bookmark Tab and as you would have
noticed the moment I pressed this and I
got this I this is also enabled so let
me disable let's say format
pan so there is no format pan available
let me disable the data pan now there is
no data pan we got the data pan we got a
format pan here now we got a selection
pan also and as you can see the
selection is enabled here
also and to get the selection pan you
can click some of the panes will open in
a mode where they are not expanded so if
they are not expanded you can actually
click on the pan here and expand it
similarly we have performance analyzer
pan again on the top and on the
left and once it is open and if it is
not visible you can click on the left
hand side to check it out performance
analyzer help us to analyze the
performance of the visual and we can see
the timing and we can go ahead and
analyze that in a better manner syn
slices is another pan which we can open
to sync these slices the feature we will
explore
later I'm collapsing all
these and take my focus to the one of
the pane on the left hand side which
contains the various views the report
view which currently we are on then we
have the table View model view and
recently we also got Dex query view now
table view right now would be empty once
we have the table and which is which can
be seen on the right hand side on the
data view we will be able to see some
table and data table table view or the
data display is dependent on which kind
of
mode usually all the import mode tables
are available in case of pure play
direct query and live mode we might not
even get the table View then we have the
model view where we will be able to see
our model and the Dex query view where
we will be able to run the Dex query
inside the Dex query View and inside the
relationship view both views contain
something known as model and this will
help us in creating calculation
groups calculation groups were
previously created using external tools
like tabular editor
but now we can create calculation group
inside the powerbi desktop and we will
explore that
also before we go into the options and
setting just let's quickly look at which
version of powerb are
on I know we have installed a particular
version but in case you wanted to check
because there are monthly updates
ongoing and you want to know which
version you are on click on file go to
about and you will be able to see which
version of powerbi desktop you are
on what we are going to do now is we are
going to
enable the preview features or I'm going
to tell you what preview features I have
enabled so when we take this journey you
are on the same page where I am now now
as power beer releases almost One
release per month some of these features
will change over a period of time from
the public preview they will went to GA
and there would be no options for that
in public preview there might be option
in some other setting for enabling and
disabling and same way there will be
some new features which are coming in
which will appear in the preview
features so first of all let's go ahead
and explore what all we have inside the
options and setting an option to go
there you need to click on
file options and setting
options and you will get a popup and in
this popup you have options like data
load and inside the data load you have
type detection like detect type and
header of unstructured source according
to each file setting means the file
setting is going to decide whether we
need to do it or not background data
allow the data previews to download in
the background according to each file
setting means it is depending on the
file setting parallel data loading when
you load the data into powerbi via
import mode or direct query mode each
table is backed by power query these
query are evaluated simultaneously
instead of one by one so how much
parallelism you want you have enabled
that typically we keep this enabled
autod date time intelligence but I
personally don't prefer it but at least
I would like to show you what does that
mean so I'm keeping it right now clear
cach a data management cache if you want
to clear you can clear from here or you
can change the size if you have a pretty
big file I will recommend you to keep it
from 8 to 10 GB like 81 9
2 Q&A cache for the
Q&A and folder artifact cache if you
want to clear that then you have option
for power query editor display the power
query setting Pane and display form up
bar is default enabled data import enabl
web table interface is enabled data
preview I have enabled show white spaces
and new line correctors and if you don't
enable it you will not see it display
preview content using monospaced font is
disabled parameters Al always allow
parameterization in data source and
transformation dialogue as of now it is
disabled but we can enable this feature
which will allows the
parameterization and formula enable M
intelligence in the formula bar Advanced
editor and custom dialogue and there is
the information given here changing this
setting will take place when you next
time open the powerquery editor so it
means some of these settings will not
apply as soon as you press okay you have
to open the power VI again me you could
close it and open it
again Direct query sap Hana as relation
sources now we are not planning to work
on sap Hana so we'll leave it as is
scripting right now I'm not updating any
R script option also not updating any
python script option whatever options
you are seeing is because I already have
installed python on my system security
option this is another important option
now in this option there are few
important things which you should do
here is one of the thing is if you want
to enable the argis and field map visual
make sure they are enabled similarly
authentication browser you should always
choose use my default browser unless it
stopped working sign in experience use
updated signin experience you can use
that approved adfs authentication
Service you have not approved any
authentication Service so there is no
option coming in then for privacy I'm
keeping combined data according to each
file privacy setting
in the regional setting I'm keeping my
default Windows setting and language it
it means it's going to follow my windows
display language setting and I'm going
to keep it like that in case you want
you can use the model
language updates I'm not going to change
anything here uses data you can disable
this feature if you don't want to send
any data to
Microsoft diagnosis right now I have not
enabled
tressing or crash T collection but at
few places the diagnosis is on is
basically query diagnosis enable in
report and query editor diagnosis level
Aggregate and detail additional details
are also
enabled review feature and one of the
most important feature which we are
talking about shape map visual is
enabled here as you can see Q is enabled
connect external semantic model shared
with me is enabled modern tool tip is
enabled Park line is enabled metric is
visual is enabled quick major suggestion
is enabled field parameter is enabled
inhance lowlevel security editor is
enabled on object interaction is enabled
powerb home desktop is not enabled which
I'm going to enable
now
similarly also I'm enable set
sensitivity label on PDF is enabled
Dynamic format string major is enabled
save to one drive and SharePoint is
enabled enhance publish dialogue is not
enabled I'm not enabling that
also how bi project. pbip option of
saving is enabled new card visual is
enabled new button viser visual is
enabled model Explorer and calculation
group authoring this is this is the new
model view which is available in the
relationship as well as the text view we
have enabled that text query view you
have seen we have enabled that summary
with co-pilot visual is enabled improve
Q&A with co-pilot is also
enabled I can press okay here but let's
have a quick look at save and Recovery
as of now I have set up the store Auto
Recovery information every 10 minutes
but if you have a really big file please
make sure to increase it otherwise it
may slow down if because it start
automatically saving the reports inside
the report settings these are the
important things which we have also seen
when we were viewing the December
release notes display smart grid line
aligned suggest a visual type by default
is enabled inbit visual menu always
allow show all in the visualization
type and then the pain switchers always
show the
pain Switcher always show build menu
visual in the panes which are always
open in New pane these are the option
which are already selected here other
than that I am leaving accessibility and
Page alignment as is now these are the
global features which we have looked at
it as you can see they fall under the
global feature there are file specific
features which is there inside the
current file and one of them is data
load and as you can see in the data load
detect column types and header for
structure data sources so it's going to
detected import relationship from the
data sources if it
is if it is supported on that Source it
will be imported update and delete
relationship while refreshing it can do
that auto detect new relationship now
this is the feature you will realize
when I am going to load the data into
the import mode it's going to get the
relationship and this is the reason for
that that's going to Auto detect the
relationship again I can disable time
intelligence at the report level which
I'm not disabling right now I'm going to
show you what going to happen in that
case and post that will come and disable
that if required background
data allow data previews to download in
the background we keep it parallel
loading of table is default we taking it
from the global level and Q&A I'm not
changing anything here Regional Regional
setting I'm keeping is default privacy
default Auto Recovery is disable auto
recovery on this file if you want you
can disable able but I'm keeping it
default publish data source setting I'm
keeping everything as default sap
variables right now I'm not enabling
direct query connection to data set this
prevents user from creating direct query
connection to the data set on the
desktop if you change the setting you
need to republish your report to save it
discourage direct query connection we
don't want to discourage it so we will
keep it query reductions keep the
default settings and query reduction uh
instead of adding apply button to each
slicer it is recommended apply all
slicer slicer button to each page and
that we are going to explore instantly
apply basic changes add
apply button to all basic Fielder so
this we can use to you know what happens
is the moment you select anything the
visual get refreshed we have apply all
slicer button and or we can use apply on
each filter but what we are going to use
is we going to use the default setting
and if needed we go comeand explore and
Report setting these are few of the
report setting like use of the modern
visual header is enabled hide visual
header in reading mode is by default
disabled we keeping it export data allow
the end user to export data current
layout summarized data from the powerbi
service and powerbi Report service I'm
going to keep it because it allows you
the currently out means as whatever it
is looking like in powerbi service it
should be going in that particular
manner so I'm keeping it filtering
experience I'm keeping both of them
tagged and this is also default allow
user to change the filter type enable
search for the filter pan cross report
drill through right now we don't need so
I'm not enabling it personalized visual
is something we can allow on the report
level modern visual tool tip is enabled
and we'll keep it tool tip Auto scale
tool tip size affected by the canvas
size this a preview feature so let's
enable it default summarization for
aggregated Fields always show default
summarization type means if the field is
numeric field or aggregated type we will
have a default summarization and that's
where it is asking for query limit
simulation if you want to simulate which
kind of capacity you have shared
capacity premium capacity SQL Ser
analysis Services aor analysis Services
custom limit no query limits I'm keeping
it auto as of now this is 1 GB shared
capacity
uh as of now I'm keeping it same but in
case you want to see if you're on a
premium capacity or you want to go to
premium capacity how it is going to
behave so that you can enable it I'm now
going to press okay button on the bottom
right and once I press this okay button
on the bottom right I might have to
restart my power bi desktop to get all
these features
enabled so this is a quick overview and
now I'm pressing
okay and it is asking that it requires a
restart so I'll restart my power via
desktop and come back again to
you so let me give you overview of the
data whatever data I'm using for this
particular video and most of the videos
on my channel is available on
GitHub some of you has complained that
you are unable to download the data from
GitHub so so this year I will also
provide the data on Dropbox and I'll
share the link in the descript
description data primarily is a sales
data or the retail data which we are
going to use the GitHub contains lot
many other type of data which we are
going to use like for power query I have
pyot dat. XLS there are many other files
which are used in different videos
available there so whenever you watch a
video and if there's a file required you
will get that here on the
GitHub this time what I've also done is
I loaded some icons I taken the help
from AI tools to generate some random
icons and then I loaded all those icons
on the GitHub so that you can use those
icons when you are creating your
visualization to make your visualization
look much
better
so you can take the full advantage of
the data available from my
side so let us quickly have a look at
what all data is available at the GitHub
all the data which I'm going to use in
this
video is available on
github.com slamit chandak PBI
slav
bi on GitHub you have various file one
of the most important file which we are
going to use in this video is sales data
used in
video do XLS let's download this Sal
data used in video and keep with us we
will need it to understand the data
click on this file sales data used in
video and once you click on this you
will get an option here to download this
file so you can download it we are also
going to
use P tata. XLS for power
query you don't need to download these
file FES you can download for
understanding the data but I'll tell you
a technique you using that you will be
able to use these files without
downloading now for understanding of the
data you can download these files some
of the users have complained last year
that they are unable to download from
the GitHub what I'm going to do is I'm
also going to give you a Dropbox link
into the description form where you can
download these
files download of last year's data is
available here and for this year also
I'm going to load the PB as well as
the PPT used for the video CSV files are
available here and some of the icons
which I'm going to use in the video are
made available here
I will add the GitHub link also in my
description so that you can download the
data from there before we move forward
let's understand what is there in sales
data used in video which is the primary
file we are going to use let me give you
the overview of the data which we plan
to use
first this data is the one which will be
used as the primary data throughout the
series
this is a perfect star schema which
already
contain pack and dimension table so
First Dimension table which I have is
the item table which contain item id
name brand ID category id subcategory id
brand and
subcategory so the first table which I
have is item table and item table
contains columns like item id name name
brand ID category id subcategory id
brand category and
subcategory as this is a dimension table
Item ID is unique and would be used in
my sales fact which I'm going to show
you a little bit later the second
dimension which I have is a customer ID
contains customer ID age of the customer
city state and name of the customer city
and state here are the city and state of
the customer customer's address it is
not where customer is ordering its data
customer may be in travel while it is
ordering or ordering for the relative so
this is not the same this is the
customers Master
data the third dimension which we have
is the geography table it contains City
ID city and state and this is the order
City or the sales City uh which we have
in the
data now let me explain you the fact
table the fact table is a retail sales
data every line represent a single order
only
means every line contains only one order
and one order don't have multiple
lines and this is my sales table sales
fact which I'm going to call
here for
this is this is sales table all the
sales fact for our current
analysis and it contains order number
the order number which is unique for
each line item id repeating referencing
item Dimensions sales date on the date
on which the sales has happened delivery
date the date on which delivery has
happened customer ID referencing the
customer master table or customer table
City ID referencing the geography T
table quantity which has been sold for
each line price which is size
of that particular item on that date
cost what cost we are inquiring for that
and discount percentage as you can see
we have not calculated the cross amount
the net amount the discount amount also
the discount percentage is an absolute
number it is not .12 it is actually 12
when we are doing the calculations we
need to take care now in this data what
we have to do is we require some of
those calculations and those
calculations will be done either as a
calculated column which is at the row
level or as a measures which is
basically aggregated level which we will
understand in some time in
powerbi so what kind of analysis we want
you to do on this data in this data we
can do many analysis like I can find out
my top cities top
customers top brands top C categories
top
subcategories I can analyze where I'm
getting more discount or margin for
which item I'm getting that for which
cities I'm getting better
discount on which cities by giving less
discount I'm getting more margin all
these kind of analysis we can do using
this data now because it's a learning
Series where we run the feature and then
implement it might not be possible for
me to explain all the possible outcome
for this one but at the end we will try
to create a report to give meaning to
this data and we will publish it for our
ad user let's now talk about the type of
data loads before we bring in the data
into the powerbi desktop usually we talk
about three modes import mode direct
query mode and live mode but with the
emergence of Microsoft fabric we have
got a new mode which is also known as
direct click mode import mode in which
in case of the import mode you actually
load data into the powerbi and powerbi
is going to keep the data with it and on
that data we are going to build a model
so powerbi is owning the data the model
the relationship the measures and then
you publish such models on powerbi
service when we publish the file there
are
two files created
on the powerbi service one is data set
file and another one is a visualization
file the data set file or what we now
call as semantic models contain the data
as well as the model information major
definition
Etc in case of direct query we usually
connect to the
databases which are typically
rdbms not all the rdbms are supported
there is a list available on the
Microsoft side which all databases are
supported for direct query in case of
direct query powerbi only owns
the semantic model or your relationship
your measure definition your calculated
columns it owns that when you publish
this you will get a data set file or
semantic model file onto the powerbi
service but that will not contain data
it will only contain the model
information in case of live query the
live doesn't mean the real time data it
is basically when you use SQL Server
analysis services or powerbi data set as
a source in such case what happens the
model the semantic model or the data set
owns the data and that is not owned by
the powerbi that is either owned by a
previous powerbi data set or SQL Server
analysis services or a your analysis
services in powerbi we only create
visualization yes we can also create
some additional measures if
required when we publish such files we
don't get a semantic model or the data
set on powerbi service in case we are
publishing a file which is connected to
a previous powerb data
set so so the new report or the
visualization file will
also point to the same data set direct
lake is the new mode which came in it
provides you best of the import and
direct query
mode for Microsoft fabric lak houses and
warehouses semantic
models for direct Lake Microsoft has
done changes in the analysis
services so that it can query the Delta
par format files and give you a import
mode
performance so whenever you are going to
use Microsoft fabric you need to ensure
that you are using direct Lake mode
there are times when it fall backs to
direct query and you should try to avoid
such cases where it can fall to direct
query because Direct C performance
cannot be compared with direct query
performance let's load the data onto the
powerbi
desktop I have opened the powerbi
desktop again and time has come that we
import the data onto the powerbi desktop
out of the mode which is import mode
direct query live and directly mode we
would like to use the import mode here
now those of you who have downloaded the
Excel files I'm going to tell you how
you are going to load the data and then
I'll tell you those of you who prefer
the URL mode how you going to do it so
those of you who has downloaded the data
can use Excel option under the Home tab
to upload the data to the powerb desktop
the same option is also available in the
get data and if you click on the more we
can see what all options we have on
powerb desktop we have more than 200
plus connectors for powerb desktop to
connect on various sources these are
categorized under file sources like Exel
TCH CSV XML Json file folder PDF
databases most of the common databases
like SQL Server Oracle IBM gb2 IBM
natisa my SQL database post database
cbas teradata sap Hana Amazon red shift
and many more including the most common
like slow frak also have Amazon AA and
we have few other connectors Microsoft
fabric which has been launched in May
2023 and generally available from
November 2023 the connectors are
available for semantic models data flow
dat Mars Warehouse leak house and equ
databases Power Platform connectors for
power data flows data services data and
data flows a your connector for aor SQL
a your signups analytics a your database
Services a your blob storage a your
cosos DB and data Explorer a your dat Le
gen 1 a your dat Le Gen 2 as your HD
insides a yourd spark and other as
services online services we have so many
of these including SharePoint online Bas
Microsoft Exchange online D 360 5 Etc
and we have few other connector which
which include the web connector and one
of the connector we going to use when we
going to bring in the data from the
GitHub now those of you who has already
downloaded for them go to the Exel
workbook search out where your data is
my data is inside the powerbi data and
there I have s data used in video and
once I select say data used in video I
can press the open button to get the
data once I click on the open button it
will show me a popup and in the popup I
can preview my tables but unless I press
this check box I will not get the data
on the powerp desktop we can check all
these four files this has the same data
we have explained you a minute back also
if you have few tables in your Exel Mark
as a table you will get those here now
we have two options to explore low data
and transform data when do we will use
low data and when we will use transform
data in case we don't want to transform
this data this data is in final shape
which is true for this data we will
directly use low data but if this data
require transformation or this data is
too big we want to reduce it before
loading we will use transform data in
the current case the data do not require
transformation also the size is not so
big that I have to reduce it before
loading into powerp desktop so I'm going
ahead with the load data option I can
click on the load data and it will load
the data so this is the option for those
of you who are using the Excel those of
you wanted to use GitHub first of all go
to the GitHub and find out the URL which
you want to use to get the URL scroll
down open this file says data used in
video XLS now some of you would like to
take the URL from the top but don't do
that go to this button raw don't click
on that right click on this button use
copy link once you copy the link come
back to your powerb desktop and now use
get data web option I've already shown
you all the option categorization and
here you can put this URL you can check
out the Advan option but right now I
don't need so I can continue with the
basic option press on okay it should
open the same popup again which I have
explained you while I was loading the
XEL file I click on the cheat boxes to
make sure that I'm loading the data for
all these four table it does not mean
that you have to load the complete data
in one go you can load data in multiple
goals also I'm going to press the load
data in this case and load my
data it will show me a popup for the
data loading and this is also one of the
way when you can check the data is
loading it is in import mode because
it's going to show you amount of data
which is getting loaded data is loaded
onto the power bi desktop and on the
right hand side data pan you can see the
data tables those tables are customer
geography item and sales now we can go
ahead and take two steps from here one
we create the formulas which are missing
in sa State table for analysis or second
is we create the model we are going to
create the model and post that we will
try to understand a little bit about the
Dex formulas and that is where our
technical stuff will start where you
need to understand the Dex and how you
can quickly create calculations which is
can be categorized either as calculated
column and major data is loaded and I
would like to create relationship before
I do that I would like to have a quick
view on the data using the table view on
the left hand side I go to the table and
as it is import mode I should be able to
see the data of each table below here I
should be able to see the count and I
can match this count with my Excel data
how much rows I have there versus how
much rows I have here to make sure that
we have the same amount of data what we
have at the source I can click on
geography to see the geography data I
have 100 rows there item 55 rows and
sales table having 30,000 rows all my
data is correct let's now create the
relationship on powerbi
desktop now let's jump onto the model
view and here we are going to create the
relationship but what we observe the
relationship is already there and I
explained you let me show you again
under the file options and setting
options we have an option in the current
file data load level which is auto
detect new relationship that is causing
this in case you creating a really big
model where you don't want to do this
you can uncheck that let me close the
property and the data pan and try to
understand if these relationships are
correct or not so let me showcase you
what is the exact model I need on the
PowerPoint
slide so just a overview of the model
which we are going to create here uh
which is available in the Excel file
which you have seen is that we we are
going to have a sales table which is at
the
center and it will have geography
Dimension which is available in the
Excel sheet item Dimension again
available in the Excel sheet and the
customer Dimension again available in
the Excel sheet we're going to create a
date table in the powerbi desktop and
going to utilize it it's going to be a
perfect star
schema
where fact is related with Dimension and
dimension is related with fact in a
perfect star schema the two Dimension
don't have any relationship between them
so although I have City available in
both geography and customer they will
not have any relationship between
them so they will not have any
relationship between
them because in a perfect star schema
Dimension don't join with any Dimension
fact don't join with any fact so we will
utilize this model for most of our
discussion but yes there would be places
for some of the examples this model
cannot be used and that's where we are
going to use very specific files and
specific table or the models to achieve
those
objectives now we have looked at the
model we know this model is not as per
our expectation first of all there is an
inactive joint and we need to understand
why there is an inactive joint and we
have to also understand what are these
different kind of joints why there's a
one on one side and why there is a a
star on one side so the relationships
which is showing one and star they are
one too many relationships and these are
the kind of relationship we want in this
kind of schema the inactive relationship
here is because of loop what is the loop
here or what is the two path here the
relationship here which is inactive is
because of the loop or the two paths
table is joined with a customer table
one to many and again there is a one to
many relationship with sales table it
means this this is the first path
geography can reach to sales there is
also a direct path where geography can
reach to the sales and in this manner
there are two paths which are created
and because of that one path is inactive
let me delete these
relationship I'm going to delete some of
the existing relationship also because I
want to tell you how to create
relationship we have few options to do
that and let me delete all of them to
create relationship for you you can drag
the table wherever you want to have a
position where you can easily map the
tables
now easiest way to create a relationship
is click on any of the column keep your
mouse button pressed and drag it on the
corresponding column on the other table
so I am dragging customer ID of the
customer on the customer ID of the sales
and it created a relationship it did not
ask me what kind of a relationship
because it has identified but let me
double click on this and show you on the
popup also on the right hand side in the
properties pane which I have already
open you can see what this relationship
is but let me double click and show you
in the popup in this popup we can also
change the relationship column if
required the sales table is on the top
and the customer ID is selected the
customer table is at the bottom and the
customer ID is selected there and it is
many to one what does this kind of
relationship means many to one means the
first table is having on the man side it
means the customer IDs can repeat there
the customer table is on the one side it
means the IDS are not going to repeat
there in case in the future it repeats
it may error out it may not also work if
you have blank value in the customer ID
of the customer table it is fine you can
have the blank on the sales site the
relationship Direction is single it
means means the customer table the table
on the one side is going to filter the
table on the many side you're going to
create one relationship as both
understand that what are the other kind
of relationship one to one means both
the tables are having the data at the
same level it means I join customer
table with a table let's say customer 2
which both is having customer ideas
unique in that case I will have a one to
one relationship one to many means if I
have the customer table above and the
sales table below it would be one to
many it is just reverse of what we
currently have many to many means just
like sales table we have another table
where the customer ID is not unique both
the side there are multiple values we
create many to many relationship though
we avoid many to many relationship in
most of the cases they're especially
useful in few of the use cases and one
of such use cases is RO level security
so while we try to avoid many to many
relationship it is also helpful and
powerbi handles many to many
relationship pretty well so let me click
on okay after using that and make
relationship active means this
relationship is going to be active in
powerbi you cannot select more than one
colum so if I try to click on this using
control or shift I will not be able to
do it it means we create a single column
relationship but to create multiple
column relationship you can create a
concatenate
column to create such a relationship in
case of direct query you have been
provided a function which you can use
which is combine values to create such a
concatenated column you can create more
than one relationship and one
relationship can be inactive between the
two tables and we can use a function use
relationship to activate such
relationship let me press that's okay
now the second relationship I want to
create from a different option the
option is in the middle of the screen
which is manage relationship under the
Home
tab let me click on the manage
relationship and here you see a popup
providing me all the options one of the
option which I have here is new and I'm
going to use that to create my
relationship let me click on new and let
me select the table this time I'm going
to select
my item table as the first
table then I will select sales table now
it has automatically detected item id
versus Item ID I don't need to even
click and check those it is one too many
single directional relationship this is
what I want the table having the unique
values of the item ID is on the top so
that is why it is one too many again I
want this relationship to be active but
I'm going to make this relationship as
bir directional both let me click on
okay let me close it the third
relationship easy I'm going to drag City
ID to City ID to create it and on the
right hand side properties you can see
in case you want to change something you
can even change the relationship let's
say some other column if needed but as
we know the relationship is correct City
ID to City ID and this is single
directional and we want an active
relationship so we will say apply
changes you can also open the
relationship editor by clicking on the
button
below let me press cancel so my model is
ready as a next step I would like to
understand the difference between a
single directional join and a bir
directional
join and we would also like to
understand what happen happens when
there is a missing
relationship for two those two example
let's go ahead and try that out our
powerbi model is ready and here we want
to understand the difference between a
one directional relation and bir
directional relation to understand this
let's go ahead and create few table
visuals
now to do that first of all we have to
go to the report view on the left hand
side the first button is report view
here because I have already enabled the
build
visual I'm able to see
this otherwise on the Home tab you will
see these options in case you don't see
build a visual you can go to the view
and enable that from here build a
visual now let me click on the table
visual inside build a visual
once I click on that I'll get a table
visual I'm going to copy this visual
three times and put them
separately now let's look back at our
relationship so item is bir directional
and geography is single directional
customer is also single directional I
create one visual using CTI ID only City
ID I'm bringing in the second visual I
am bringing
in Item
ID and in the third visual I am bringing
in City ID from sales table
and item id also from sales table so
first table there is a city ID from
geography table in the second visual I
have Item ID from the item table and in
the third visual ual I have City ID and
item ID from the sales table I have
knowingly kept it on the ID so that you
can easily understand what's happening
here so let me click on the item ID in
the second table and as you can see it
has filtered the third table there's no
impact on the other dimension table let
me click on the city ID and as you can
see the city ID also filtering the table
visual as I've not pressed Control Plus
click the moment I clicked on other
visual it take out the filter from the
second Visual and it applies The Zone
filter let me go ahead and click on City
ID again it will remove the filter so I
will have all the cities and I have all
the item id let me click on the first
row of the visual which is coming from
the sales table what you can see here is
while the city ID from the city table
has no impact but Item ID is getting
filtered here when I'm fil ing this this
is because the joint is bir directional
a bir directional joint
means
fact can filter Dimension and dimension
can also filter fact or both side of the
relationship can filter each other while
in a single directional relationship the
table on the one side which is dimension
can filter the many side table
in fact now let's try to understand what
happens when there is no join or how do
we identify there is no join let me
delete all these visuals on
this and let me bring in another table
Visual and this time in the table visual
I would like to bring in item brand so
the way to bring in is that
I once the table is selected I can click
on that it will bring in and then I'll
bring inant quantity by default it
should take aggregation as you can see
it is using sum of
quantity so numeric values are by
default aggregated you have to
understand in powerbi the data is either
distinct or group by and aggregated so
even though my item IDs are repeating in
my sales table but if I put it from the
sales table they will not repeat here
they will just create a distinct
combination or group by and then if I
put a aggregated mejor or a numeric
majure that can aggregate that will
aggregate along with that group by as
you can see these values are different
and this is actually my
total and now let me go ahead and do one
thing which will tell you how do you
identify a missing relationship what I
will do is I will go to my model
view and inside the model view I can
delete this join between item and sales
table or I can deactivate it by using
make this relationship active I
can uncheck that and it will become
inactive and use apply this is as good
as not having a filation and once I go
back to the report
view you will see that the all the rows
have the same data when all the rows
start showing the same data as grand
total there are chances that we have in
active relationship or the relationship
itself is not
there the good thing with the inactive
relationship which is logical inactive
relationship or inactive relationship
which is not created because of loop we
can activate it using use relationship
Dex function in this manner you now
learn how to use bir directional
relationship and how you can find out
when there is an inactive joint now is
bir directional relationship is a good
thing so when should we use bir
directional joint and when we should not
use bir Direction so bir directional
joints are especially helpful if you
want the dimensions to get filtered uh
when your fact data is getting
filtered but when you start using more
than one fact so in case you have more
than one facts it can create Loops for
multiple paths what would happen you
will be able to reach a fact from more
than one place let's say you create go
to Dimension to fact by directional
another fact is again bir directional
then there are multiple paths available
in such cases you start creating
inactive relationship we should try to
avoid this is one more place where you
should avoid is basically when you are
using direct query now what happens in
case of direct
query there are queries which are
generated and sent to the source now
when you have have bod directional joint
it will generate more number of queries
and in that will put lot of strain on
your Source database so to optimize the
performance in a direct query mode we
try to avoid bir directional
relation so bir directional relationship
should only be
used if that is the only way you can
solve the purpose if there is no other
way to achieve the same thing like I
want to
filter the dimension data using fact we
can actually use in the slicer a measure
from the fact and check its value as is
not blank to filter the
slicers to reduce the slicers values
what has been used in fact that is
another alternative but if there is no
other
alternative by directional joint is only
fit for the purpose then only we should
use it now before I go to the next step
let me go ahead and activate this
relationship and apply
changes so that our model is correct as
you can see once I have activated the
join again I'm able to see the correct
Data before I take the next tab let's do
one thing let's add an image to this
first
page the image of this series and then
save this file because we have not saved
this file so in case the system crashes
or something goes off the changes might
not be fully recoverable though we have
used an option auto backup that may be
able to provide
us autosaved version which we can use I
click on this empty page let me click on
the format option and enable the format
pane once I get the format pane in the
Page
information I can scroll down
and in the canvas background I can
browse an
image I can take the image which I
recently download
it and reduce the transparency to zero
image fit is normal I can use a fit so
that it fits in and in this manner I get
my homepage with the image which is
my image of the series
now you might be seeing this build
visual is still there now Prov that what
I can do is I can add something really
small in this page so I can go to insert
and then I can let's say insert a shape
let's bring in a
rectangle and
let's do one thing go to
the
style fill off border
off and come outside now you don't know
there is a rectangle and you get the
image so let's save it contrl s give it
a new name uh it's going to save on a
default location and if you want to
change that click on the more options
below once you click on the more option
it will open and now it is showing me
documents on the top but if you go on
the left hand side little bit below you
will see browse this device let me click
on browse this device now it opens up
option and as you know that we save all
our files in data but not this time
we're going to save the file in our end
to end and I'll also create a new folder
for that right click in that new folder
we going to call it
data we don't have a data here but we
have a PB file and I'll give it a name
as n to and and what would happen during
this series there would be movements
where I I need to stop and start a new
file maybe I don't want to use it or I
want to save it a particular place
because I want to modify certain other
things or it is too busy file at that
moment I may like to shift it especially
when we are going to go to the power
query learning we might not use these
tables when we try to create the final
dashboard we might not require it so at
that time we might create a one more
version of this file so to do to create
the scope for that I'll call it n to and
one file and let me save it now for
saving now I have three options PB which
is power ba file pbit which is the
template file which was also available
previously to create the template and
powerbi project file which is a new
option available with the GitHub
integration this is one of the most
suitable options you have but we will
continue to save it as a PBX and save it
so now over powerbi file is
saved before we go into the depth of
calculated column and
major one of the reason we say is that
you know when we want to do role level
calculation we can prefer columns to you
know make sure that it increase the load
time and if the data is pretty large the
runtime calculation at the row level
could actually proven be costly but if
it is not costly then go ahead and
create a
now what is this Ro level calculation
and when would I use Ro level
calculation and when I should not use Ro
level
calculation there are few places where
you can simply take this decision that I
need a ro level calculation whether at
the new calculated column level or major
level or whether I don't need it there
is a place where I should not do ro
level calculation I should create a
mejor or what is that kind of scenario
so when whenever we have to multiply we
have to use the row level calculation
whether we use calculated column or a
measure but when it's a
division the division should always be
first Aggregate and then divide it it
means it should be a measure let me give
you one example for that so I have these
items I have quantity and price now what
is gross quantity multip by price is
basically this formula so this is 50 70
80 and
90 now so I'm multiplying at each row
level and then finally I'm summing it up
here as
290 is this is correct or should I
simply sum of the quantities average of
the price I definitely know if I Su of
the price it's not the correct so it's
going to
be 70 * by
4.75 which is 3325 so which one is
correct we know here two 2 990 is the
correct
answer it's not
33 2.5 that's not the correct answer
whenever there is a multiplication we
should do it at the row level and then
we should add which actually we call it
sum of a multi by
b means false you multiply now in
database we can do this sum of a * by B
inside the sum function that is not true
in power bi when we creating a major and
major is one where we do have
aggregation built in there we need to
use expression function to do a mtip by
b or we can create a calculated column
which contain a multip by b means in
this case cross and later can create a
measure on top of it now there is a
reverse case the reverse case is when I
want to find out price using gross and
quantity so how do I find price so
simply I'll divide Cross by quantity so
I got five I got seven I got four I got
three what's my average price my average
price is nothing but the total of gross
divide by total of quantity it is not
the simple average of these four which
is
4.75 which is a simple average of these
four it's not 4.75 390 / by 70 is 4
.14 this is my correct
data it means whenever you need to
divide you first need to aggregate means
sum of
a divide by sum of
B
so what does this means is in case of
division it should be sum of a divide by
sum of B is first you aggregate
and then you divide so in such cases we
should only use measure because
calculated column is going to do the
calculation at row level and post that
the aggregation can happen in a measure
but in case of measure we can aggregate
them separately and then divide or in
the same measure we can say sum of a
divide by sum of B table and
column in this manner in some of the
cases we can take a call where should we
use a measure or where should we use a
calculated column remember on a smaller
data where the roow level calculations
can be done in a major and not making
much impact we can still use major for
RO level calculation but yes there would
be some time because of the performance
region we will prefer half of the
calculation in calculated column and
then use
measures need to create calculations and
these calcul ations are divided into two
parts calculated columns and measures
now calculated columns do the
calculation at the row level
and they are
stored in
the data set semantic model or the file
all the calculation you are going to do
you will be able to see what new values
are getting calculated into the table
View and you will also be able to see
that when we save the file the size of
the file
increase on the other hand the
calculation done using the measures are
only definition and getting executed at
the run time the calculated column which
we would like to create right now are
gross
amount which is nothing but sales
quantity multipli by sales
price the second one which we want to
create is Discount amount which is
nothing but sales gross amount which we
already calculated multiply by the
discount percentage now discount
percentage here is an absolute value so
we have to divide it by 100 gross amount
multiply by discount percentage divide
by 100 and one more column which we
wanted to create is cogs amount which is
nothing but sales quantity multipli by
sales
cost once we reach the measure I'll
explain you what all measures we
need I on the powerbi desktop and from
this Itself by going to the data view I
can create new column so I can click on
the sales table and in the table tools I
will have option for new
column
but but I have an intention that when I
create calculated columns calculated
columns are getting added up to the
tables and will be saved along with that
table so I would like to see the values
getting generated and that is why I'm
going to use
the table view to do that so let me go
to the table
View and before I start
creating my new columns I would like to
note down the size of my file so that at
the end I will able to tell that the
calculated columns are getting saved
along with the data table and they are
adding up to the
table size and majors are not going to
add the size they are just definitions
so let's note down the size right now we
have
1,623 KB size for this file and after
some time you're going to come back and
check this after we have created our
calculated column and saved the
file so now let's start creating new
calculated column I have told you about
the table tools once you click on a
table you get table tool new column
option but the option is also available
in the column tool if you click on any
of the column you will get column tools
and in column tools also you have option
for new column or right click on any of
the table the second option is new
column right click on any column third
option is a new column using any of
these options go ahead and create a new
column
in the formula bar above you can see the
column
creation so you can see now the formula
bar where we can create the new column
let me go ahead and increase its size I
have press control and used the rolling
of the middle Mouse button to increase
the size now I got the column it has two
parts left hand side is where we I'm
going to give the name and right hand
side where I'm going to give the formula
these line numbers are not going to play
any role powerbi is going to
automatically add that so the First
Column I want to create is gross amount
and what is gross amount it is
quantity and it starts suggesting you
can use that it's always better that you
take complete table name column name so
let me type down the table name sales
quantity star
sales price so we should always take
fully qualified names when we are
creating the columns so sales quantity
multip by sales price is the cross
amount as you can see in each and every
Row the data has been created and the
column values are visible in the table
view you can also see this column added
on the right hand side into the table
with an icon which is showing this is a
calculated
column now let's press commit here or
enter it will come out now let's go
ahead and create a new column you know
all the four options I can see column
tools open in front of me and I'll click
on new column there and add another
column the next column I want to add is
cogs
amount and cogs amount is nothing but
say is
quantity multip by
sales
cost now finding out a cost of item is a
really big challenge for some of the
organization if an organization can
achieve a cost measure nothing like that
and Cog is not just purchase price it's
purchase price plus rate plus inventory
carrying cost and any other cost you
wanted to load on the purchase price to
get the cost of the item various
organization develop various kind of
methods to arrive at the cost of the
item and that's from that we are
calculating cogs so that we can get
margin I would like to create another
column and again I'm going to use new
column from the column tool and that is
Discount amount now discount amount
column needs the calculated column gross
amount and I can type sales gross amount
to get the gross amount so table name
shown as a table name and sometime you
will show see the table name is coming
in single codes if the table name
contain white spaces or a reserved name
it will come in the single codes
otherwise it can come simply as a table
name and in the square bracket we have
the column name multiply it by sales
discount percentage and as the discount
percentage is absolute I need to divide
it by 100 it should become decimal
number so as you can see the data type
and let's talk about the column tool now
here in the column tool we can see the
name the data type the decimal number
the format which is generic and then we
can say it's amount we can use dollar
symbol or any other symbol percentage
comma separated we can change the
decimal place and number of decimal
place right now is auto similarly we can
use the summarization which is by
default sum for the numeric column if
you don't want to summarize it by
default we can use tone
summarize data category data category is
especially important when we use
geographical data I'll go ahead and show
it to you s by column is required when
let's say if I have column like month
here and I want to sort it on something
else I can use sort by column which is
not needed right now we will use it when
we create the date table before I go
ahead and create my Majors I would like
that if there is any renaming required
of the tables and column I should go
ahead and do that so as you can see in
the customer table there is no renaming
required geography table there is no
renaming required item table there is no
renaming required and sales table also
there is no renaming required but
for you
to explain it to you let me go ahead and
rename this column Quant Qi and I
already created calculated column on
that now I want it to rename so I can
double click and rename or I can right
click cck or rename let me call it q u a
n t t y
quantity and let me check the new
columns which I've created have they
taken up the correct column name or not
so the gross amount column has already
taken up the correct name same way I can
rename
my tables geography item and customer if
required column tool is the one place
where we can change these property the
another place where we can change the
properties is the model view and inside
the model view the properties we can
also change the properties and here we
can see the
properties like name we here we can I
can change the name then snow names
hidden if I want to hide data type
percentage format thousand separator yes
and no decimal places and in advance it
will show me sought by column name data
category and Su now I would like to
change the data categories would like to
show you example of data categories I
will go to City column I'll scroll down
and show you the data category and here
I'm going to call it as
City same way for State I will go ahead
and I will Define the data category as
state or Province it is not that this is
available here if you go to the report
view or the table view also you can go
to the state and inside the data
category of column tools also you can
Define the data
categories now we are done with the
renaming and the column creation we have
created our columns I would like to save
this file and see is there any
difference in the
size of our file so let me drag back the
folder and as you can see the size of
the file has
increased in this manner we can conclude
that calculated columns
are going to become part of the table
data they will be calculated at the load
time and will be saved inside the file
and going to increase the size of the
file they're also going to increase the
load time now we will understand the
major majors and then look at the
difference between majors and calculated
column the time has come that we should
go ahead and create Majors let me tell
you the definitions of the majors which
I plan to create the first major I want
to create is gross which is sum of gross
sales amount from the sales table second
major which I want to create is the cogs
sum of sales tables cogs amount another
major discount sum of sales tables
discount
amount then I'm going to use the
measures which are already created to
calculate net which is nothing but cross
minus
discount same way I'm going to create
margin which is nothing but net minus
cogs I will create two majors which
should be Majors only because they are
percentage measur
and they need to be calculated using
divide function which handles the divide
by
zero discount percentage equals to
divide discount by
gross and margin percentage equals to
divide margin by net so these are all
the measures I'm going to create so
let's go to the powerbi and create
these so now let's go ahead and quickly
create the measures and to create the
measures uh let me first go to the table
View and try to create a measure and can
I see the
calculation just like calculated column
in the table view so let me create my
first major to create that again I can
take the help from the table tool I have
an option for new
major also I have the same option in the
Home tab for new major also on the right
click of
a table or a right click of a column
similarly once you create a measure you
will also have an option to create a
major right now I'm going ahead with the
right click on a table and new
measure again in the case of measure we
will get this formula bar where left
hand side is the name and the right hand
side is the
formula this is what we call a measure
or a Dax measure because we are going to
use data analytics expression here to
create our measures so first measure
which we are going to create is
cross in the cross measure I'm going to
use the Dex function some some functions
can take one column name and the column
name which I want you to take here is
sales gross amount and this is the
reason I was adding amount at the end
because finally when I create a major it
should show me name only as
gross as you can see the gross major is
created in the sales table and I can see
the major icon but when I scroll into
the table it's not appearing inside the
table so Majors will not appear in the
table like calculated column second
thing is even if I click on the item
table and I I go ahead and
use new major and this time I'm using it
from table tool it would be able to
create a major so this time I'm going to
create C and CA equals to sum
of
tailes cogs
amount so I'm creating a major cogs
which is nothing but sum of cogs
amount and as you can see I'm able to
create this measure inside the item
table does it make any difference for me
let me go back to the report
view in the report View From The Bottom
near to the page one there is a plus
button I'm going to press that plus
button and add another page and in this
page and in this page from build a
visual let me add a table Visual and
check out what I'm getting to do that I
created a table visual enlarge it and
let me bring in brand from the item
table dragon drop onto this
visualization and bring in
Gross and
cogs and you can see both of them
working fine now without going back to
the table view I can continue to create
my Majors here so the next major which
I'm going to create is Discount major so
click on any of the table and say use
new measure from the table tool and name
is and let me enlarge
it
discount which is nothing but sum of
sales discount
amount the next major I would like to
create is net and then in the net majure
I would like to
create from the two existing Majors so
left hand side the name right hand side
cross the major and I don't need to
table name ideally speaking you should
not use table name when you are using
major because we can change the home
table of the majors and I'm going to
explain you that in a little bit of time
and then I can separate the discount and
I created a major which is net in the
same manner I can create a major margin
Again by clicking on new
major and you can press and enter or you
can press this commit button to commit
this formula the moment you click
outside it get automatically
saved now we would like to create two
measures which are division type and now
discount percentage which
is Discount divided by gross and margin
which is margin divided by net which is
actually the net margin are the division
type formulas and they cannot be created
as column as we have discussed when
taking our example division should
always be a measure now before I do that
let me show you how can I add that these
to the table so click on the table and
just simply click on the check boxes and
those will be added to the visualization
now let's create one more new major
again now I'm able to see the major tool
because right now the major is selected
and the major tool is canot
only do a job of
creation of a new major but it can do
the formatting also and right now right
now you can see the formatting is not
there but what I'm going to do is I want
to format multiple measures together
definitely I'm going to show you because
the formatting going to be compulsory
for the discount percentage from the
major tool but we will go to the data
model view and from there we will use
the properties to change them in one go
so let me click on a new major
again and this time I'll create a major
discount
percentage and I'm going to use a
function divide divide functions takes
three argument numerator denominator and
Alternate result so numerator is
Discount amount which is Discount major
I can directly use a major here and when
I'm using major it means sum of discount
amount denominator is gross which is sum
of gross amount so I'm using aggregated
one I don't want to use alternate result
what is the benefit of using this divide
function divide function will handle
divide by 0er so I don't have to bother
about it let me press enter or commit
and this will be committed and I can add
this to table user as you can see this
is coming as a ratio not as a percentage
just like your Excel you might have used
or if those of you not used go to the
major tool when you click on a major
major tool should be open and from there
you can mark it as a percentage column
by clicking on this percent icon it
should show a boundary here and this
boundary means it has been
selected as you can see we are able to
see percentage and now what I'm going to
do is a quick Copy pcee for creating the
margin percentage
major I can go here again click on item
or sales and from the table tools or
from the major tool whichever is visible
I can create new major and this time I'm
just going to paste the definition
margin percentage is equal to divide
margin by net enter and my Majors is
created so my base set of
measure using which I can explain you
the visualizations are created but as
you can see these measures are created
across various
tables and some of them are not
formatted what I'm going to do for that
so first let me solve the
formatting I have to indiv do if I go
here I have to individually do I can
can't select with the shift more than
one so for that I'll tell you go to the
model view and inside the model view
with the shift or control you can select
multiple measures so I'm selecting all
those amount kind of a
measures and let me uncheck the margin
percentage all the amount kind of
measures are selected first of all I can
change their home table right now I'm
not changing it I'll tell you the reason
later but
I will go here in the format and I can
call them general or currency let me
keep it General let me keep it thousand
separator and decimal places let me keep
it one for all of
them Advance uncategorized everything
should remain uncategorized let's go
ahead and check what is the difference
this action has made in the report view
so I'll click on the report view left
side and as you can see all of them got
formatted pretty well
here now left out is margin percentage
we can go back and do it from model view
or we can also do it from column tools
so we click on the margin
percentage and we can mark it as a
percentage format column from here now
it has become a percentage format two
decimal place by default we can change
it if required go back to the report
view add this into the
visualization and check out what we are
getting so we are getting a two decimal
place percentage
number so in this manner we can
modify the major properties using Major
Tool or the property pan in the data
model
view you might have noticed that the
till
now I
have increased the font when I was
creating the formulas of the formula
pane but I never changed the size of the
font of the table though it's a really
small font for recording and the reason
I was not doing is because I want to
handle it using
the
theme utilizing report themes allows for
comprehensive design alteration across
the
report this include adoption of color
schemes it's an implementation of fresh
visual Styles once a report theme is
applied it sets all default formatting
for every visual in your report ensuring
consistent and unified experience we
want to get a unified corporate
experience and the reason why I don't
prefer to change any font or color
without using a theme because once we
change it sometime it is really
difficult to apply themes on that and
that is the reason why in spite of
having a small font I have not changed
it now the theme which I'm going to
create is more suitable for the video
purpose but what you should do is if
you're doing a customer project or your
organizational project find out top 10
organizational
colors and using those top 10
organizational color and your
organizational font you should create
your theme let me tell you how to do
that go to the view tab on the top
and inside the view you have these
default
themes you can choose a starting point
like darker or
lighter based on your organization
preferences which is most nearest or you
can start with anyone let me choose this
third one once I choose that you can see
the fonts are still forther smaller I
can play around choose one which suits
best so I think this this accessable
city park is something which is more
suited to me and now I'm going to go
ahead and modify this if I further
scroll below I have options like browse
themes where I can browse the theme
theme Gallery I can go to the theme G
customize current theme to customize the
current theme which I'm going to use now
save the current theme to save it with a
name so that later on I can browse it
and how to create theme to go to the
documentation
so let me use customized current theme
option as of now and in this customized
current theme the first option which I
get is the name and the color where I
have the color now this team as a name I
can change this name if I want or I can
go ahead and choose some little bit
different colors so what I'm going to do
here is I'm going to choose a little bit
darker green for the first bar and let
me change this yellow color a little
bit there color seem fine negative
positive and neutral I'm seeing an
opportunity to change it little bit so
let me change the red green seems fine
neutral let me make it a little bit
different
blue and Divergent color I am fine with
that I go to the Advance now this is
really
important choose the
different elements of your visual like
XIs grid line text box color font what
are those in each categories for that
click on this learn
more and it's going to open a page for
you and in this page this is basically
the theme page which I'm also going to
provide to you if you scroll down little
bit below it is going to tell you if you
change the first level what is going to
change label background color trend line
color text box default color table and
Matrix values and total color data bar
access color card data labels these is
going to second level is going to change
light secondary level text classes label
color Legend label color exis label
color third level X is grid line cover
color table and Matrix grid color slicer
and header background color multi row
card outline color Etc fourth row legent
dimed color card category label color
multi- row card category label color
then background is going to change the
background color secondary background
color and table
accent there is more information also
given here how to set up themes and what
are the different components of that you
can take advantage of this particular
article I will also share the link of
this into the description let's go back
I don't want to change any of these as
of now I'll go to the next item which is
text and here I'm interested in so
everywhere I see a font I'm going to
increase It by Five Points now I don't
want to change the font family but I
have options to change it similarly I
can change the font color which I'm
currently not doing for title again I'm
going to make it little
bit larger 17 and let me change the
title color let me make it
blue make it a little bit darker blue
which is going to be very near to
Black cards and kpi again card is 45 is
to already pretty big so I'm not going
to change it tab headress I'm going to
make it as 70 and the reason I'm
increasing it by 5 pixel you might not
have to do that much is because I'm
recording a video and in that video I
would like these things to be visible
visuals background I don't want to
change if I want I can increase
transparency to
100% of the visual background so that
they take the background color it is
mostly useful when you have a background
which is of darker color so that you
make all your backgrounds as transparent
so that they can come on that particular
back ground and you don't have to set a
background for the visual but if you
don't want that transparency keep it 0%
borders borders are off but if you want
borders by default on the visualization
you can switch it on I don't want that
by default so I'm keeping it as off and
if you switch it on you can change the
color and you can also decide the
radius header header background color
border color
transparency uh if you want 100%
transparency you can use icon colors I'm
not going to change that I'm going to
keep it as is tool tip is the label text
color label text value drill text icon
and background color this is something
which these days we are going to use
white but if you remember earlier we
used to use little bit yellowish color
so I'm going to make the tool tip little
bit
yellowish page wallpaper transparency I
think I already changed transparency at
one place but I'm going to keep it as is
similarly P background transparency is
100% if you want you can make
transparency is zero so that it takes
the whatever is there on the background
let me leave it default as is filter
pane the filter pane which is being
given on the page on these things these
are going to apply the filter pane the
background color the transparency the
font and the icon colors the title font
I'm going to increase it to 17 header
font size I'm going to make it as
14 checkbox apply Color when you apply
something on checkbox you want to CH
that color it's right now the teal color
I'll continue with that available filter
cards color format filter cards haven't
been applied yet background is white
transparency is
0% font and color icon color it same and
I'm going to make it 14 in the font
filter applied card again I'm not going
to change anything there I'm just going
to change the
font size so I'm done with my changes
and let me apply and the moment I apply
it you can see the font size have
increased if I need further bigger font
I can go ahead and do it but it seems
good enough for me to use it as of
now now the next step is saving this
theme we will go back to the view again
open this theme portion go down and
press on save current
theme and let's call it as or
theme one
so the theme is saved how do we test
this so let me go ahead to the
files
open and I have saved one
file other than this end to end click on
it in the versions I'll open this end to
endend version till columns in this file
I'll add a visual and in that I'll try
to apply this theme so let me create a
visual quickly here
and let me go ahead and put a theme so
how do we do that go to
view down arrow key on the theme browse
the theme this time this time I'm
browsing the
theme in the data I have a theme 1. Json
I'm going to select that once I come
back and this theme is applied I get a
message
file successfully added I can press got
it and as you you can see the theme has
changed the font size and other things
would have also changed now as we
progress further into the visualization
we'll see impact of
those now we will learn how to enable
the dark mode we are going to look at
the settings to enable the dark mode
which has made its way to September 2024
release so let's jump on to the release
note first and this is powerbi set
September 2024 feature summary and if
you scroll down one of the first
announcement which you can see is that
you can now choose from a variety of
themes powerb desktop including the most
requested Dark theme you can personalize
your data visualization experience to
match your preferences and working
environment if you further scroll down
you will see IND the content in the
journal by popular demand dark mode is
now available on powerb desktop
and when you click on this you will see
how to enable it so you have to go to
options and settings Global reporting
setting and personalization so let me
showcase you that and while showcasing
we will take two kinds of file one which
is using a dark theme on the
visualization and one which is using
lighter theme in the visualization so
let me showcase my file to you this is
my first file which is using a white
theme
and this is my second file which is
using the darker theme and these are the
powerbi report themes now we would like
to change the overall desktop theme so
for that I'll go to file options and
settings below
options and click on options options
popup will open inside the options popup
inside the global go to report settings
and inside the report settings come down
inside the
personalization you have option dark
light use system setting so I'm going to
use dark here click on okay as you can
observe all the menu items the right
hand side data Pan the left hand side
pan everything is now using Dark theme
my model viewer is also showing the
darker theme now if I go to this file
now because I have applied on that file
maybe I have to open this file again let
me open this file again and this file is
already open but what I can do is
basically uh I can open it and you will
see this power bi desktop Opening screen
itself has changed now this file is
opening again and it has open on the
different window it will bring it in and
as you can observe that your powerbi
desktop is in the dark theme now
everything which belongs to power VA
desktop other than your reporting canvas
area which can have its own reporting
theme every everything is using do theme
so do theme has been applied here on all
the files globally you can look at the
data view all your tables all your icons
have changed these are your icons these
this is your table data view model view
already shown you Dex query view
Everything Has Changed to darker
them I opened a new file with the dark
one I have closed all my power ba
instances which were running before I
applied the Dark theme and I have opened
a blank new file with a dark theme where
I'm now going to open a blank report let
me click on the blank report and now
here I would like to get the data and I
can use a powerbi semantic model for
that let me bring in one semantic model
and we can use this calculation group
semantic model which I was using for
quite some time so the semantic model
has loaded into the powerbi and as you
can see all the UI you can observe they
have been adjusted with reference to
dark mode the model view is in the dark
mode the Dex squarey view is in the dark
mode and we can see all the uis are
perfectly fine with the dark mode so you
have seen that we have chosen the dark
mode and the impact of the dark mode is
mostly on the menu items it is not
related to your report theme if you want
to change your report theme basically
powerbi report you have to still have to
go to view and there you can go ahead
and choose use a dark theme and then
your report canvas will also use a
darker theme or whatever theme you have
selected so you can have your report
canvas theme or report theme which is
separate from your powerbi desktop
darker theme that is different from this
one so you can choose whatever theme you
still want for your reporting canvas or
your powerbi report so go ahead and
explore this dark mode we would like to
learn now how to create a table visual
before that let me tell you how to
rename a page so the page name is here
in the
bottom you can double click on that and
you can change it so I'm calling it as a
main page now near to that there is a
plus button and I'm going to create a
new page using that one so I'll click on
that and this is a new page and let me
double click on this one also and call
it as table because I'm going to create
a table visual on that to create a table
visual either from the Home tab insert
visualization I can use it or I have
already enabled the build visual in case
you are not seeing it you can enable it
using the view and then further by
clicking here on the build a visual so
you should be able to see this pain from
any of these places you can use the
table visual so in the build a visual
I'm going to click on the table
Visual and it will add a visual on the
page which which I'll click on the
visual and drag it down and make it
little bit
bigger once I've done that if I have
clicked on it I can see the check boxes
on the data pane which I can click to
bring in the data or if it is not
selected then I can drag and drop so let
me drag item brand either on the visual
that's First Option then let me drag
category inside the columns which is is
below the Builder visual
visuals and third option is because now
this visual is selected I can actually
go ahead and add some major by simply
clicking on them so you can drag it on
visual you can drag it on the columns or
you can check the check boxes and add
certain
things now what are the options
available here with the table visual so
let's have a look at the options of the
table visual ual so first we would like
to see the options inside the three dot
so in the three dot we have export data
option using which you can export the
data into a CSV
format on the three dots we have another
option to us table which is pretty much
applicable for all the visuals and it
will show as it as a table in case of
table visual it is already a table so
we'll continue to show it like that and
there is a button back to report which
which we can use come back to the report
this especially helpful when you have
multiple Visual and you want it to see
in table then the next one is remove we
can remove this which we don't want to
do automatically find cluster is an AI
option which we are going to explore
later then we have option Spotlight sort
by we can choose a sort by column like
brand category and cogs and the format
option right now you can already see the
format pin is open because this is how I
have set up my panes because of which
it's open if it is not open you can use
that option now let's go back to the
swort option let me say sort on brand
now you can see that it has been sort in
on brand on descending now I can go
ahead here again I will see the option
for ascending and descending and I can
click on sort
ascending right now it is sort
descending now table visual is one VIs
ual where we can have multiple sorts so
now it is already sorted if you want to
change here from here also you can click
and
change if you click
on the name of the brand you can see the
Sorting is changing now press the shift
button and now you can sort the category
but I don't want to sort category by
name I want to sort the category by
cross and let me click on it so what
does it do is by default for number it
sort by descending so it is sorted on
column one's brand and sort descending
on
Gross so first sorting was on brand and
second sorting is on the gross so double
sorting is possible you can have
multiple sorting using the shift button
now when you click on this because of
the on object interaction it is start
showing which property you can change if
I click here which property can change
if I click here
if I click on the header it started
showing the column header text so in
this manner the on object interactions
allow you to change the particular
Properties by clicking on that
particular set now let me click on the
table and let me take you through all
the visual properties one by one for the
table visual size and style is the first
property now you can see the height and
width is based on what I've created and
then the lock aspect ratio in case if I
use use the lock aspect ratio if I
resize the table it will maintain the
same ratio which I've taken currently
which I'm not not planning to do right
now horizontal and vertical is the
position it will change the moment I
move the table up and
down next comes the padding the padding
is from the top bottom so this is the
padding I can reduce it as per need
background right now the background is
on and there is a color I can go ahead
and change this
color and because the transparency is is
100% I have to reduce the transparency
to see the background color so the
background color is the color which is
behind the table I can increase little
bit of transparency to keep
it if I switch off the background
color there will be no background and I
will be able to see the page background
color I enable it again the next option
is visual border right now it is
disabled I can I can switch it on you
will be able to see a border now if you
click outside let me click inside it
and let me go ahead and and change the
rounded corner so that you can
understand what's happening there so now
you can see the rounded corners for this
table you can see a border as well as
the rounded
Corners in case you want a shadow you
can switch it on and it will start
showing the shadow you can decide the
shadow color and you can decide whether
it should be inside or outside and where
it should be it should be bottom bottom
right bottom left various options have
given which you can choose I would like
to keep it bottom right only that's the
most suitable option for a
shadow right now there is no title but I
can enable the title so let me enable
the title and I can double click here
and give the title so there are two
places where I can do it I can give a
title from here or I can double click
here in the title itself and I can give
a title so let me call it as
table
Visual and as you can see whatever I'm
typing here it is also appearing here in
the text the FX means I can use a majure
here so if I need a dynamic title I can
create a mejor and I can use inside it
right now it is using heading three I
can changes as per
need similarly I can use bold italic and
underline for it I can use a color
background color is right now nothing I
can choose it again I can use FX means
function means I can use measure and let
me showcase you at one place so if I
click FX here I I'm able to see field
value and I can choose what major I want
to display
here now there is a subtitle option
right now there is no subtitle which has
been used I can enable the subtitle and
now I get a subtitle option here again
either I can type it here or I can use a
majure using FX or I can type directly
here we prefer on object interaction we
like to write on the visual so let's
say
information for brand
and
category for subtitles again we can
choose text colors now right now this
text color is not matching so I'm going
to change it out then you can choose the
horizontal alignment right now it is
left aligned this one is little bit
darker I can make it middle align so it
will go into the middle and to match it
also I'll make the title also middle
align so both title and the subtitles
are now middle aligned text wrap if
there is a larger text we can use text
wrap so that it get into the next line
instead of cutting it
down then we have divider which is right
now not off I can enable it and you will
start seeing a divider between the
header and
the table area it is solid one pixel we
can increase the pixel to understand it
better ignore padding is on you if you
want you can disable that next is
spacing spacing is customize spacing is
off if you want you can customize the
spacing switch it on and let me reduce
the spacing and as I'm reducing the
spacing you can see the impact between
the below area and of the above area
next is style
resets now right now the style is
different fa and which is the Shaded
style if I choose none you can see the
difference what is happening in this
table and I'm going to use few of these
Styles and showcase you what all they
can do border header this is one style
which actually I'm liking a lot
alternating rows this also seems good
contrast alternating
rows flashy
colors border and flashy
colors bold and flashy
colors
bars
condensed I'll keep it to default right
now and based on this when you go to
some of the features like especially
when you want to color the rows you will
get that option of alternating colors
right now because it is by default
alternating color and you go to grid so
right now the horizontal grid lines are
on so these are the grid lines which you
could make a note of
it these are hor onal and these are
vertical so let me off and on let me
increase the size little bit you will be
able to differentiate similarly vertical
are off I can on it and if I increase
the size you can use grid lines vertical
and horizontal it's not looking so great
right now but to explain to you I have
to do those changes now I may choose a
different color also
next one is border and let me showcase
you right now if you notice there is no
border for this particular section of
the table but let me enable it me enable
top you can see the border on the top
here same way
bottom left right and let me increase
the width a little bit you will be able
to observe B on all the
sides next one is options there is a
rope adding which you can increase which
will increase the padding between the
lines I'm going to decrease that to zero
and Global font if you want to increase
the font but we don't want to disturb
the font we would like to continue with
the font from the
theme now comes the important which is
values now we want to play around the
values values is typically these these
These are called as
values now you can see that I have the
text color and the background color
alternate text color and Alternate
background color and this is because our
theme is alternating color and just to
explain it to you let me change the
color so that you're able to make sense
out of
it and then alternating text color let's
only change the the background
color let's change the text color now
again rep text in case the text taking
more place we can use rep text in of
cutting
down so these are the values which has
changed next comes the column
header in the column header again this
is the area which is going to be
impacted because of the column header
let's make the column header as bold
metallic and underline color I'm fine
with that background color white is also
fine and do I want to make them left
align or centrer align as this is a
generic one I don't want to use there
are better options available to handle
it based on each column so we are going
to use that option right now let's leave
it let's go to the next option Auto size
width now what happens
is if you can go ahead and resize these
columns but what would happen if you do
certain
changes this may get back to its
original size
because of the auto size width so let's
say you use a filter or a slicer and
this may come back to its original size
if I don't want it to come to original
size then what I'll do is I'll switch it
off so that once I fix this width it
should not resize and that's where we
can use Auto size width
off then the next option is for totals
total we have value
values and we can switch off the totals
we don't want the totals and if you
switch it on now do I want to call it
total or do you want to call it grand
total again static in
nature uh you don't have an option for
FX text color you can Define and
background color you can Define then
comes the most powerful option specific
columns now here what you can do is you
can choose each column and for that you
want to decide you want to change
something which should apply to header
apply to total or apply to values like
this is one common question which you
ask that for the discount column I want
everything to be same I would like to
apply to header apply to total and apply
to values what I want to do here is I
want a text color let's
say
orange and I want the alignment as left
so for the entire category
column you can see the text color is
orange and the alignment is left and
even for the alternate color it has
changed so this is when you want it to
do it for complete column there is no
background color we can actually go
ahead and give a background color and
you now you can see because we I have
given a background color it is not
following that
alternative so in this manner in case
case there is a
requirement that you wanted to have one
single column from top to bottom
following something you can do that or
you may would like to say now don't
apply it to values I'm fine with
alternating colors I'm now only applying
it to header and
total next comes the option of cell
elements now cell elements provide us
opportunities for conditional formatting
the advantage in the table visual is
that we can do it on all the
columns we have something known as
Matrix visual where we will not be able
to do it on rows and columns we don't
have a concept of rows and columns here
everything is a column here so we can do
it on all each and every column and just
for the Showcase purpose I'll show you
one conditional formatting on the
background but later on we will come
back and do a deep dip on the
conditional formatting let me explain
you how to use conditional formatting
with one base example so I'll click on
the background color and it
automatically opens a popup which we
call the conditional formatting popup it
has three Styles gradient Rule and field
value base I'm going to use the gradient
style as of now that's the easiest one
value only values and total means it
will apply to total total only it will
only happen to Total I'll use values
only right now count of brand typically
it needs a measure or a calculated
column so I'll prefer a measure which is
net here I'll choose that and it is from
lowest value red and highest value is
green I can add a middle color but those
things we will explore later and right
now I'm going to press okay
button to apply this and as you can see
the conditional formatting has been
applied here and we can see different
different background colors depending on
the net value we can explore font
condition formatting which will happen
on the font icon which will show icons
web URL which will show web
URL the next one is URL icon for this
you need to have a column which is
having URL and you can convert it into
icon it should not show the URL so we
will use this inside the Matrix visual
for that we are going to add a URL in
our item table image size in case you
are using an image then you can use the
image height and width the image size
will only be app cable when I have the
image right now I don't have image so we
will take back these URL icon and image
icon later we have certain images which
we wanted to show IND visuals and we'll
take this up later accessibility refer
to row non select brand category you can
use these options so these are the table
specific properties which we
have there are generic properties which
apply to each and every visual like
header icons so header icons are these
icons which you are seeing can disable
these header icons but they will not get
disabled here these icons will get
disabled in powerbi service so even if
you disable here these header icon
you'll continue to see they will get
disabled once you publish the file you
can decide the color for these icon
border Etc now you can decide what icon
you want like visual information visual
warning visual error drill down drop
down drill up these are generic options
right now you're not seeing all of these
options whatever is applicable for this
visual at that particular moment you are
seeing it
but again if you uncheck some of these
options like filter option if I uncheck
you will see that still the filter
option is there again this will be
hidden once we publish the
file you can use reset to default this
option is available at many places helps
you to get to reset to default tool tip
right now you're not able to see the
tool tip if you enable it you will start
seeing a tool tip here
and if you disable it the tool tip would
be completely
off alternate text while loading what
alternate text you wanted to show you
can also use FX option for that advanced
option is basically responsiveness and
maintain layer order which is off right
now these are the properties used by
table Visual and as you see we have done
quite a lot around it what we can do is
some of these things we can say reset to
default so one of the property I've done
is basically
the grid I have reset to default
similarly style preset reset to default
title is fine sizing and style is
fine reset to default the text
colors column headers reset to
default values reset to default specific
column reset to default and as you now
observe we are almost at the very
starting stage yes I'm leaving
ahead what I've have done as a
background color and the headers so I'm
keeping them as is but in this manner
you can revert few of the things to
deset to default it helps you for
experiment and come back to the initial
position so we have now learned how to
create a table visual to multiple
sorting and do various kind of
formatting on table
visual let's start creating a matrix
visual so I'll add another page for that
using the plus button at the bottom plus
button let me double click and rename
Matrix you can also right click and
rename if you want to delete you can
delete duplicate you can duplicate if
you want to hide now when you hide it
here it doesn't mean that it's going to
hide here it's just going to show you uh
that it will be hidden but it will be
hidden only in powerbi service in the
viewing mode now to add a matrix visual
again we can have option either for from
build a visual which I enabled from here
which was not visible or you from the
Home tab you have the insert
option The Matrix visual is lying
here if you can notice and in case of
the top it's lying here one of the two
places you can use I'll click on the
Matrix visual here on the build of
visual Pane and bring it little bit down
and and make it little a little bit
bigger now unlike table visual we have
some different options like row columns
and values and once we add that you will
be able to understand what I'm talking
about and metrix visual has quite a lot
of option for display also so first we
focus on the display related options and
then we go through the other properties
of the Matrix visual um quite a few
properties of the Matrix visual is
similar to table visual but this one
property which you will find missing
here is basically sorting on multiple
columns that's not available here the
Sorting automatically get adjusted when
you have multiple
rows either on the value or on the
categories so let me start creating a
matrix visual a very simple Matrix
visual I'll drag a brand it will group
The everything by brand and then I'll
bring in the major
the
values I can actually also bring a
quantity
column and as you can see there's a sum
of quantity but if I try to remove the
aggregation I don't have any
option but if you go to a table
Visual and you try to add a quantity
column let's say inside a table visual
as a column you you do have option of
aggregation don't summarize it means you
can group it by quantity but the option
is not available in Matrix values the
values has to be aggregated so that is
why there is no option for no
aggregation
here don't aggregate is not an
option let me cross
that now you can add multiple Majors if
you
like I check that
you have one row you can have multiple
rows the moment you have the multiple
rows you will start seeing the plus
button now it depends on you how you
want to use that the moment you have
more than one you start seeing the drill
icons you start seeing these buttons
also if you press a button it will only
explode that particular brand and it
will make it
bold and if you want to go up you can
close these
buttons or in even in the Open Stage you
can use this button which is known as
drill
up the second button and right now
because it's only the row where we have
the multiple columns that's why you are
seeing is later on we'll see that when
columns have multiple we can do the same
stuff on the columns also now the second
button is drill down now what does drill
down down button does is let's say right
now if I click on the brand one it
doesn't do anything the moment I press
this click on drill down and now if I
click here on the brand one you can see
the brand one is getting
filtered let
me use drill up and uncheck this option
the next one is next hery level what
does it do it doesn't drill down it
simply take me to the next hierachy
levels and as you can see the totals are
same what we had previously it means we
are just seeing the next level come back
to the top level you can use drill up if
there are more than one level same thing
you have to use multiple
times while the next level take us to
the next level means it's take us to the
next available level which is basically
in this case the next level is like
this going
down the expand adds the next
level if I right now I have only one
level but if I have more than one level
I have to use expand multiple times it
starts showing both of them and that's
the place new Option comes in so now you
have expanded it the display is like
this this display is known as stabbed
layout the options in The Matrix visual
has changed so once the metric visual
will finish I will showcase you the new
options which has come very
recently you go on the visual format now
I have already have a format pane open
if you don't have again you can enable
if it is visible here you have an option
here on the three dots for the format
Pane and again in the view tab you can
enable it if you scroll down inside the
row
headers if you scroll down the options
you will see stabbed layout now right
now it is on you can increase the
indentation
here
okay now the second option or the layout
which is if you switch it off the
stepped layout if you switch it
off then it will give you this kind of
look and
feel so this is non sted layout and
sometime we use this now there are plus
and minus icons you have option for that
one is definitely you can change the
color you can make them little bit
bigger if they are looking small and one
more thing you can switch them
off now we had a pretty good Advantage
when they have we could have pressed
this plus button and open it let's go up
and see what happens now if I click here
I don't have button I can't go there I
have to use the next level by either
using the drill down or by
expand now let's further play around
with the Matrix
visual before I go ahead and make it
little bit complex by adding column I
would like to show you one property
which actually will become little bit
complex once I have the columns and from
using that only I would like to switch
how would we add columns to this Matrix
visual so let me remove even categories
from
here now if I go to the values scroll
down
[Music]
I have this option switch values on row
group rather than
columns if you this is right now off if
you switch it on you start seeing your
measures on the row previously they were
on the column
here now I can completely
remove any kind of row and
column to have a kpi
look you've seen the row look or I can
only bring in data on
columns to have Majors on the
row and the data on
columns again I can have multiple things
on my
column and once I have more than one
thing I have options like drill down if
I click I'll go there drill
up go to the next
level drill up expand both of them are
available in case of expand here in the
column we don't have a stepped layout
it's always going to be like
that so now you have seen rows
separately you have seen column
separately and you have seen Majors on
the row time to bring Majors back on the
column because we are going to create a
pwot table kind of a structure by moving
the
brand here and I'll tell you a new
option to add the data I'll click add
data here and now I'm not dragging it
from the data pane I'm simply going it
and adding it from here only so now we
have a pwat structure where we have
brands on the row and
categories on the column and the majors
are also on the column and you can play
around take the measures on the
row I can further complicate it and to
do that complication let me bring
in
brand here and let me dra categories
little bit below and knowingly I've
taken brand and category columns here
because they have lesser number of
values number of headers are limited now
I'll go and add state in the
row and see also in the
row now you will notice a difference
here the difference is drill down now is
asking where you want to drill down on
columns or on
rows if I use column and I expand it
I'll see brand and category together if
I change it to
rows and I expand it now rows are
expanded in this manner I can create
really complex structure
using the Matrix visual let me add
customer name to the
rows and if I now further expand it has
a pretty complex
stru but you can see there are too many
totals out here I don't want so many
totals how do we control the totals you
have multiple totals on the columns
multiple totals on the
row so what we are going to do here is
now we go to the row sub
totals we can disable them if we disable
everything is disabled including the
grand
total and let me to check that out let's
drill up little bit let's make our task
easy we don't have a grand total also
let me enable
it we have a grand
total now what I'm going to do is I'm
going to enable par rle level and it's
all right now all are there now I can
choose
State further expand it now state is the
first
level States control your grand
total is the totals of state that's the
highest one isn't it after that if your
total is grand total
City controls the total which you look
at the state
level and names customer names will show
you the totals which you see at the city
level I can go
ahead and decide which sub total I want
to see so I can choose the RO level I
say state if I don't want to see grand
total I can
off and let's look at the impact by
going up you don't see it that let me
bend it now the city level is added and
I'll switch off the grand total at the
city level you don't see the state
subtotals coming out here now it's only
this one there's no State sub tootal
what happens if you will up we still see
it but when we expand it we don't see
the state sub total in this manner you
can control not only you can control
let's say you want to have the sub
totals you can give the sub total some
name I can call it
and where I want it bottom or top I
don't have a control at the individual
role level but if I go to all I do have
a control first what I want to call
Total as and I can use top it means
first the subtotals will come and then
the individual split will come we can't
change that at the individual
level if I expand further I do get an
option to control things at the name
level or the customer name
level so this is the manner you control
the row
subtotals now let's try to control the
column
subtotals little bit up the column we
right now have only two of them and we
can completely switch off the totals you
will get rid of all the totals here
including the grand total we may like to
have grand total not others so again we
can switch it on we say per column level
first of all let's look at the all level
what options we have so at all level we
have total we can rename it uh we have
the values option and if I go to the
Brand level I definitely will end up
disabling the ground total which I don't
want I want go to the category level and
there I disable it I can give a
different name also if I want so let me
disable it now there is no sub totals
you will only see a grand total at the
end
values is disabled at the individual
level we have options for column grand
total for colors and row ground totals
for colors and
font Now quickly have a look at the
properties of the Matrix which which we
can use so as usual the generic
properties of the header icons whatever
you want want to disable and as I
explained earlier these properties will
apply to powerbi service than here but
just for an example let's change the
color of the background so that you can
see where it can be border color is
white I'll going to make it black you
see the Border also transparency then
icons whatever icons we need again if I
uncheck it the impact would be there on
service right now there's no tool tip I
can enable it tool tip is of default or
report page right now report page is
auto means it's automatically creating
that but we can have a report page which
we will learn later
in the tool tip you can control the text
size label color Etc as per need
similarly the background color if you
would have remember we have set up this
background
color when we have done changes in
theme alternative text and advanced
options are very similar at the visual
level let's look at all the options
Styles and size and style very similar
to table visual padding again how how
much padding we want background we would
we can switch it off we don't need a
background visual border we don't need
Shadow we don't need if you want we can
have a
shadow title we can add a title we can
added a title and then we can add either
from here or on the top we can call it
as Matrix
visual
enter font color background color
alignment center alignment a subtitle we
would don't not like here divider I
don't think we like here same as the
table visual spacing again we can
increase the spacing same as table
visual style presets same as table
visual we can have different like bold
header and all those but I think I would
like to stay with
default again grid horizontal grid
vertical grid border and options
whatever we want to change same as table
visual values very similar because we
have alternating colors we have two
options just like table visual to have
multiple colors options switch values on
row we have already experimented but
here how does it look like you can see
it looks allog together
different now column header is something
which is basically for the column
headers and to make it bold and italic
to differentiate you can see these
things are getting chap
here then we can do the alignment right
now I'm going to leave that options Auto
size width again whenever we do some
kind of filtering we don't want to
change it and if you have specifically
go ahead and done something you don't
want it to change switch it off so that
it doesn't change when you do the
filtering of data row headers these are
our row headers again make them bold and
italic so that we can see it now when
you go up still they remain bold
when you go to the next level they are
bold and when you expand them they are
still the bold because now we have
forcefully made them
bold plus icon we have removed it let's
switch it on so that we get
collapsible property at the end options
we have already used the step layout and
non step layout lets now switch on the
step play out so you can see the
difference again column subtotals and
row sub total we've experiment column
grand total you can't control the grand
total enabling disabling you can only
change the color and the font R grand
total again font and colors or
background no control on enable disable
now specific column here what you will
see is when we talk about specific
column we are only talking about values
we are no more talking about row and
columns unlike table visual where we
talk about each and every column when
you talk about specific column you are
only talking about net but there are few
additional options here header subtotals
totals and values means they can apply
to subtotals and values so you can
change the properties like I can say
apply to header apply to total and I
just want to change one property which
is basically alignment let's say for the
net value and I want to make it right
align so you can observe that the net
has been aligned right
decimal place I can change the decimal
place at visual level let me make it
zero so now n don't show any decimal
place at the visual level same way
display unit can be for formatted at the
visual level I can show it in thousands
and when I show it in Thousand I may
like to have decimal places in this
manner at the visual level I can control
the display
units next it's cell elements it is
forther condition formatting and one of
the limitations of the conditional
formatting which we have in the Matrix
visual that it doesn't apply to rows and
columns we have an additional option
here for data bar and the data bar
option actually is there on the table
visual also but it only come for the
values when we go ahead and explore
the conditional formatting in details we
will see this option
also again URL icon we need to have some
data URL to use this and if the URL has
been used in column headers or rows then
also we can have an icon for that again
image size we once we add some images we
will be able to see this for that we
will need image
URL so these are the various properties
in The Matrix Visual and one of the most
powerful display which is available with
us is Matrix visual
while it doesn't have the double sorting
but when you sort on now this is one
question which is basically on the
sorting and this is
little topic which typically
misunderstood by Manny so when you do
the Sorting on state it will
automatically sort the category and
subcategory in the same order but you
can go ahead and sort it on City and
then based on the city sorting
automatically the state sorting would
happen but when you sort it by net which
net it is sorting it's the column ground
total because we have used the column so
it will going to sort on the column
ground total but if you don't have the
columns definitely it would be that
particular column sorting so if I go to
the visual level and remove my columns
and now if I'm doing the net sorting it
is actually sorting on net I can go
ahead and sort on margin and cross but
if I have columns they are sorting on
the ground total of the
column so let me bring only category so
that you can see see that grand totals
you can go and sort the grand totals you
can either sort on the columns which are
there on the rows or you can sort it on
the ground totals of the
values and then you have the sort
ascending and descending option which
you can
use same options in the three dots as
other visual export show data as table
remove
Spotlight this is Matrix visual for you
power ba is ever changing and every
month it keeps on giving you new and new
featur and same thing has happened
before I could have released the video
or the series we got few new features
some of them are already covered as part
of this video or the series and I would
like to Showcase you couple of features
which has been added into the Matrix
visual so let me go back to the file
where we have the Matrix Visual and this
was The Matrix visual we have created in
the past let me open the properties of
this Matrix visual I have already
clicked on the right hand side format
and because of that the format pan is
already open and I already have the
properties open in the properties under
the layout and style preset now we got
few more layout the layout which we used
to know as stabbed layout is now become
your compact layout so if you see right
now it is the compact layout and I can
extend it further and you can see the
values are stepped out and there you
have the indentation which has been
given so basically in the compact layout
you have indentation using that
indentation you can move around the
things little bit and this is the format
what we use to call as St layout other
than that also couple of formats have
been added so first format which is
outline format if you look at the
outline format and there you have this
like a format which is sted layout off
and the total is above you see the state
total the total is here at this place
and then you have these detail level
data totals first the subtotals and then
we have the data now in this layout you
have an additional option that is repeat
r
and this was the one of the feature
which you are asking for long we want
these values to repeat like a table
visual we don't want them like a pyot
table where the values are non-
repeating we want the repeating values
and here the values are repeating as you
can scroll down and see all the values
are repeating now totals on the top and
values are
repeating now let's go ahead and change
the format to next format which is
tabular in the tabular format you have
have the same option repeat row headers
which is right now on and you are seeing
that the headers are repeating and the
totals have actually moved down if you
scroll down wherever something is ending
then you get the
totals and here in the total also the
names are repeating now if you want to
close that repetition repeat row header
you can switch it off once you switch it
off it is very similar layout which we
used to get in tabbed layout off so now
these are the couple of layouts which
has been added one is very similar
similar to the old one which is compact
layout which is very similar to the step
layout and non-step layout we got
tabular format as well as the outline
format now the changes did not stop here
we got something known as blank rows
what happens let's look at this data now
let me go one step up here so that you
can easily understand that and let me
click on add blank row after these
subtotals you got a break you got a
blank row and this is something you were
asking for long that you know give us
some place where we have this break
where we have some separation between
the parent and child there should be
some empty rows which we wanted to
insert and that the same feature has
been given now there is a color which
you can also apply here so use the color
on that particular row so that you can
enhance the visibility of your visual so
now this visual will give you a
different look because you have a color
now in the color you can also use
transparency you want it a little bit
transparent so increase the transparency
then there is an option for Border also
here so click and then you will get a
border now you have a border position
like top then you have bottom only at
the top only at the bottom or you have
top and bottom both so right now it is
like to both top and bottom so we parall
lines then the color definitely you want
to have the color to that so you that
color of the Border then transparency of
the Border can also be there next is
width in case you want to have little
bit wider width you can use that in that
manner you will have different kind of
visual experience now you can see this
visual the same Matrix visual is now
looking a little bit different and this
is because of these new changes which
has been provided to us which is giving
us much better look and feel and right
now powerbi is fusing a lot on providing
you such a new feature your visual
experience so these are couple of
features which has been added in Matrix
visual very recently enhance your visual
experience the visual we want to learn
now is the bar visual so let me add
another page by using the new page
button at the bottom and I will use the
bar the bar visual is actually known as
clustered column bar or clustered bar
chart both are available in
the build a visual and in the Home tab
in
the insert option so let me start with
the clustered bar chart which
is also known as horizontal bar
chart let me start that now the options
you have here and some of you might be
surprised why I'm not getting a add
button here because after the December
customization I've choose for build a
visual and because of that the on object
interaction option of having the columns
here has shifted to this place which is
more classic look but I like that more
so I have opted for that now let's skip
the y axis now and in the y axis as I
can add the data directly I will go
ahead and add item
brand now
now second is x-axis where I will go
ahead and add a measure now here in case
of
the clustered bar chart the Y AIS is
basically categorical axis and XIs is
basically a numerical axis so here we
are getting the values on x-axis which
is
this and we are getting the categorical
values here on the Y AIS it can use
continuous values we will see example
when we put across a date column then it
can use continuous
values now let me duplicate this and
I'll also tell you how can you change a
chart type so when you click on this now
what you can do is you can go to Builder
visuals and you can click
on cluster column chart which is not
selected right now and it will become a
cluster column bar now in cluster column
bar the x-axis is brand because you are
seeing the branch on the horizontal axis
and you are seeing the numbers on y
AIS now let's further explore it what
else we can do now before I go to the
properties let me tell you few things
about this visual so we can have more
than one AIS similarly we can also have
Legends and we can also use small
multiples and Tool tip on this now tool
tip you can add additional column by
default you can see the tool tip is
on I can click on the format and start
seeing that now before I change any
properties let me show you one thing
which is column and under the column you
see the color and in the color this FX
option is there which means conditional
formatting is available and you have to
keep noting that down for what all cases
the conditional formatting is available
or not let me bring in one additional
major here which is other than net I'm
also taking in cross as you can see
inside the color now there is no
conditional formatting option which is
available in the columns we have each
series and for each series you can give
color but we don't have any option for
conditional formatting like if I go for
net I don't have FX option now same way
here you can see the conditional
formatting option but if I add a measure
I don't see a conditional formatting
option also here so conditional
formatting only along with one major now
let me remove the majure or even without
removing the mejor let me see can I put
a legend so I expand the item and from
there I try to drag Legend category as a
legend I'm not able to do so with two
measures you can't have Legend so let me
remove the
gross and let me now drag category so I
can
have the legend with one single major
only so if you have only one major then
only you can use leg Legend you cannot
have both couple of measur and legend in
the standard bar visuals it is
applicable for both bar and column bar
again you can see that I am not able to
see the FX option if I go to category
one you will be able to see that I'm not
getting an option for conditional
formatting now instead of bringing this
category onto the
legend I can also bring this category on
the x-axis
when you bring bring on this on
x-axis as you can see it is broken down
by brand and then by categories this
option where it start breaking down and
you can individually work with each bar
we need a little bit bigger visual for
that so let me adjust these two
visuals to have more
space now you can see brand little bit
better so brand category and Brand C we
have and this is coming because of one
of the properties and for that it's
already showing exclamation signs that
you have to reduce the font so if I
reduce the font of xaxis I can get the
better data here now you see this is
concatenated label off so by default is
this concatenated label off but if you
switch it on you will see that the brand
and the category are concatenated
together so if you want them to
concatenate together then you need that
option you can off for concatenated
label off that's a better option here
you can see this is the
default ordering which we
have brand one and then categories are
ordered now this will work only when you
have sorted it on
AIS brand and category if you sort it on
net this is not going to work out in the
same manner okay so now you can see the
brands have started repeating so this
from the three dots always use brand and
access and concatenated label off if you
need that now this option was previously
not available here but now this option
is also available here and I can go here
and pull in
category and why I'm not seeing it let
me expand it and you can see the same
option concatenated label off is
available here but as you can see the
data is pretty small it's not visible
now labels which are we are getting on
the y axis right now there is no option
here to other than reducing the font
size I can do making them horizontal and
again it is you know showing me the
message that it
is too bigger in the size not able to
display the complete
value
now let's focus on one of these charts
for other properties now when we learn
the conditional formatting in some time
what we going to do is we are going to
give one single color for a brand or if
you have a category below we will try to
give one single color for the category
and you can have multiple categories
means you can have multiple levels also
and it is not that uh you have to show
all these levels in one go just like we
have shown with the concatenated level
off you can do the same way drill up you
can do and then you can say Okay expand
or you can also use the drill down
option you can enable and you brand 10
and you drill down with the filter of
brand T now you might have feel that the
other visual is also getting filtered
and this happens because of interaction
between the visual every visual interact
with another visual unless we stop it so
we will learn that art little bit
later now this is our Visual and in this
visual we can either expand and have the
labels together or we can have one level
and then we can go to the next level
same way as Matrix we can go simply to
the next level come back up we can
expand have them together or we can use
the drill down functionality when we
click on the bar it goes to the next
level now let's look at the
properties size and style properties
under the size position we know because
of the size it is coming height and
width then from where we are starting
lock aspect ratio if I lock it if I
change the size then it will keep the
aspect ratio see I'm whatever I'm trying
it is keeping the aspect
ratio now padding uh padding is
basically the outside right now I think
one of the side it is zero so that's why
there is no padding coming
in but we can change it
like see net is just now look at where
the net
is okay so 6 pixel 10 5 pixel 2 pixel
the differences similarly the right hand
bar if I give the right hand side
padding so how much padding is going to
be how much padding on the top so we
almost end up utilizing background is
the background color so you can have
some color if you want on the background
and then you have to reduce the
transparency to see that
color visual borders again same as table
we are not going to experiment with this
Shadow same as a metrix and table we are
not going to experiment it title we have
already explored and by default it gives
a title and um then FX means we can give
a major in the title which we will learn
a little bit later we can make the title
Center and then also in inside the we
have subtitles if you want to give it
again subtitles you have the FX option
means you can use the measure
there divider uh between the title
subtitle and the rest of the area you
can use
divider now x-axis we have experimented
in the title there is something which
you might like to use you might want to
switch off the title so if in xaxis if
you see now there's no brand written
here
now let me go ahead and switch it on on
and you will notice now there is a brand
written if you switch off the title
again you can play around with the
properties of this one and the color now
the color of this one is how is it going
to change is it going to change on the
grand total value or is it on the brand
value each brand value that we will
experiment and see usually it only check
the grand total value again FX color
means I can use a conditional formatting
measure for that once we learn that we
will try to use that now we'll go to the
layout now minimum category width you
can play around and as you can see the
moment I increase the minimum category
width the bars are little bit
wider now we can go to the y- axis and
in the y- axis you have this option of
minimum and maximum so you can change
the range and you can also use measures
here means I can have a measure which
will decide my you know Min and Max so
right now you it is automatically
deciding it's starting from zero and and
it is going to 1 million so basically
the range is in millions okay but you
can decide from where it should start
and where it should end you can devise
Sun kind majors and the tip is when you
create such mejor find out the minimum
value of for the brand whatever you are
using here take just some 10% less than
that and same for the high value 5% 10%
above the value here less than the value
and here above than the value now
sometime what happens you have values
which are pretty small compared to other
values which are pretty large so you may
want to use logarithmic AIS so as you
can see these numbers now see almost
same this actually helps when you know
one value is pretty large and another
one is pretty small you can use logic
scale inot range again you want to move
that on the top the now we have the
smaller value on the top and the larger
value
below so smaller to bigger on the invert
site now comes the values for the
values you can see the y-axis values are
switch on and switch off pay
attention you can use FX means you can
use conditional formatting uh
display uh Auto right now I can use none
no formatting now you can see the
absolute value you can say Auto it means
it will follow the auto atically what it
get best million forcefully million
thousand forcefully thousand I Leave It
To None or I can even leave it to Auto
let it decide usually it is better to
keep Auto which axis position now Y axis
can come on the secondary y-axis side or
on the what you call as right hand side
title now you want to give a
title to
the Y axis now right now the title is
net let's give something else net
net value so now we have title as net
value again you can use the color using
conditional formatting uh show style
show units only show title only show
both so units is in millions show both
so we can say net value is in millions
and that is much better option if you
wanted to try out because what happens
in case you are using this Auto it is
always good that it shows you you know
if it is showing the values in K and
millions that's a good idea to have now
Legends are off right now but when we
use Legends we can play around with
small multiple again when we use small
multiple we'll use now grid lines is
something it is showing that you know we
have the horizontal grid line but
because of the color you might not be
able to see so let me make make it a
little bit darker now you can see the
horizontal grid now they are dotted you
can make them solid or you can make them
dashed what you want width you can
increase or decrease depending on the
require so this is you know a horizontal
grid
now Zoom slider is something uh which is
really important especially when you
have large number of rows or huge data
then it will help now let's invert the
AIS before we understand
that so both we bought on the same place
it's not that it's not going to work
with that but
by we usually have a habit of seeing the
things in a particular Manner and it is
helpful in that so on the y axis as you
can see there is a scrawler
and if I bring it down it is bringing in
the Valu so especially if you have huge
number of data points and some of the
data points you are not able to see the
values this can help now slider can have
a label slider label so once you on the
slider label you have a label on this
side so one is fixed label and one is
changing label now the one label is
changing and one is fixed so that is the
advantage slider tool tip so once you
scroll down now it will have a tool tip
also how it is moving down so these are
few things you can play around with the
slider again it depends on what kind of
use case you have now columns we are
seeing multiple categories but instead
of color still we are able to see FX now
always instead of having Legend always
try to have the
AIS multiple AES now you will ask now
even if if I expand I I see all of them
in the same color isn't it when I expand
you see all the categories or brand in
the same color but when I was using
Legend they come in multiple color so if
this category is in the legend you will
see them into multiple colors so I can
have color for category one Category 2
category three but I can't you switch
this color with my own choice of color
manually I can switch but I can't keep
it controlled means the movement you
doing some kind of filtering or there
are additional values this category one
may get a different color or category
two may get a different color or based
on the other operation it may change but
if you keep it here because this
conditional formatting is enabled and
also you can see it is little bit better
where it occupies the space and we will
be able to use conditional formatting to
color that so once we learn the
conditional formatting we'll color them
in different one and you'll find this is
a better option than using Legend
wherever you can avoid the Legend So use
multiple axis expanded concatenate label
of whenever you can avoid the legend we
will understand that little bit more
border as you can see the borders if you
have have the border for
the I change the Border color a little
bit so that we understand where the
color coming in so you can see the bars
of borders and you can have transparency
for the borders there are few features
which has been very recently added and
one of the feature is basically this
transparency so and I waited for the
border to come because when I make this
transparency is 100% you can see that
there is nothing visible and now if I go
ahead and check this match the column
color
it gives the matching color okay the
color was actually green it gives me
matching color but that is actually
transparent and what I can do is I can
make it also 100% transparent so right
now there are bars but they are not
visible see I can see the tool tip
because of the bar but I don't see now
because of that there are multiple
things you can create so moment I think
I use the transparency a little bit I
will be able to see the bar similarly
for this one I can use a little bit of
transparency to give that transparency
kind of effect now the inner bar is
little bit transparent and the border
is border is not at all transparent
gives a different kind of look now both
are completely not transparent they look
into the this one so these kind of
combinations of having the
transparency and having this border
match color or border of its own color
can give you this combination you can
hide it so purpose of transparency we
can decide based on the what we are
going to do but anyway the transparency
if you look at it and but let's do one
thing let's call it as uh bar
one let's duplicate this page right
click and duplicate because this is a
newly released features and let's have a
look at it so now you can able to see in
a much better manner how does uh this
behave
so this transparency and Border um you
can see the advantage of those things
here now similarly you have the layout
now in the layout when you went here the
reverse order sought by value and
spacing between the category now spacing
between the categories is something if
you increase that as you can see is
increasing and so max width has one play
with us Max width was there uh which was
actually allowing you to do something
now again this is the second one where
space between the categories is allowing
you you know have smaller
bars now this reverse order and sort by
value is something which is not
applicable on this this is actually for
stagged bar chart and this is really
good property when I come to the stagged
bar chart I'll explain you so let me
increase a little bit width because
that's too
small and also I'm going to make this
border as none because I want the bar to
take the WID but I'm telling you with
bother it was looking much better I can
make it as a one pixel
okay now let's come down now data label
again something got added in December
data label is there for a few months now
but in December we have some enhancement
inside the data label so first of all
the position is horizontal I can make it
vertical so now this is one thing
overflow text I allow it means if even
if there is a chances we need to
overflow the text means overflow of text
means if it is not sufficiently coming
let's say if I do the position as right
now the position is AO I say inside and
now bar is very small See This Bar is
very small then it is Overflow now if I
switch off the Overflow if I highlight
here you can see the values are not
appearing here because right now what I
have done here is I have switch off the
Overflow text but if I enable this
overflow text you will be able to see
this value so this is the advantage of
overflow but keep it auto that it takes
some place right now it is outside but
if you want there are need like I really
want it outside only and optimize label
display is another thing where you know
you can have if you check that you have
the maximum width which you wanted to
give you can control that now new thing
which is now inside the data label which
allows me to now show
the title now what is this title the
title is basically the net and where the
title should come same as series name or
custom I want to give some other title
then I can add a title and You by adding
this title maybe I want to add the
category as a title let's let me drag
the category as a title
showing first category let me do one
thing let me go ahead go to x-axis and
completely disable
ex okay now I have a category and value
and you will say this is looking too
busy and let me only make it as a
category
visual so now what's happening there's a
category and there's a
value
so now let's go to the position we can
see
now so now we only I removed the brand
now only we have a category and the
value first category now first category
or last category doesn't matter because
because of the row context going to come
that we have transparencies means we can
make it little bit transparent we have
the color we can choose a color means I
can have a different color for the
category and the different this one so
now what is happening there is nothing
written here on the x-axis everything is
written there and now position is
something which we can decide where you
know the opt we can say okay inside and
or we can say inside base now everything
is written here inside base and because
I have chosen a color black that's why
it is coming so now we are getting title
along with this one
furthermore when you go down this is the
actual value the net value which is
getting displayed in the label what all
I wanted to play around with that and if
I go down here we have the display unit
which I can control I can say none so it
start showing the value now I even don't
need the y- axis actually
now I can go ahead and completely switch
off my ixis because I have the values
display unit decimal place Auto Show
blank as zero or show blank as hyphen
like if there is a blank value I can say
here show as hyphen which is previously
not possible now these are the
enhancement which has came recently and
some of them came as recent as December
now detail label is something which came
very recently in December 20 23 now I
can add one more label so I'm already
using category and net with that
and let me bring in Gross value also
here in this one so now I'm seeing gross
along with
that and then I can decide the font I
can decide the color you say okay let's
differentiate it with a different little
bit different color maybe this is my
gross transparency and formatting is
none decimal place Auto we want to give
a background to this switch on the
background and then we can decide what
one want the color and what is the
transparency we want
let's go to the layout
multi-line single line when I go to the
single line what I can do here is let I
don't want details to be there let me
switch off the detail now look it's
looking
much cleaner approach to have this and
and definitely we can play around with
the colors so now what is happening this
is something you would have wanted in
the past that you have the
categories and their label and I'm going
to convert this into all to a different
visual now let me go up and we we we
were playing around with the colors if
you remember let me create the
transparency now this is only Inside the
Box me switch off the
borders I'm only displaying the
values let me bring in the brand
back brand is low
okay now here in the label we can't
direct two we can't direct to otherwise
we could have done the brand but in this
case now what we can have here
is we can go ahead and enable
our
values so I have done few adjustment and
you can see the values now you may white
like to have you you know both brand and
category then how would you get that
brand and category values to you might
have that question in your mind like you
know when I'm adding this U title giving
me first category I'll tell you a very
simple mejor so I'll go to the item
Dimension I click on it and I create a
major and this major is going to work
when you have both of them together okay
so we'll call it brand at
label and this is nothing but Max of
item brand if you remember we were
taking first category item
brand then we say m per to give us space
m% space m per Max of item category what
would happen because item and category
are already in the AIS actually we don't
want to display them and I let me give
additional space Also here and maybe I
can give a hyph because I know I'm going
to display the value now I can instead
of this one I can bring in this
one what kind of label I created brand
category label Max of item brand and Max
of item category you will see how will
it work see item when the brand one is
in the my context brand one can only be
the maximum value and category one is in
the this row context so category one can
also be the maximum value in this manner
you can get these values and now you can
play around all these values and
everything now it can create all
together a different kind of visual
where you are only displaying the
visuals like values like this so these
are all the experiment which you can do
or I can reduce the little bit of
transparency to see these values and I
can play around with so lot of
combinations are possible just because
of this properties of transparency and
the data label customization which has
been enhanced over last few months so
you have lot of flexibility how you want
to display your bar visual stagged
visual wherever this is applicable now
plot and area background if you want to
image in the background then you can use
it then again you can decide the image
fit and transparency reference line is
something really important now what
happens sometime is basically you want
to plot a reference
line basically a line which is going to
give you a reference so I can add a line
now it asks me to choose a line so right
now I would I can choose a constant line
or I can simply choose an average line
so I prefer to choose an average line as
you can see this is my average across
all the values based on what net because
right now I'm only using using net now
the line properties you can change color
let me make it
black and transparency is transparency
0% so that is visible instead of Dash
let me make it solid position in front
or behind sometime you want it behind so
that it does not cross the bar from the
top
now focus on this location you are able
to see that white color iPhone above it
now I'll go and move it in front and now
you will observe
that that when it is in front you will
not be able to see that quite
complete what I've have done is I have
reset my data labels to default by using
the default reset to default and now so
that I can show you the reference line
and uh because there are too many
overlapping labels it was not able to
show and the one thing which I enabled
is now I've enabled the data label now
it is showing where should I show left
or right I can decide the position
whether I should show it here or here I
can decide the
position above or below under or below
again
positioning a style name or both data
value name or both I both average line
value display unit I can set to none and
decimal places auto before I take the
next step let me do one thing let me uh
remove some of the features which are
not required right now let me rename
this page to Bar two let me now explore
error
bars now error bar is on the series is
net right now error bar enabled by field
or by percentage so I used by percentage
and upper and lower bound I can set now
bars on or off I can use but definitely
I want the bars I can set the bar color
I can increase the width it little bit
uh marker shape I can
decide marker size size I can decide
border and color I can decide error
labels if I want I can enable the error
labels so it will show me how much error
label it is label from absolute or
relative numeric position or relative
percentage relative numeric we can do or
we can try relative
percentage and then finally we have a
tool tip right now which is on the tool
tip here what we are talking about is
the error bar tool tip if you switch it
off it will not show the error bar
information but this is not the overall
tool tip so basically if you go here now
it is showing the error Bar upper and
lower bound if you switch it off it will
not show it but this is only related to
the error bar the it is not the overall
tool tip the overall tool tip is
available under the property
pin now I'll switch off the error
bars so now we are done with our
properties now we can go to the generic
properties header icon same as other
visuals tool tip we right now able to
see the tool tip we can switch it off
there would be no tool
tip alternative text and alternative
options responsive and there is so much
you have for the clustered bar and same
can also be applied for the bar
visual there are multiple options
possible to display this chart using you
know xais y AIS Legends a small multiple
you can also add additional item on the
tool tip if you want let's say I want to
add gross I want to add discount for
that the tool tip need to be enabled so
if the tool tip is off you will not be
able to see but once you enable it you
will be able to see the tool tip now the
next thing what we wanted to do is we
would like to
explore few more Visual and then we
would like to come back to the small
multiple so let's try to create a
stagged bar visual now for that again
I'm adding a new page let me call it as
stagged we have two kind of stagged bar
visual one is known as stag bar chart
second one is known as stack column
chart I'll start with the stack column
chart and then later on I'll show you by
changing it to the bar chart properties
would always remain same now the stagged
bar chart the it will become a stagged
only when you use the legend before
using Legend it is going to be acting as
a single bar now once we use the legend
uh there is no option for having
conditional formatting um so as of now
when I'm recording this video there's no
option of doing a conditional formatting
and forcing is even by using alter rate
now in few visuals we will see once we
Deep dive into the conditional
formatting we will see that there are
alternatives where we can get little bit
of conditional formatting in some visual
but this visual is where we will not get
it means you can manually change the bar
color but not conditionally me you can't
have a major which can change your color
based on let's say this category should
look always red so that kind of stuff
you'll not be able to do so let's start
with it and there are a few new feature
which came in December 2023 and we'll
expl explore that and they are the
feature you were looking for it and I'll
tell you the advantage of some of those
so we'll start with brand which is on we
are going to put on the xaxis and then
we can have the y axis where we can have
value and I'm going to take net for that
and then we can have the category on the
legend this constitute
our te chart now while rest of the
property like size title xxs will remain
same and this concatenate label we have
seen in the bar visual how to use that
means
uh when you have more than one thing on
x-axis you can use it title layout Y
axis all these properties are going to
remain same you have the values of
display title Legends is compulsory for
you now because we the Legends are
compulsory in this one so let's
understand the legend positioning so
right now there are legends are on the
top left here this position we are
having here we can say it is top Center
they have changed the position to the
center top Center position now we can
move it around with let's say top
right and the one which I wanted to show
is center right comes here now depending
on the need we can place it but I think
as of now
either bottom center or top Center is a
better choice for us because we have
7even eight values and we would like the
width to be given now small multiples is
something which we are going to play
around little bit later grid lines if
you want to show the grid lines you can
have the grid lines on uh right now I
can the only thing I can do is I can
increase the grid Lines by a little bit
width and I can give them different
color so it's visible so I can have the
grid lines a zoom slider I already
explained you if you enable it you will
be able to zoom on the
excess so what I want to play around is
in the columns and in the columns as
usual the series is has to be um as
because it's um stacked bar chart using
Legend So individually you can change
the color of the series there is no FX
button right now you can use but there
are a few new feature came in here also
now one is transparency I can increase
the transparency here now I can have a
border I I kept I'll keep really thin
border here match the color I'll use
here uh transparency of the Border I'll
not keep very high let let it be there
and withd I would like to keep little
bit finer width only let me have two
pixels so that you can observe it now
before I explain you this reverse order
and sought by I'll tell you what was the
disadvantage previously what we have and
what it actually addressed here before
that let me show you spacing between the
categories so as you can see the width
of the bar is getting changed when I'm
doing that and the spacing between the
series now now this is something really
important it only happened between the
Legends so as you can see the moment I'm
increasing it is changing the width
between the
serieses so right now it is 3 pixel Max
I can have 5 pixel and then series
explosion note down what is happening
right now look at the
chart this is my area and what
happens it actually removes your y-axis
and allow it to go beyond the values
what it had now if you do such kind of
stuff definitely the labels is only
going to be the saor and yes powerbi has
enounced the label also again in
December
we the labels have been in us but right
now what I'm going to do is I'm going to
decrease the space between the series
I'll keep it minimal I'll also remove
the series
explosion now let me explain you what
this reverse order and sort by order
let's first understand what kind of
sorting we have in the dots three dots
so I made the adj just little chart so
if you go on the sort AIS you can either
sort on brand on N it's already sorted
on net I can maximum do is s on brand
now I sorted it on brand and then
internally it is sorted on category but
what you are asking for long is this
sorting you also want it based on the
values so this is the Sorting option you
have now they are sorted on values you
can see this is smaller this is bigger
this is smaller this is this is smaller
bigger bigger biger now if I say reverse
order the bigger would be down and the
smaller would be
up I'll further go down and what I'll do
is I'll go and say sort XIs on
net so now this is what you always
wanted from powerbi and now after
December 2023 it has been enabled the
value this value is the greatest value
largest
value so this is the largest value and
the values are again s descending inside
the stagged bar visual data label again
going to play a role because data label
we have seen in the bar how new
enhancement is going to help us out but
the moment I enabled you get this one
part of it now horizontal or vertical
I'll can make it vertical here overflow
text I can allow so that I can have more
I can add the title so I'll add the
categories here and overflow text is
helping me out here I can have series
name or custom if I want to have a label
let me keep it as series name now next
is value which I would like to keep net
though I have an option to change that
also I can go and make a gross value to
appear here
but I don't want that isn't it or let me
show you some percentage value let's say
margin percentage I'm showing a margin
percentage here and the formatting is
going to play the role so I'm not going
to say none so that I see the correct
value okay because otherwise it will
take the format of the original major so
let me go back to the net
value and I'll say Auto format because
otherwise the too much data here now
decimal place is Auto Now details is
something where I can add and this would
be especially helpful for those of you
want to like to show the percentage of
subtotal
here now right now you don't know how to
create that percentage of subtotal or
percentage of total I'm going to give
you a major and and we're going to
achieve that because the moment I enable
it it allows me to have that
gross and I can see that another measure
but I I don't need that measure I
actually want the percentage of
sub total now percentage of sub tootal
is something which I have not taught you
till now but what I'm going to do is I'm
going to give you a quick major here and
I'll tell you how to create that major
later so let me click on the majors
which is Drive majors and on that top of
that I'll click measure and create a
measure here which is percent
of brand what is my percentage of brand
is
divide net and when I want to divide the
net I want to calculate the net again
and this I'm going to explain you later
when we will show you how to create the
measur I want to calculate the net again
but this time when I'm calculating the
net I don't want to consider the filter
of category I want to consider the
filter of brand but I don't want to
consider so there is something known as
remove filters item category I'm saying
the remove the filter of the category so
what would happen while the net is for
that brand category
the denominator would not have the
category filter now this is a percentage
column so I have to mark it as a
percentage
also now I got a measure which is
percentage of brand and let me place
that and I have to go ahead and change
its data type as none and as you can see
this is 78% this is 16% now font is
something which we have to really play
around so and it's not only the one font
which I have to do I I'll make it
smaller for all of
them let me make it smaller for title
also so now you can
see uh that uh we have all these and now
you have the transparency and all those
play around with everything show blank
value as
Hyun then colors of each of these you
can
control if you want a background you
will have a background also and
background transparency you can decide
how much transp you want but the moment
you put background it because it take
additional space so some of the values
may go away and definitely you need to
make sure that um overflow is there so
that whatever maximum it can accumulate
it can accumulate and now I can make it
horizontal also sometime it may actually
look now depend if I don't want to use
title series name may be horizontal
looks much better so I think in this
case if I don't want to have those
titles and definitely because category I
already have a label I know which
category it is so in this manner I can
have it now the next thing which is
which I go down
here the layout which is multi-line I
can have a single line now I'll tell you
where you need single line so let me
duplicate this page and tell you where
you'll need it so let me duplicate and
let me call it
tagged
one and let me click on the visual and
make
it tagged bar now here if I
go I go down to the labels and this is
the place where I need it as single
line instead of multi-line I'll make it
a single line there is definitely
there's a difference which is very less
which you can adjust by giving different
colors or making it bold or italic so it
shows the differentiation between them
but this is something so the
sorting and the absolute value as well
as the percentage value is something
which was missing
altoe and which has been enabled in the
latest version of powerbi which is
December 2023 on which I'm recording and
now you can see how much difference it
creates now this visual is lock looking
all together different Visual and those
of you who has watched my video on
stagged bar in the past in the beginner
series those of you who has watched it
in the last here's full video go ahead
and compare that how much
differentiation it is created
so these are the property of the stagged
bar which we have played around so I'm
coming back to the first one again let
me click on it and let's see if we want
to explore some other properties also so
total labels is something again we want
to switch it on now total label is
basically the total which is and now we
have two more kind of stacked bar which
is 100% in the 100% it doesn't matter
okay the total only matters in this one
because how much is this total and how
much I'm percentage so 1.1 million is my
total and of that 1.1 million I am
around 68 million which is around 62
percentage and then again there are few
properties like you would like to have
you know color or a
background I switched on the background
then you can have a background color and
transparency right now it is auto
display you can say none if you want to
show the complete value or
thousands and split positive and
negative this one more option has been
given here so these are various
formatting options which can make it U
you know really look amazing and then we
have the if want image then we can have
plot background area and again you can
add reference lines plus button
reference line the only reference line
option we have in the stack bar is a
constant line so you can add a constant
line you can give a value now based on
the fil filtering the value will change
so better you use this FX button and
give a
major but right now just for our
understanding purpose I will give
it let's say
500,000 I got a line at 500,000 and I
can give a color and all those so
various reference lines are available
and we can use those now depending on
the visual these reference line keep on
changing those who are on the last
year's version those who have not opted
for these new changes there used to be a
separate section analytical pain and
inside that these options would be there
now these has been merged analytical
pain options have been merged inside the
visual properties only and then you have
the generic properties as usual they are
there as there are no differences I
would just leave them as is uh there is
nothing specific with the visual other
than you know you can switch in on or
switch off the tool tipe but a beautiful
tagged chart Visual and even the cluster
bar visual can be created ated with the
latest version of powerbi you have
learned about this stagged bar Visual
and it's 100% stagged bar visual there
is one more way these bar visuals can be
created so let me tell you so what we
can do is basically let's start with a
that column bar let me bring in brand
here on the
x-axis now what I can do here is and
what I said that you know staged is not
an staged unless you use Legend but
there is another possibility and what
that possibility is I can bring in
net as one of the major and I can bring
in margin so what is my net and margin
is my gross so this is basically my
gross and in this manner also I can
create a tagged bar
visual now definitely I can enable the
data label where I can get the values
and now if you have your margin
percentage and uh the net percentage
that could be another way to add few
more labels here but a stagged bar
visual can be created on two majors also
so if you don't want to use Legend
then you can create it on multiple
measures so either you can have multiple
measures or you can have Legend the
thing to remember here also is when you
use multiple measure also there is no
conditional formatting possible so in
case of staged you will not be able to
do the conditional formatting now one
more thing which we can do here is if
you want to make it 100% tagged column
chart you go here and it will start
showing you the percentage so these are
actually the percentage how much of the
gross the net is and how much the margin
is so so how much percentage the margin
is out of my gross and how much is net
so there are two options you can create
a stack B visual One is using the legend
and one is using multiple measur now I
can have more than one measure also so I
can actually can bring in cogs when I
bring in cogs basically net doesn't have
a value in that case I should have cost
discount and margin maybe these three
will contribute to
that in this manner I can bring in my
100% column stagged bar visual or tagged
column bar visual or tagged bar visual
or 100%
stagged bar Vis do so in this manner I
can have multiple such combinations with
more than one major also we would also
like to explore the 100% staged bar
visual so let me add a new page and let
me say 100p tag now again there would be
two versions one is basically the 100%
stack bar chart and 100% stack column
chart bar as well as column let me use
the
column and on the x-axis my favorite
brand on the y axis net and definitely
no stack is completed without a legend
need to add a legend and let me add as
category now rest of the things are same
but let's just quickly have a look at
xaxis do we have something additional no
Y axis do we have something additional
no Legend as usual the positions uh
small multiples we are not exploring
right now grid lines column let's comes
to the column and in the column we have
all the serieses where we can choose the
color border if you want to switch in on
the borders then we have the
layout and again this layout would be
more suitable we want it to have s by
values and reverse order we want the
highest value at the bottom and the
lowest value at the top space between
the
categories uh and space between the
series is something we are more
interested in it looks much
more flexible and maybe a little bit of
transparency in the color let's go down
to the data label again let's see what
all we have now so first thing is
series uh horizontal or vertical here we
can have it vertical uh position is auto
I prefer that overflow text let's allow
it so we can have I think horizontal
would be better here isn't it we could
get a value I was more worried about
this value which will go away in the
vertical horizontal is much better
option here I want to add a title and I
while I can showcase you what happens
when I add the title but this something
I'm not interested in as long as I have
the legend label but yeah value now here
it is always already a percentage so I
can add the
net now once I add the net it is
something which is uh not looking great
so let me go ahead and choose something
here I remove the decimal places and let
me make it a little bit smaller so now I
can see the net value here so net value
and how much percentage it is and what
is happening here seems like detail and
this value are changing automatically
along together they should have been
separate but seems like some issue and I
can make it tyun when it is not
zero let's give a little bit of
background so now what is happening both
the visuals the 100% stacked bar visual
as well as the stack visual can show you
percentage as well as the value now it's
your choice which one you wanted to use
you want to choose the 100% stack bar
visual or you want to choose the
normal bar Visual and then want to show
percentage I told you how to get a
measure for that which we will learn
when we go to the percentage of total
later and then multi-line or single line
have single line but if you make it
single line then make it vertical that's
look much better but it's going to take
a lot of space so I'm going to make it
horizontal and multi-line that is much
better in this
one now if we duplicate
this on this and we change it to
100% tag bar chart there we can go ahead
and make this data label out as instead
of multi-line we can make it single line
now it looks better
here plot area and background same thing
again reference line same thing we want
to add then we have only one option
constant line we can add constant line
if you want a value let's say 0.5 50% is
the one where I wanted the value to be
appearing and in this manner we can 100%
stack bar visual again the uses of the
stack bar visual will depend on your us
whether you need 100% stacked bar visual
or simple stacked bar now going to
create the pi visual so let me add
another page and in this page uh from
the build visual I'm going to add the P
Visual and we have a very similar visual
donut visual also so at the end I'll
just show you the donut visual so let me
click on the pi visual now when you have
the pi visual the options you have is
the legend value details and Tool tip a
pi visual can be created with a set of
Majors or Legend plus major so I'll tell
you first how to create a pi visual only
with measures this is something which
you might need I'll create with the
cogs
discount and
margin
okay the cost of goods sold discount and
margin I've have taken three Majors so
basically what I can do is I can take
net discount and
margin in this manner I can create a p
visual which can tell me how much each
of these things are getting contributed
and you are getting percentage so only
with the help of major I can create this
is one way of creating a p visual let me
move it aside let me add another P
visual now we can have another Pi visual
which basically I'm going to use Legend
This Time so let me use Cate as a legend
and ideally speaking because there's no
scrolling you can have in the pi visual
you should use only Pi to 10 categories
Max 15 categories in the pi visual more
than that it's overloading of Pi so I
drag the category and now I can drag a
majure now values you should avoid using
percentage column in this one because it
is further going to calculate percentage
of total of that so that's not a great
idea to
have so Pi visual has been created with
Legend uh can we have more than one
Legend so let me also drag brand on top
of it and as soon as I add brand the one
is the drill down structure has came now
I can go to the next level it is brand
wise come up I can expand both brand and
category would be available here so this
is one manner second is this brand
instead of having it in the legend I can
have the brand in the details I can
click on add data instead of dragging
and dropping
it and I can have it here now in this
case you can see they are not getting uh
different colors there is a distribution
of brand is coming inside the same color
of the category in this manner also you
can create it so this is one way and
let's keep them side by side so that you
can differentiate so this is one way
where and I'm where you have it and let
me duplicate it so and this is the
second way where we actually have the
brand as the second legent and we expand
it and you have this and you expand it
so these are the two meths here
everything is going to get different
color and here we have the same color in
which the brand split is there and when
you use the tool tip you'll be able to
see now let's play with the label now so
if you see by by default the detail
label is on and if you see the detail
label right now it is showing data value
and percentage this is same true for
here but if you go here you can say all
the labels and here you will be able to
get the brand name also so which brand
is there so within the category which
brand is there now
a same way if you go here and if you
enable all labels then you will also get
the the name major name and the value
and the
percentage now we'll keep the simple
visual let's me create one more copy and
here let
me remove the brand here and as you can
see we can get category the value and
the percentage value and we have the
various options like only data value
only percentage of total value or only
category level or all the details and
then right now it is outside you can say
inside and now everything can come
inside so you can always use prefer
inside or prefer outside so you can say
prefer inside or you can say prefer
outside so it will try to adjust some of
the things to get more values now this
is the detail label and inside the
values again you have the font you have
the color which you want to use
background is auto if you want on or off
you can say background is
on then display units is auto you can
say use none now this is for the value
so basic Bally then you have the value
decimal places because if the value is
an auto format about how many decimal
places it need to have then percentage
decimal place value also you can control
now it is one decimal it is two decimal
so all those you can control now
depending on the space the label may
come little bit less or more and then
dot dot dot might start coming then
there is something which is also known
as rotation now rotation is basically if
you see right now it's starting from
this position let me highlight that for
you right now it is starting from this
position now if I do the rotation here
here the position starting position is
changing now you can see that it is
starting from here
now same way I can completely rotate it
and if I rotate it 360 it will come at
the same place so this SK can be helpful
from where you are starting now let's
look at the other properties uh we
similarly we have a size and this
horizontal position property padding is
something how much padding we have in
the space which is available inside the
chart background on or off we can switch
it on and off or if you need background
we can change the color or we can change
the transparency if we have the color we
can increase or decrease the
transparency based on that is visual
border if you want a border now if I
come out none of them has border only
this one has a
border Shadow if you need Title the
title is already there we can have a
title and then we can have a subtitle
then divider and spacing as usual same
as other visual Legends again we can
have the position top right top left and
Center depending on the place you have
you can adjust it because right now I
created a little bit rectangular so I do
have a position in the center left or
center right that I can use then the
title again the title is right now
category you can change it to whatever
you want or or you can disable the title
here then slices for each slices you
have the color again the P visual use
Legend So in the slices you have the
color which you can choose you can
manually go ahead and change it uh
conditional formatting is not supported
but I will tell you later that you know
there is a work around to support
initial formatting in pi visual now
detailed labels we only option we have
is the label is detailed label and we
have certain set of options which we can
use then value and percentage formatting
we have done so this is py visual for
you so uh you can create it with Majors
you can create with Majors Legends
multiple Legends Legends and details all
those thing you can try out and finally
you can also have a donut instead of
this one so you can have the donut
instead of having the pi Visual and the
properties are almost similar so we have
title Legends inside that we have
options slices detail label we can have
rotation now sometime what we do we keep
this as a transparent and behind that we
keep a value in a card Visual and we
start showing that value so it start
showing like there is a value in the
middle that we can do and if you want to
add something additional on the tool tip
let's say margin percentage you can add
it and you will be able to
see let's add margin percentage we have
added margin margin percentage I'm
adding so you can have n number of such
uh things on the tool tip which you want
and then as usual the generic properties
you can switch off the tool tip and it
will not show the tool
tip let's experiment with a new visual
the visual which I want to experiment is
the three map visual so I'm going to add
a new page and let me rename it as
threee map some of the pages I'm
renaming even after closing down the
video for that particular visual so you
might find that some of the pages has
been
renamed so I click on tree map now tree
map is kind of a horizontal P the only
thing is it doesn't show you the
percentage so we have a category but
unlike P we don't have a legend concept
here we have the concept of category
details and values so first let's start
with category so we can say brand is my
category and net is my
value and then we can enable the data
labels so it starts showing the values
if you go down in the data labels it is
showing what values it's showing so
value display is Auto and you can see
the values are out here can see these
values you can not it down here now and
make it none so that you can see it in
the default format similarly you can
play around with the other properties
like font face bold italic underlying
Etc to make the labels appear little bit
differently now let's say in case I
wanted to have more than one level I can
go ahead and add category also and then
we have that option like next level only
on category or we can expand it so we
have both brand and category and in this
case you will get different different
colors now going going to the color you
have option like FX here so at least so
whenever you are using the categories
you can color it means you have the
single category uh then you can have the
brand colors using using the conditional
formatting so you can control on that
but definitely when I'm going to use
detail will I get that option or not so
let me remove category from here and let
me add category on the
details so once I add the category on
the details now you can see the FX
option is no more available for you to
do the conditional formatting and the
brand itself is cut down into multiple
categories and I'm getting the option
for categories and the values now here
in this place because I have now place
where you know a lot of values are there
so it's better to have a you know Auto
display so that you know the display
becomes smaller or maybe we can reduce
the font also and category labels are
also there these are the category labels
and we can reduce the font of the
category label also so the uh category
as well as detail label will become a
little bit smaller if we use the
category label here that's controlled by
here and then we can choose the color or
we can leave it whatever it is so these
are the various option again if you want
to have additional information on tool
tip you can add it on the tool
tip then we have size title Legends as
usual so Legends are off but you can add
the Legends if like Legend is nothing
but your category display so here you
are seeing that but definitely the
position seems to be very important here
this not conveying much of the message
so left center right is place where I
can put it it taking little space but at
least I'm able to see all the labels so
legend legend have a title here
if you want to switch off the title you
can switch it off there's no title here
now then we have data label which we
already explained and the value label as
well as the category label which we have
already explained so this is our tree
map visual let's now explore the line
visual I'm adding a new page and let me
rename it as
line so line visual is given here in the
build Visual and it is also available
here on the top insert in the homepage
from any of the place we can use it CLI
click on the line visual it will give
you a line visual let me make it a
little bit
larger we can have x-axis y AIS and
secondary y-axis now we have not used
the combo visual where we can have
secondary yaxis but line visual has been
enhanced in the past to have secondary
yis but here now there are limitations
like when you can use secondary yaxis
but so when you have multiple measure
you might not be able to use it when you
have Legend you might not be able to use
it so we have to explore that out first
start with very simple visual now unlike
some of the tools which doesn't allow
you align the non-time series visuals
means it's always need to be a Time
series kind of a visual in power B
there's no limitation in powerb I can
create aine chart just like a bar chart
so let's say I can have brand on my
x-axis and I can bring in net on the Y
AIS and I can have a line visual which
is very simple and again if I need more
than one line I can have that but line
visual is definitely more suited for
Trend so let's bring in date for that
I'm removing that and from the sales
table I'm bringing in date now as you
can see right now date is showing an
hierarchy and this is what we call Auto
time intelligence because of the auto
time intelligence thing showing the
hierarchy so there was an option in the
starting if you remember was Auto time
intelligence which we have not disabled
if you disable that that will not come
also right now we have not created a
date table but when I going to create a
date table and I'm going to join these
with date table if they are joining with
a table which is having a date this
column again going to join with a key
column then it will lose the date
hierarchy
so in case you wanted to continue to use
date hierarchy you can duplicate if this
column you're planning to join so let me
bring in that into the x-axis and as you
can see it is showing me a date
hierarchy now if I want to keep date
hierarchy it's fine I I will see these
options like you know drill up and drill
down so it can start with ear and then I
can you know further go down by press
drill
down by going like this or and drill
up or I have option to
expand and finally at Day level this is
what I can do or I can click on this
Arrow instead of date hierarchy I can
use simply sve date when I use the sve
date you will see you are still seeing
the same value but now you don't have a
drill up or drill down option so that
option is not available with you you are
getting is a continuous visual now what
is this continuous visual now this
continuous visual is possible both in
case of bar as well as line now this
continuous access is coming in x-axis we
have a type continuous and categoric now
when you have a date or you have a
number you can get this option
categorical and continuous access also
get this minimum maximum range in terms
of dates also which we have seen in the
y axis in terms of value we have the
minimum maximum range in terms of the
date now I can make it categorical and
now you can see all the dates and now we
have to make the access a little bit
bigger or we can change the format of
the date so right now the format of the
date is like such a big format I can
make it as a short date now I can see
each and every date and now because
visual is too big powerb is
automatically giving me scrolling it
can't fit in you remember when it was
continuous it do try to fit it into the
single page I can make it continuous and
categoric now the option of continuous
categorical is limited to date and the
numbers right now you're saying this is
coming in the ascending order but you
can use this invert AIS it will actually
start it in ascending order actually
when you have the continuous AIS you
don't have an option option to sort it
on the using the three dots so you can
use this invert access option now you
can go to the values inside the values
the values are right now on on the
x-axis if you want to hide those xaxis
value you can use this now again the
display is Auto and then you have a
title you want to remove the x-axis
title now you don't see any sales date
here on the
bottom now there's a sales date
similarly for y axis you have minimum
maximum range logarithmic axis if you
need invert range if you want to invert
the range on the top and 70k this case
at the bottom the direction has
changed let me invert it again again the
values you want to show the values or
not you can switch off the X's you can
pay attention to the Y axis there's no
values now again want to display unit
and everything title again we have the Y
AIS title we can disable the title
secondary yaxis this is important now
let's see we have two measures does it
allow us the third measure on the
secondary Y axis I try to drag the
discount on the secondary axis
and as you can see we have the discount
on the secondary y-axis but when we have
a legend let's say I try to bring in
category now I can't bring category on
the legend I remove the secondary yaxis
and I try to bring category on the
legend I can't bring it I can only have
the category as a legend when I only
have the one major let me try the
category along with the one major I have
the now categories at the legend but can
I have a secondary y-axis when I'm using
Legend so let me try to bring in Gross
on the secondary axis I can't so the cas
is when you are using a category you
can't use the line on the secondary
yaxis while if you're using a combo
visual like clustered bar line visual or
cluster stack bar visual you would be
allowed a line in the secondary yaxis
along with Legend but that's not allowed
in the line visual so that's the
limitation but yes if you have multiple
measures uh you can still have one of
them on the secondary Y axis let's bring
in multiple measures and try to see what
all secondary yaxis has to offer to us
and I'm bringing in cogs on the
secondary y axis and in case it doesn't
show you the secondary ya axis sometime
it happen that it might not show you so
what you can do here is basically enable
the values of the secondary yaxis so you
I have added the secondary yaxis so you
will be able to show usually what
happens is we columns like margin
percentage on the secondary Y axis which
have all together different range so
they create a different meaning now this
could be a really complex chart if we do
those things things we should try to
keep them as simple as possible so I
have removed one of them now again
because this line AIS is continuous you
have a lot of information out here then
we have the Legends as I've shown you
you can either use Legends or secondary
ya Axis or multiple majors and then
small multiples we'll check it later now
in the Legends when you are showing uh
the Legends can also be for the major
display it's not only the legend we can
check their change their position so
right I moved them into the
center then the text font you can change
the title you can switch it on and
switch it off like add Legend title I
can say it's
net by
date small multiples options are not
enabled because we are not using small
multiples grid lines in case we wanted
to have grid lines can increase the
width of the grid lines as you can see
now I think we need to use little bit
darker color to make them visible
we can have the vertical grid lines if
we need again we need to have color
darker color so we can have vertical
grid lines also
here Zoom slider to zoom your xaxis and
y axis now these are both continuous
axis so in both the axes you can have
the zoom slider and as you go down you
will be able to see
the dates
here so this is the advantage of Zoom
slider especially in the continuous AIS
you will be able to see the exactly
going down to the drill down to the
level and as we have already seen on the
y-axis you actually goad and see the
values on the y- axis by going
down now secondary Y axis also if you
need so Zoom slider I can have on the
secondary yaxis also slicer label and
Tool tip is few things which you can
enable and based on that
it's as you can see now there are two
set of information one which I initially
had and one which is is changing
over so all these things you can use I
going to disable the zoom slider as of
now now for each lines you can have you
know what color you want and everything
again conditional formatting is not
supported but uh uh if you go to the
color you will see the margin and net
you can have the colors even if you use
the one major like right now I'm only
using one major on Y axis still there is
no conditional formatting enable but
instead of conditional formatting you
have a color dot which you can get and
that you can get when you come back from
the bar visual by doing the conditional
formatting on bar visual which we'll see
later now there is something really
really interesting you can have the
markers you can switch on the markers
here and you will start seeing markers
marker properties have been changed and
once we are done with the line and the
scatter visual I will showcase you those
now you can play around with the size of
the marker and you know the shape of the
marker but there are more things which
you can do here is basically what you
can do is you can go to your line style
and here like right now the line style
because there's too much of data if I
choose the line change the line style
linear or smooth or stabbed stab
actually you will not be able to
actually see what means stab layout but
what you can do here is you can decrease
that width and ultimately you can
actually make it zero it will become
like a DOT chart now what you can do is
instead of doing it for both the series
what you can do here is you can go to
let's say margin and margin I have a
line and and I don't have a line for
let's say net so there's no line for the
net but there is a line for margin in
this manner you can play around now you
can make it completely dot visual or you
can have a DOT and especially like if
the majors are very nearby I can have
line one of the line without marker so
what we can do is marker right now is
for all the series I can go to the
margin now because I have the line in
the margin and I can say show marker off
so now what is happening here is the
margin is only having the line and there
are Net series which is only having the
dot now this is the play around you can
do and this is especially going to be a
little bit helpful when you create the
visual like line stack bar Visual and
line clustered bar visual where you can
make your line to
disappear and you can leave just leave
the
markers so that can create more
combination again the marker colors you
can control and change the marker color
depending on like right now I'm based on
the series I can change but you have
when you select all the it's not there
one functionality which is there show
all now if I switch it on on a
particular date I can show a different
color of marker that flexibility is
there with
us now this would be too many outside
the dot now but on a smaller data it
will do going to make a sense uh that we
have a different
color but let me switch it off but you
have that kind of flexibility here on
the smaller value then the data label we
can switch in on the data label and the
data label have all things like we can
have title also along with the data
label the values can be controlled we
can have a different value basically in
the label so I can have a different
value of I'm not using gross here but I
can use a gross in the value so the
gross will get added in the label
instead of net and then I can add a
detail I can have another column in the
detail it will start showing two values
in this case we can have a complicated
value display and then then again single
line or multiple line I think in this
case it's better to have multiple line
because you have too much of information
but again uh we have to control the
density uh here because the line chart
is too busy can duplicate
this here let's go back to the
visualization and make it
as date
hery and let's scoll down only one now
this is the place where you can have you
can play around much with the labels we
have the gross value you have net value
so we are displaying the net values then
we can add the details in the details we
can add
the discount percentage value I'm adding
a discount percentage also so I'm add
adding these values and you can see
these values
here then we can have a background to
these labels and now as you can see here
when I see the margin the percentage
seems better but not along with this one
so let's go down and and we go to
discount percentage p and we will say
none so it will follow that format and
if I go to the values again I can say
none so it will follow the actual
format this is net and discount net and
margin this is net and discount
percentage this is also net and discount
percentage so the two labels are shown
for both the serieses and if you want to
control that in instead of each one you
can choose one particular series for
which you want to decide whether you
want to have a title or not so like see
I've added a title only for the below
series now in the values do I want to
have this net value or not and do I want
to have details let's say I don't want
to have details in the Net
series I don't want to have background
or I want to have background with a
little bit different color in the Net
series so that I can do I have a
different color background or let me
change it a little bit different so in
this manner what's happening I can
control the label of both the series
separately and I can display different
kind of information for each series now
series labels if you want to switch it
on so series label is something which is
shown at the end of the line if you see
here we have seeing margin and here we
are seeing net now there is no line we
have made the line width as zero that's
why though the last value is appearing
here so at the last value these series
labels are shown now again you can
control like you know what you wanted
for the net value so you go to the net
value what color you want and what do
you want a background so I given a
background on the net there is no
background on the margin percentage
so this is one thing basically when you
have multiple lines at the end of the
line you want it to show what the label
of the line and you want toase the
information
there background again I have enabled
and then you can change the transparency
plot background area we have seen we can
add the image here again reference lines
there are multiple option now x-axis
constant Line This Is Something xais
constant line is going to appear when
you have
the number numbers or the dates and like
on a particular date I wanted to have a
line and I can add multiple such lines
so this data is from 201819 so I can say
Okay I want a March 1 March I wanted to
have a line you can see there is a line
on the 1 March I can get and then you
want to have let's say one more line you
can add one more line and now you can
click and see this is my one line This
is my another line here again I choose
XX constant line then in the line I'll
go ahead and give a value so
I'll go to again 2019 let's say December
31st I got another line so I can have
these multiple kind of lines and then
definitely color line font actually
shaded area on so that particular line
can have the area before that line is a
shaded so what we can do is we go to the
Shaded
area and this is before or after I can
do what I can do is I can make this
color a little bit more transparent
and now let me do one thing I click on
this particular line the one before it
now I again switch on the Shaded area
now before and now you can see this is
I'm able to differentiate between this
area and this area just the way I have
done the shading in this manner I'm able
to loate and now what I can do is I can
also change the color a little bit and I
can increase the transparency also now
you're able to see the two shaded areas
so this can help us to give the Shaded
area between the lines so you can
utilize this this is especially useful
when you are using the kind of visual
where we have the x-axis constant line
those which are on Dat date and those of
which are on the number you should be
able to get these now again you have the
data label option here label is for the
lines so you can have the so whenever
these lines are there you can see there
should be some data lab this is the data
label the date which is appearing on
which date actually it is there now
right left above data Value Auto all
these things are there so if I disable
the data label you will see that now the
line is not showing what date it is but
I can have the data label
enabled I can say right hand side have
the one data label and this is for each
line so I enabled for the one line and
now I go back and enable the data label
for another line for both the lines I
have the data label then we have error
bars we have already experimented with
that if you want you can enable those
error bars and then you have to choose
up bound lower bound and all those and
then finally you have find anomalies
which is not enabled right now based on
what our selections are we rename this
as line one so these are the various
stuff you can do with the line visual
let's have a quick look at the area
visual area visual is very similar to
the line Visual and we have two kind of
area visuals one is area chart like line
visual with the Shaded and then we have
a St DDI chart so let's explore these
two so I'll click on area chart on the
build a visual or I can click the same
in the insert portion of the Home tab to
get
it I'll add brand from the item
here and net major from the base
majors and as you can see I got a chart
where I have a shaded portion below
again I can have multiple columns on
x-axis I can have a secondary y- AIS I
can have a legend and similar kind of
limitations what we have seen on the
line chart would apply also here so
let's quickly see what happens when we
put a legend when I put a legend here
you will be able to see multiple line
now usually when you create area visual
with the date access then you will have
continuous data even for categories and
in such cases this visual will look much
better because you will be able to see
continuous lines for each categories now
in this case because each brand does not
hold every category you are seeing those
discontinuous areas and it is not
conveying the message you wanted to
convey using this particular visual so
in this case because not all brands have
all the categories doesn't look so great
we will take a example later now
similarly I can also add a major on the
secondary AIS and test it out so I go to
drive measure and put margin percentage
on the secondary AIS and now now you can
see there are two area charts and one of
them is appearing on the secondary
axis I can also go ahead and enhance my
x-axis by adding another category now
moment I add the category the default
option is concate label off which we
have seen in the line visual also and
sort ascending but we can go ahead and
change the setting if
required if you don't want this expanded
we can actually use the drill up button
and
can go up to the hery we'll see only
brand then we can either do drill down
we can go to the next level by looking
at category or we can have expanded mode
like we got
initially now I'm going to open the
format pane on the the right hand side
pane because of my settings I'm able to
see format pain here and we can go ahead
and look at what all options are
available here size and style are the
common options which we have padding of
the visual uh inside this one how much
we want like from top and bottom we want
to reduce something we have background
if you want a background I we can switch
it off if there is transparency which we
need which is 100% if you don't have
background it will also act like a
transparent one visual Border in case we
need the Border shadow in case we need
Shadow these options we have explored in
other visual same as other visuals we
have title again you can use a measure
inside the title you can set headings
font you can also have a subtitle you
can use the divider to have a line
between the title subtitle and the
visual and you can change the spacing
between the line and the label and you
can customize spacing if required xais
on x-axis you can disable the values if
you want like I don't know to say
whatever it is you can have visual like
that you can enable that then you can
only disable the x-axis title which is
category is only missing if you pay
attention here I'll enable it
again same way for y-axis you have
options like minim and Max where you can
use measures because FX button is there
you can give static values you can make
it as a logarithmic scale if your values
have too much of difference usually we
use logarithmic scales let say one value
is pretty large and another are pretty
small then in such is logarithmic scale
and give us a better fit visual which
will be able to showcase the smaller
values little bit larger because of
logarithmic scale we can invert the AIS
the smaller values on the top the larger
value
down then we have
values which we can hide on the y axis
if you can see now there is no values
which is up here near to the net there's
no values here again we have option for
font color which we can
change again color
of the values can be based on a measure
title if you want to disable the title
you don't want to show the title you can
do that secondary AIS if we have
secondary AIS we can set up the
properties for that if you're using
Legend what position you want the legend
then text of the legend you can have
font title of the legend you can enable
disable smart M multiple we'll try in
little bit later grid lines in case you
need grid lines you horizontal grid
lines is enabled but if I vertical grid
line again I have to make them little
bit larger for you to
see this is vertical grid line
for the access have zoom slider which we
have already explained in other visuals
but we can have a zoom slider and once
you have the zoom slider you will be
able to zoom the
values then we have line option again
area chart is definitely an extension of
line chart with the shade
but you can go ahead and play with the
Shaded area at transparency here as you
can see I'm using margin and net again
just like line visual I am not having
any option to conditional format
it and then again stroke which is
something which you can play around you
can make it zero so there would be no
line in that case I have done it for
both and then transparency you can
increase or decrease or you can go ahead
and choose individual line let's say if
I choose net and and for net I can have
line there is no shaded area option for
individual it means the Shaded area
transparency can only be handled at the
all level not at the individual series
level then we have markers just like
line visual we can enable the markers
we'll get dots in the above one as you
can see we don't have the line but we
still have the dots then we have the
size of the dot which we can increase or
decrease then color if we want to change
the color from the default one data
labels if you want to enable the data
label this chart is having too many
values it is looking busy so you can say
okay I don't need it for all the cies
you can disable it for one of the series
position you can decide Auto above under
then you have the leader lines we have
concept of leader lines which we will
explain you a little bit
later under the data label we can enable
or disable data label by margin so let's
say for net I can disable the data label
I for margin I can continue to have the
data labels and there's some is really
interesting that is leader lines so I
can enable that to see those leader
lines you have to at least give 25 to 30
as a minimum offset then you will will
get a noticeable lines so as you can see
I have set the value at 35 and now I can
see these lines and as you can see these
lines move your values little bit up in
case of the label and that's allows you
to see these values in a much better way
this feature actually creates a visual
connection between the each data point
and its corresponding labels and because
of this feature you will have better
experience as you can see values little
bit away and then there is a connection
you can have the values under and above
as you want like if it is under then the
leader lines will go down and if it is
above the leader lines will go on the
upside in case you want title on the
label you can have title but in this
case because I have too many values it's
look busy but these are some of the new
enhancement which has come where we can
have title where we can have value and
values could be a major
driven Valu so though it is margin but
actually I can go ahead and put discount
percentage I'll start seeing discount
percentage so these what we are called
the major driven label then we have
details if you want to add details you
can add another major let's say I now
along with margin I want to add discount
I can add it and then I have formatting
option transparency and all that and in
the layout we can want to show them in
single line or multiple line all those I
can
decide so right now I'll remove the
details we don't need it for this
particular visual similarly you have
series label if we can enable the series
label and as you can see the series
labels are available at the end if you
want you can disable particular series
label let's say I want to disable net
and as you notice now that there is no
label for net there is only label for
margin percentage you can can play
around with the values you can play
around with the background if needed
then we have the plot area background
where we can have image if needed and
the reference lines as we have added in
other visuals we can also have reference
line here and those reference line could
be of y-axis constant line Main Line MAX
Line average line median line percentage
line these lines keep on changing based
on the visual you are using I've named
it as area quickly create a stagged area
visual I click on a new page and here
I'll add this tagged area in this tagged
area again there are two ways to create
either I could have x-axis and legend or
I can have multiple measures so let's
say I wanted to have X brand on the
x-axis and then I can have
net on the y axis and along with I can
have let's say
margin let's say create an equalent of
gross or in case I don't want it to have
the double I can use Legend also to have
this Ted area this will not look great
again for this purpose I need to have
something like date here for looking
really good so let me go to the sales
and let me bring in sales date here and
once you have the trend you can see that
it looks much better and let me remove
and make it only a year quarter as you
can see now it looks much better area
visual again we have the similar kind of
format properties which we can play
around because I'm using the date Fe
field I am getting the access as
continuous option I can also choose for
a categorical option where I get the
categorical values I can change add
remove titles on the y axis I can play
around with the range I can in the text
font title same way I can play around
with Legends and red lines Etc same
options are available for this visual
also again because I'm using Legend you
don't see any conditional formatting
option anyway we don't have any
conditional formatting option in the
area visual
later when we go to the conditional
formatting I'll also let you know how
can you color dots in case of line and
area
visuals and if there is a shade
transparency you want to control you can
do that we can little bit control it
like this or little bit lighter you can
increase the transparency or you can
decrease the transparency manner you can
create area and stacked area visuals or
charts now let's discuss scatter visual
in the scatter visual what we are going
to do is we are going to discuss the
scatter visual right now when we go to
conditional formatting we will learn
about the quadrant part of it and also
regarding the markers what we are going
to do is marker properties we have a
separate video on marker properties
there we are going to explore marker
properties in detail so I'm going to add
a new page and on that new page I will
add this scatter visual scatter visual
is available here in the middle click on
that now scatter visual have many types
the best way to create a scatter visual
is having both x-axis and y axis as a
measure but there's a possibility of
having a scatter visual without having a
measure on XA so let me first give you
that example so I will take brand from
item I put that on xaxis and then I take
a measure let's say margin percentage
and I put on y- axis this kind of become
a DOT chart in line chart if you only
have the markers and you don't have a
line you will get something like that
another Advantage which we will get over
the line marker here is I can go ahead
and have here a size for that what I can
do here is I can put gross on the size
so you can have smaller and larger
bubbles so this is one way you can
create it then I have play AIS tool tips
now play acces might not applicable for
the current scenario what we are going
to do here before we move forward and
move to the scenario where we have both
xaxis and y axis on the major let's move
them
around now we have a CER visual on brand
and margin percentage can we swep can we
have brand also on Y axis so let's try
that out let me remove the brand from
the x-axis and margin from the Y AIS and
let me see if I can have brand on the y-
axis no I'm not able to have it so it
means the possibility of me having a
brand on the y- axis is not there let me
remove the size again and try so brand
on the Y AIS so that's not possible I'm
not able to do now what I'm going to do
is the next thing which I wanted to play
around is having x-axis as a major let's
say discount percentage Y axis as a
major and that is margin percentage so
we have the majors now major cannot give
me a a dotted chart for that I need it's
definitely something which gives me
those series for series I can drag in
City out here City on the values if I
drag you will be able to see the dots
again for size I can drag in Gross here
onto the size and for size we have the
format where we can you know play around
and you know make the size smaller or
larger so marker is that for that and
usually when you have these kind of
stuff I have find out that minus 27 28
or - 30 is a little better suitable size
so let me go to- 27 so now this is a
little better size in terms of what we
want it to have and then we have
different kind of shapes which we can
take in the marker so marker can control
this size and the bubble and we can have
different kind of bubbles also now do we
want it for all categories or single
category that also we can play around so
that is with the size now you can also
have the conditional formatting done on
these Bubbles and for that you have the
option available under markers only if
you go to the marker color you can see
the f sign here it means I can use a
measure out here that we'll explore
little later in the conditional
formatting I can have a legend and once
I have a legend then I will not be able
to change the color of the marker using
conditional formatting so let's say if I
want to have a category as my
Legend you can see for each category I
have color but inside the color of the
marker now you don't have any option to
change the marker color dynamically
using the conditional formatting but it
allows you to have the both city as well
as the category in one particular Visual
and have the data at the city category
level or you can have City Brand level
State Brand level at that level you can
have data so you can add more detail by
using legend or you can also do let's
say we drag the category inside the
values
only so I dragged it and then we can
expand it the moment you have more than
one value in the values again the same
way you will get the expand option as
you were getting previously in case of
bar visual Pi visual or L visual so here
expand is a better option for us we can
definitely go to the next level or we
can go do the drill down but let's go
and expand this now you are seeing the
city and category but is still the FX
option is available as you can see the
color of the marker is still available
now with the FX option means I can do
the conditional formatting I will be
able to change these bubbles using the
conditional formatting logic so that
give me little flexibility to have more
than one granularity and then I can use
the color these are some of the play
arounds you can do with the scatter
visual now to take this neck forward
let's see can we add a play access most
suitable play access is basically a Time
range but right now we don't have date
table so but we would still like to see
if we can put State on the play Axis I'm
able to put that and let me play around
so for each state now you can see that
I'm able to see the data and you can do
the same with the time ranges month here
dates and everything and it will play
for all the values one by one so I don't
have to do anything I just to play we
have created the visual we have seen how
to add the play AIS now let's remove the
play
acces also remove the category just keep
it on the city and let's start exploring
the visual properties so we have size
and style basically it is dependent on
what size we have what location we have
based on that this can be changed this
is just the positioning which we have
then the padding basically the space on
the all four side s es background right
now we have background on if you have a
background off it will take the color
from the background of the canvas right
now when I when it is on it means the
visual can have its own color and you
have to reduce the transparency to see
that color as you can see if I'm
reducing the transparency I am able to
see the color I can have the 100%
transparency or I can switch it off even
if I don't want to have along with the
transparency
then I have the visual Border in case I
need a border for the visual so if you
click outside the visual you will be
able to see the border and then for
Border you can have the rounded Corners
if you want and you can have width if
you want to increase the width of the
Border I actually don't need a border so
I'm going to switch it off then you have
title as usual for every visual you can
have a title the title can also come
from a major so if needed we can have a
from Major the headings from nor noral
heading two heading six we can have any
headings we can decide the font and the
font size Bard italic and underlying for
our titles we can decide the text color
of our title let's say other than black
if I want to have some other color I can
have that I can have the background
color also for the title means only
title will have its own background color
as you can see then we can align the T
title left Center or right depending on
the need and if the title is too long we
can also use the word rep property by
default it is on we'll keep it on we
have seen this subtitle property now you
can have a subtitle other than title the
moment you enable it it create an
additional row where you can have the
subtitle you can have a text or you can
use the FX function FX it means you can
have the subtitle based on a measure you
can have the heading normal H1 H2 H3 H4
then you can have a heading two adding
three heading four whatever heading you
want on font size bold italic underline
you can change the text color again
alignment left center right or rap text
I don't need a subtitle so I'm going to
disable that then we have a divider
divider if you remember is going to come
between the title subtitle and the
visual so title subtitle is one party
and the visual is one party then we can
have a color we can have the style and
then we we can increase the width of the
line so that we can see the divider
between the Visual and the headers I'm
reducing it now again I'm also going to
remove the divider then x-axis
properties because we going to use major
so you can have minimum and maximum
range you can have logarithmic scale you
can invert the scale if you need inward
scale means the numbers will come from
bigger to smaller so if you can see now
26% is before and then 24 then 22 and
then 20 if I revert it it will start
from 20 to 26 so that is possible here
this is xaxis then we have the xaxis
values where you can go on the font
color now the color can again come from
based on the conditional formatting we
can bring in but we have to remember
sometime the x-axis labels only work on
grand total so we do have to check that
out and then display is auto we can
change the display as per me value
decimal places because it is a major we
can have value decimal places so blank
values is off but if we need it we can
add it title xais title if you want to
disable x-axis title you will not see
discount if I enable it you will be able
to see discount so the play around is
here for the
title the discount is going and coming
back same way Y axis again Y axis is a
numeric axis so you have the minimum and
maximum for the range logarithmic scale
invert AIS again this AIS can also be
inverted and this is going to be useful
sometime when we specifically create the
quadrant it could be really helpful when
we actually want high and low to be on a
particular quadrant then it could be of
real help so margin as you can see now
the scale is inverted we have from
smaller to larger on the scale in a
reverse manner same way we can play
around with the value font font size
bold italic underline we can use the
function to color means we can use
conditional formatting then we have have
the value decimal place because it's a
number then we have switch AIS position
means we want primary AIS which is right
now on the first y-axis margin is there
I switch it now it is on the second
y-axis you can see it on the right hand
side back on the left hand side show
blank values in case you want to show
the blank values title again the title
margin percentage you can observe it is
written but if I disable it it is not
there again enable it is there same way
we can if you need it we can have grid
lines right now horizontal grid lines
are they are they're pretty light right
now if we want we can increase its width
and it will be made visible as you can
see now but I'm not very found of that
so I'm going to reduce it vertical is on
again we need to increase the width to
see them again not very intuitive in
this case so I'm going to reduce it
again so these are the properties of
basically AES now let's move to the zoom
slider Zoom slider will actually give
the sliders on the axis you can have
x-axis slider and y axis slider and then
you can you know scroll them to get the
values this is really helpful when you
wanted to have the sliders then if you
want to have the slider labels and Tool
tip you can also have that we have
played around with that in the past
markers we have seen basic marker
properties we have seen the marker type
I can change it to different type of
markers
then we have uh range scaling Auto
magnitude data range we can say Based on
data range so you can see that you know
the dots are little up from lower to
higher that is more suitable actually
compared to any other thing color by
category on or off so that is marker
property which has came new we'll
discuss a little later then border for
marker has also came we'll discuss that
later now category labels is something
which is label if you want to display
basically the value labels and now we
have city so we are seeing City label
now when we have City category let's say
what happened when we have the city
category and we expand it what would
happen there now you can see City and
category label coming together we need
to be very selective in case we wanted
to enable the category label
specifically on scatter visual which is
having lot of values it may not be the
best thing to have then you can have the
category label can have background so
that they look little different and once
you have the background then you can
have background color transparency Etc
then you have the plot area background
if you want to put an image you can do
that then you have reference line and
this is really important because that is
where we want to create the quadrants
here before I do that let me go ahead
and disable the category labels
quadrants basically we can create by
using the average lines but I'll tell
you the average lines are not most
suitable so let me go ahead and add an
average line and as you can see this
average line comes in Middle but the
best most most suitable would be the
constant line and use the same measure
but right now I added the average line
and the series is discount percentage
let me add one more average line and
then this line is also going to be the
average line and for this one let me
choose the series as margin percentage
as you can see both these serieses are
available here but if you use the
constant line you will find out the
difference of to do that let's go ahead
and do one thing let's remove the second
average line and then keep for the first
one on the discount and on the line is
fine let's enable the data label for
this line so we have option for data
label so I got this data label and let
me add one more line and this time I'm
going to add a constant line so I select
the second line I'll go here on the type
and I'll select the x-axis constant line
because it's on the ACC by default it
will come on zero so I'll go to the line
which is on
values which is zero I'll go to the FX I
don't want a constant line but this
gives me an option to use conditional
formatting UI which actually is the
major selection UI for me and here I
select discount percentage by default
one major would be available for you to
selection and usually it is the x-axis
major or the major which you are going
to select for first time so I've
selected that line and constant line
don't work together that's what my
observation is so what I'm going to do
here is I'll go to this average line now
remember the value
13.11 and I'll go to the constant line
and let me enable the value first of all
the data label we will see that value
but this is right now not working even
using FX I'm going to go ahead and
delete this average line and the moment
I deleted you are able to see the
constant line using the mejor which is
actually the correct average that's not
the simple average in this manner I
usually prefer this constant line let me
keep this and then we have the
properties like FX value the color so if
you go to the reference line you have
the constant lines then you have min max
average median and percentile line which
is most of them want to decide their
values by themselves you don't have any
intervention in between in constant line
you have the flexibility to provide the
measure then you can decide the color
right now I am having a color which is
matching with my marker color so I can
change it transparency dashed line style
is dashed solid dotted or custom I can
have let's say custom then we can decide
what kind of line we want then we have
the width width of the line right now is
solid and you can see width is three
that's good enough positioning in front
or back means is it should be in the
front of your markers or back side of
your marker that you can do data label
we have already seen we have enabled it
now the data label could be on the left
hand side or right hand side vertical
position is about or under so we have we
have the horizontal position left and
right and we have vertical position
which is above and under depending on
the need so if we put under here it will
go through the down and the same things
will look a little differently when we
have the y axis constant line the styl
is data value by name you want the name
and both if I want name as well as value
then display unit is auto I can change
the display unit here so these are the
various values around the reference
lines and that is really important here
now then we have the symmetrical shading
if you want you can switch it on and you
will have the symmetrical shading upper
portion Shing lower portion heading
upper shading lower shading or depends
on the visual the it may have some part
because in my visual right now the
symmetric is coming this place the
reason is both of them are not starting
from zero if they start from the zero
this will make sense but most of my data
is in the middle starting around 20% so
that is why this is not the and this
maybe because I'm taking the data at
City level if I take a little different
level it may be a different case I'll
switch off the symmetric shading right
now then I have a ratio line I can
switch it on you can see a ratio line
now you want you can have a color
transparency style width Etc to that so
this is overall just a brief overview of
scatter Visual and how you can design a
scatter visual there are play arounds
with the you know quadrant colors and
all those that we are going to discuss
in conditional
form markers has been enhanced in
October
2024 so let's have a look at what marker
announcement has been
done in this part we are going to
discuss the marker enhancement which has
been specifically done around the line
Visual and the scatter visual Microsoft
powerbi has done lot of enhancement in
the visualization and some of those
enhancements we have not discussed so
far so what I'm going to do in today's
video I'm going to take you through one
of such enhancements on the markers in
October 2024 so let's look at the
release notes of October 2024 so this is
October 2024 feature summary and if you
scroll down here inside the content you
will find out marker enhancements so let
me click on the marker enhancements to
go down and look into the details so
let's look at the release notes in
details marker enhancements reamping the
rendering of column bars ribbons line
area charts and marker is a top priority
these element form the foundation of our
core Visual and will eventually impact
other areas by provisioning more control
our report creators can enhance their
storytelling and help users easily to
interpret data in October 2024 update
markers for line chart C chart and
anomalies are Improv improved with this
revamp this update introduced new
options that offer greater customization
and flexibility explore these new
options and maximize their potential
marker for line and cluster chart can be
customized now in two ways categories me
each and individual category like you
have gen Fab Mar or brand one brand two
brand three when you have only single
series or basically you only have xaes
let's say when your chart has no series
The drop- down menu displays category
you can customize each data points
marker based on the selected x-axis
category you only have the categories
you don't have the legend or multiple
majors in that scenario now series when
the chart displays Legend the drop down
menu displays the series The Legend
series you can customize the marker for
the complete set of data points within
the selected C overall you can change
there you can hide and show the marker
for a specific data point category by
toggling show for this category option
please note the marker toggle has been
moved under show for all series new
format settings have been added to the
marker for each line T catter chart and
anomalies including shape shape of the
marker continue to offer control over
their type size additionally rotation is
now available for all shapes and size
except for the circle shape rotation
shapes as the variety of shape type at
your disposal which is particularly
convenient when multiple lies are
required unique shape
color changing the color of the marker
has been a convenient control now you
can also modify the transparency of the
marker for a specific category series or
all markers border this is the new
feature border for the marker has been
introduced allowing you to add borders
to specific marker category series for
all markers Additionally you can fully
customize the marker borders by
adjusting their transparency and the
width so these are the features which
has been released some time back first
of all let's look into the detail is
what we are going to learn today so we
will learn how to enable the marker how
to do changes at categories or series
level how to change color size and
transparency of the marker how to change
color size of transparency of the marker
B and this can be done both at the
series level or categorical level for
both marker and marker border so that we
are going to understand today in details
so let's jump onto the powerbi and
explore that out so I'm here on the
powerbi desktop and I would like to add
a new page to start exploring the
markers so on this new page first of all
I would like to add a line visual so
item wise net so this is the visual I've
created item wise net and let me enable
the format if your format is not visible
you can go to the view from there you
can enable it after that on the if it is
still not available here check out the
rightmost side is it disabled from there
or it has been minimized from there
these are the places where you are to
look
for now once I go inside right now I
have a single measure I have only one
series I go down to the marker and here
you can see that I have option for
categories I can choose individual
category or show for all categories let
me enable show for all categories now I
can choose the shape so let me choose a
little different shape let me choose a
triangular now I can increase the size I
can change the rotation let me rotate it
by 90° 92 let me write down 90 so I
rotated it by 90 color I can change the
color right now it's very similar to
what I have on the line I change the
color then I can go to the Border Swit
on the border now you can see a small
line uh match with the series color will
start matching with the series color
uncheck this and go ahead and change it
manually so let's say something like
this now transparency first of all let
me increase the WID so that you can
understand transparency
later I think five point is good enough
now look at the transparency when I
decrease it you can see the transparency
and I can completely wipe it off so
there will be no bottle one way to hide
is you completely make it transparent so
it will go away so now what I have done
here is I have done the transparency on
the shape and zero transparency on the
border so you are seeing like empty
markers so this is one another way you
can get like empty markers where you
have no color inside or you have the
transparency which is 100% for the
inside this is for the overall category
or overall the complete x-axis series
but I can go to individual and I can
check it let's say brand8 I can go and
change it so right now it is showing the
same properties but what I can do here
is I can let's say choose a different
marker there so instead of triangle let
me choose a circle so you can see now
there is one Circle which is available
it is an empty circle because I have
100% transparency at the marker level I
can reduce it now only this point is
having color because the transparency is
not there so individually I'm
controlling one particular category in
this manner I can do this action let's
see what happens in case we add another
measure so let me add a gross measure
now so this is a net measure now I add a
gross me the moment I do it you see
everything has been replicated for both
the serieses gross as well as neet if
you go here now you have the only
control over gross on neet the category
control is not in your hand but whatever
you have done previously is there so it
means in case you want individual things
to be done at the start of the line or
the end of the line now it is static in
nature as of now but you can do that and
then change your series or then add the
series now here I can go ahead and let's
say choose gross for gross I can go
ahead and change the type to square
everything is changed to square other
than see look at this
brand moving ahead I can go ahead and
change the transparency for the gross to
zero so that I will get color inside my
squares each series have its own type
and can have its own color also now I'm
changing the individual one but brand
Aid which we have changed previously
using category is still remain so that's
a good thing we can do it previously and
then do it also go ahead and change the
Border color so in this case I can
choose different color and I can also
change the width of the marker you got a
different look and feel for your markers
this will enhance the visual experience
of your line now let me tell you one
more trick for that we have to go and
adjust the line width you can go ahead
and reduce the line width to zero so
that line disappears you will only see
marker now this is for all the series
you can choose individually which series
you want what I can do is let me have
the width three and let me go to let's
say gross and make it zero there is no
line for the gross there are only marker
and it could be helpful sometime you
just wanted to show the markers you
don't want to show the line and then you
can selectively enable data label also
and go to the series let's say gross is
on and net you can switch it off now
you're only getting the labels for the
gross what I would like to do here is I
would like to play around with the
legend means I would like to have not
the major series I want to have the
Legend series to do that let me add a
new page and in this new page I'm going
to add one more line Visual and this
line visual I'm going to have it on
month year xaxis is month year from item
Dimension I'm going to take category as
a legend and let me take a major as that
on the y- axis now as you can can see
for each series I have a line I can go
to the markers and as you can see I have
a series for each series I can have some
kind of a marker or I can enable the
marker for everything now I enable the
marker for everything I go to the
category one I disable the marker so
there's no marker for category one now
you can check it out here there's no
marker so now let me go to category two
and for category two let me change the
markers as triangles and let me also
make them little bigger same way I can
go to category three and I can change
the marker to square and and I can also
make them little bigger can go to
category 4 and choose X as a marker and
make it little bigger also I can change
color for some of them if required let's
change the color for category 4 to the
Violet for x and then I told you the
trick you can hide some of the marker
using transparency or you can hide using
goow for that series there are few
options and you can have border if
required in this manner you can play
around with this now what let's do one
thing let's also experiment on the
scatter visual that's one of the very
common visual which we use so let me add
a new page and in this new page I'm
going to add the scatter visual let me
add to access which is my discount
percentage let me see the drive measures
the discount percentage and the margin
percentage on two x's let me add City
from the geography table as values I
have got a good number of cities scatter
visual shows markers what we can do is
we can change the marker completely for
everything or we can change it for each
category now as you can see I already
have the marker open so for all the
categories I can have you know something
so first of all I would like to increase
the size so I let me make them a little
bigger now I can go to a particular City
let's say I want to highlight a
particular City so I can choose a
particular City in the category so let
me go to Los Angeles and let me choose
different shape for Los Angeles I have
choose it in a triangle now you can see
one triangle into the
middle let me do one more thing is
basically uh right now the size is not
govern by something so let me govern the
size by gross so size is now govern by
gross now this is too big for size so we
need to reduce the size so we go to the
all now you got to reduce the size here
so we go to the size whenever I use
gross I usually take any value between
-25 to -30 depending on the need now
let's go back to the Los Angeles now I
what I'm going to do I've chosen the Los
Angeles again and I'm going to
change the border so border is switched
on right now it's matching color so I
switch off the matching color I want it
little different color so that I can
highlight it and let me increase the
width now you can see the Los Angeles
there with this one and color
transparency let me reduce it to zero
and I would also like to change its
rotation so let me change its
rotation I change the rotation to 97° so
it's looking like Arrow right now here
in this manner what can happen here is
basically you can go ahead and do very
special specific stuff on your markers
you can change the shape for each
category or series you can change the
rotation color transparency of the color
you can change the Border color
transparency and width and these are the
various features which has been released
as part of October
2024 so why don't you go ahead and try
them
out the next visual which I want to
discuss is be the funnel visual so let
me add a new page for that funnel visual
is especially use in case of sales when
we have lead opportunities and
conversions now again there are a couple
of ways you can have it one is basically
if you have multiple measures you can
use the funnel visual in that let me
drag
cogs
net
gross we also drag margin here you can
treat this as your opportunities leads
conversions this you can treat like you
know you know total leads you have how
many of are opportunity how many are
them of hot leads and finally how many
are converted something like that in
this manner you can get it now in case
you don't want that you can have
category let's say those opportunities
are not in terms of the majors it is in
terms of the values values in the rows
let's say let's treat category as one of
them and I bring in category here and as
you can see now we have Category 2
category 4 category 1 and it
automatically you know adjust into that
as that method otherwise what you can do
is you can go to the set acces and you
know you can say I want to certain
category so it can give it but it's not
going to make sense unless your
categories are sorted in that particular
manner like opportunity leads H leads
and sales
Etc if you are simply using numeric
value should sort it in the best way and
then you can have sort ascending and
sort descending to make sure the kind of
visual you want to get whether you want
to get the funnel or you want to get a
pyramid based on that you can take
action on this visual again if you want
to look at the property of this visual
you have title subtitle divider spacing
data labels on and off so you you can
see the data into the middle of it you
can switch it on and off you have inside
Center and outside and as an
option now you have data value
percentage of first that is really
important percentage of previous then we
have data value and percentage of first
and data value and percentage of
previous these options are available I
think percentage of first is something I
want to keep and for that I would
actually like to have it s
descending this looks much better to me
values a value font and color you can
change decimal places you can control
you can control the percentage decimal
places in case you want to have
background you can have a background I
have a little bit lighter background
there on the backand side now I made it
it little bit more darker so you can see
it now category labels the labels of
category 1 2 3 4 here it is category but
it could be anything else if you don't
want that you can switch that off again
I'm switching it on then we have display
conversion label
option that is the top and the bottom
lines if you are seeing so basically
this is 100% And it 24% got converted
that's what this means is but if you
don't want to display that you can
disable that so this is for chart mostly
useful in sales and finance based on the
requirement you can use this visual to
enhance your visual experience let me
rename the page before
I switch to the next
visual the next is not a visual the set
of visuals which is basically
the maps which I wanted to explore and
we have few Maps out here and some of
them are dependent on settings and the
login especially map and shape map
visuals they are controlled by the
preview settings and the security
settings so let me showcase you the
settings quickly once again so I'll go
to file then I go to the options and
setting and
options and I have preview feature where
I have the shape map visual if you can
see which I have enabled then you have
to go to the security settings and
inside the security setting if you
scroll down you have to enable RGS map
and field m map visual now I have not
logged in and if it gives a problem on
my tenant settings you also need tenant
settings to enable the map and when you
are signed in it do create an impact so
let me first start with the map visual I
click on the map Visual and in the map
visual I'll add State I have two options
only state and city so let me start with
the state state is part of my geography
Dimension I drag it here and with that
I'm going to drag
net it creates bubble for me and the the
moment I drag the net that controls the
size of the bubble and then we can do
little bit play around now because this
visual have a legend and if I drag a
legend it will also create a pie chart
you can create a pie chart in case you
need a pie chart and then let's look at
the properties quickly we have the size
properties then we have the background
visual border Shadow title these are the
same properties subtitles spacing
Legends on and off in case you are using
Legend if if you're not using Legend
then that on and off option is not much
useful then we go to Bubble and as you
can see we have the size property which
we can play around we can decrease or
increase the size now depending on how
much is your range you can choose this
size then rendering is
magnitude data range and auto there are
small small differences in that then
color now because because I used Legend
I'll not get option for conditional
formatting but if I remove the category
from The Legend I have the option for FX
means I can do conditional formatting or
I can change the color manually also
then if I go down we have category
labels if I switch it on it will allow
me to show the state labels or the
category labels I can have a background
or I can switch off the background to if
I want to show only names I can have
color for the map now if you go if you
want to have a heat map you again have
options for heat map and you know
gradient zero how should it look
gradient 50% and gate 100% how should it
look and then you can increase or
decrease the radius to Showcase uh the
heat map here this play in pixel you can
attend meter and transparency all these
things you can control I'll switch off
the heat map there is something known as
map setting so right now the map setting
is road but I can have aial this is how
it will look like dark
light gray
scale and
Road and we have the option for show and
off show label off label so you see the
labels I'll let me highlight you which
labels let look at these
labels and if I switch it off you will
not see the country
labels then we have few controls like
auto zoom which is enabled so if I go
here I can zoom
or it will what happen if there is some
value get selected by some some slicers
or something then also it will
automatically Zoom so let me add a
slicer externally and try to select
something let me add it City slicer the
moment I select a city because of that
state got filtered and you can see that
that got highlighted and this is because
of the feature of auto zoom then if you
want you can have zoom buttons if you
click on Zoom buttons you'll get this
plus and minus which you can use for
zoom
in and you can change the position if
you want to zoom
here then there is a lesso button if I
enable lesso this is really interesting
feature what does Leo select does is
basically I can press the control button
and then I can select multiple
values and to what does it do for that
what I'm going to do is basically let me
click here on this visual make it as a
table
Visual and let me few cities here like
using control and drag and as you can
see the values are changing let me do it
only on Hawai here you can see only this
value if I click back in the any space
it will go away I selected two of them
again click on empty space it will go
select few of them here on this side you
can see the values are changing so this
is the advantage of leso Select
basically with the control you can do
the selection you have to enable the
lesso select and geoc coding is
basically what kind of geoc coding you
want if you want different cultures you
can use
those so this is what we call as map
visual let me add another visual which
is basically the Bui map visual now in
the field map visual we have location
Legend latitude longitude so in case you
have latitude longitude you can use I
don't have so I can use city or state
but this is not a visual for City let's
see can we get it I drag the value here
for the shading no this is not the
visual for that this is a visual more
suitable for States so I can put State
and I have already drag one major based
on that it is giving me color it's going
to give one tool tip but if you want to
have the shading basically what you can
do is you can go
here in the fill color you can use the
conditional formatting
here you can use okay and you can get
the conditional formatting here then
this one and all those controls and
everything is applied here now if you
want you going to use a legend and if
you use Legend you might not get the FX
option in the color so let me use a
legend of category here now this option
might not be really useful you do have
the color but it always end up showing
you only one category we create
something known as topper um first
topper and second topper kind of where
we can find out every category which is
topper in each state and there we can
use this filter that out that only top
categories are there so we see rank one
and then it would be more beneficial for
us to have this kind of visual so this
is the fill map visual for you next
visual which you want to explore is the
shape Visual and the shape map visual is
one visual where you can also have your
own shapes coming in so I'm bringing in
state but if you go here into the map
settings it is showing that it's a US
state map but if you have these are the
other state maps which are also
available but you can also bring in your
own Maps
or you can browse the map type you can
have your custom map and you can browse
the map and you can use that so right
now we are using the USA map St
we but you can have your own map and we
have similar kind of setting here but in
this one you have the color saturation
already available so one of the ways you
use color saturation secondly you use
the fill color so if you go to the fill
color directly without using the color
situation you can have FX button and in
the F button you can use let's say
gradient and you can click okay so it
will give you the conditional
formatting it will give you the gradient
based on that and also you can use the
conditional formatting like rule based
conditional formatting or field value
based conditional formatting here but
what you can also do here is you can
have color saturation you say no no I
don't want to control it let power ba
controls it you can put net into the
color saturation the moment you do it
you will not get that particular option
means now you have the gradient which is
you can choose the color and based on
min max value it's very similar to the
gradient what we have there but if you
don't use the color s situation you more
flexibility to use conditional
formatting where we will also be able to
use um rule based conditional formatting
or measor based conditional formatting
which is field value
base then for the blank areas no blank
areas on or off I use off then you don't
see the blank areas here you this is
white in color and otherwise you want to
show it or you want to show it in black
color you can decide how you want to
show the blank areas if you want to use
Legend again Legend would be not very
useful if unless you plan to show the
top ranker or second top ranker we need
to take example of what does you mean by
top ranker and second top ranker what we
need to do is we need to create category
ranks and then we need to filter the top
rank and that we will do once we learn
how to create rank index and then later
on we'll come back to conditional
formatting then we will learn how to use
that so this is shap ape map Visual and
really powerful in case you want your
own custom shape you can go ahead and
try that out the next one which I want
to use is
Azor Azor map visual has recently been
enhanced and one of the thing which you
must remember that it requires a sign in
so now I need to sign in before I use
and it need to be enabled at my tenant
level so let me sign in
I have signed in into my
popup let's remove this and try to add
it
again it give me a disclaimer
Also let's try to add some location to
it those of you who used your map visual
in the past or seen the past
video the location is something which
very recently got added so let me add a
location here but this visual is coming
out as one of the powerful visuals that
we can have here then we have a size
which we can bring in using net here by
default it has given all the same size
now I have the size so let me go into
the property of this visual so you have
the map setting where you have the style
different kind of style like
Road
hybrid
satellite
gray scale light
Tera
blank lanks
accessible high contrast
dark high contrast
light these are the Styles available let
me keep it a road
only then you have view auto zoom o on
and you can have different options if
you want to disable the auto zoom like
you know you can observe the difference
the moment I remove the auto zoom it
actually comes in and then you have the
buttons which can control it but I think
auto zoom is a better option so I'm
going to keep it but yes you will get
the zoom buttons you will have the reset
options up and down options and some of
the options are available on the visual
for users to change
it then you have the controls so word RP
can enable disable style picker so if
you in the top if want to use see this
is the your style
picker and I I can disable it so you
can't change it on the Fly Like if I
give this you can change it on the fly
but I'm going to disable that navigation
buttons you
have I disabled that selection and
switch on and off selection button Geo
coding is auto I'm going to keep then
you have
the layer settings which is minimum and
maximum unselected disappear you can
have Legends in case we are not using
Legends as of now here uh we'll see the
field
map not applicable right now bubble
layer is a category label so we have the
heat map option in the heat map option
we can play around with the radius and
when heat map is enabled we can switch
off the bubble layer so that we only get
the heat map layer in this case there
are multiple levels so we can disable
this
now we have the color option where we
have the color of the gradient right now
which is applicable in this case if we
switch off the heat map then that color
option will go bubble layer is on right
now in the bubble layer you have the
cluster bubble and then the color and
then we have the size of the bubble
which is minimum and a maximum we can
say minimum is five and maximum we can
also control so we'll have little
smaller bubble range selected is data
range or magnitude or Auto we can keep
it data range your auto a shape
transparency we can control inside the
shape so I'll make it little bit
transparent color you have the
conditional formatting option we have
conditional formatting options and we
can do conditional formatting based on
gradient color rule based or field value
base let me try based on gradient as of
now based on the margin percentage uh
it's rule based right now I'll make it
gradient based so that I can easily do
it or I can say based on certain rules I
can have those values so this is
gradient BAS
color so this is all all I'm doing for
bubble then bubble can have border or
not you can decide right switch on
Border switch off border you have the
zoom option then you have the options
which is pitch alignment Viewpoint or
map labels are below or above right now
I don't think we are showing
labels you can enable the category
labels now you have the
labels and labels can have background or
cannot have background and you can add a
heat map layer as we discussed now if we
go here can put let's say Legend I'll
put category as a
legend the moment I put the legend you
can see the pie charts the labels are
too big we need to disable them I'm
disabling the category labels you can
see the pie chart better as soon as I
add the legend you cannot have the color
using conditional formatting so that is
gone you have the border and the width
of the Border if you want simply you
know a totally covered P you can have
the transparency if you want you can
increase the transparency of the
colors you can CH change the size again
we can start with little bit smaller and
going to a little bit
larger you can control the size you can
control the shape transparency again I
want lesser transparency in this case so
these are the various options you can
also use with the Azor map visual map
visual is coming as an stronger option
compared to all other visuals and you're
getting a lot of enhancement on that so
start exploring that it may give you
options which you have in other visuals
so it could act as a replacement of
those visuals the next uh visual which I
want to discuss here is card visual very
simple visual so let's add a new page
and from the build a visual I'm opening
the Builder visual pan this time I
closed it so I opened it by clicking on
build a visual
and in the Builder visual we have this
is card visual we also have a new card
visual which we'll learn after we learn
the major because we wanted to create an
icon measure for this and this visual is
also available here in the insert of the
Home tab so let me click on the card
visual we do do have a multi row card
Visual and the new card visual but let's
focus on this so in the card visual
let's drag a major and you can have one
mejor only at a time so I drag net then
if I try to Dr margin and it will
replace margin so I can have only one
major so I'll have net here now I'll
open the format by clicking on the
format and we have the size and the
position which is coming because we
draged versus what we how much size we
have given padding is for the top and
bottom if we want a tight fit text then
we can reduce the top and bottom spaces
background we can switch off we don't
need a background and in casee you need
a back ground and along with the color
like you want your background color to
change let's say my margin is positive
then it should be green and red then you
can do it using that then we have visual
borders uh in case you need it shadow in
case you need a shadow on and off as
usual we have tried out in the pass
title now sometime you may like to have
title or you know want to have a
category label like let me switch off
the category label so you can see the
net is not available now here so there
is no net value here when I switch off
the category label so instead of that I
may like to have a title which is known
as
net and I may would like to do it is
Central align and then I can have my
card visual like this now you have the
title now you can have a subtitle here
but I don't feel a need for giving but
you have an option for that having a
subtitle then divider in case you need a
divider between subtitle and the value
and then when I go to the call out value
that's why I created a little bit of
space because in the call out value I
want to use none so I can change my
format here and decimal place I'm also
going to make it zero my major do have a
decimal place but I can change the
number of decimal place text WP in case
it is bigger then we can have a text WP
then category level as we switched off
but if you want you can have category
level then you need to give a space
according to it I think both are not
needed you can have the font italic
underline in case you need that again uh
we have FX like basically the name
should change based on on the
conditional formatting let's say if the
net is passing some value we want to
have the label have changing its color
or call out value changing is color so
you can see these FX option is there in
the call out value this is there in the
category value category label it is
there and as well as in the background
also this same thing is available title
also it is
available text color background color FX
option and background also we have FX
option in means all these we can use
conditional formatting to change these
color so what I'm going to do here is
I'm going to disable again the category
label this looks much better and what I
can do is I can copy paste this and in
this new one instead of net I'll bring
in Gross and it has taken the same
properties so this is a trick that you
create a card Visual and set all the
properties and then duplicate it for the
s similar measures and use that in such
cases you will require lesser changes in
the new card visual which are coming in
and you will be able to use same set of
properties in multiple card visuals
finally go ahead and change it and now I
can use gross as a title here in this
manner you will require lesser amount of
work to format all your card visuals
there are certain time we can do multi
select some of the common properties are
visible and you can change those so that
is also you can do a faster formatting
so this is the card visual for you the
next visual which I want to discuss is
the multi row card Visual and what I'm
going to do is I'm going to add that on
the my card visual page so I opened
again my card visual page and this is
the multirow card visual here in a
builder Visual and it is appearing
here I can make it little bit bigger now
as the name suggest it's a multi row
card visual so one thing which comes to
my mind that I can have multiple
measures okay so let me copy paste it
duplicate it and let me see can I have
brand or category also as one of the
field I can have category 1 Category 2
Category 3 category 4 these kind of
values and so I can have a field as well
as a measure along with that so let's
start formatting the and see what all
the formatting options we have the
movement I used categorical field it
seems like I'm getting only vertical
here I was getting horizontal also so in
the first one let's add few more and see
is this is the the style or can we
change it seems like it do can do some
kind of adjustment but let's see how
much control do we have I clicked on the
first one and I'm going to change the
properties of the first one again the
background is something which I don't
require visual border again we have
learned in the past we don't require
that shadow we don't require title is
definitely you can if you required you
can call it
kpi
kpi or
kpis then again bold italic underline
text color you can do subtitle if you
require divider in case you need a line
between
these spacing then let's go to the card
so card we have a style which is top
bottom
left right these are just alignments if
you look at it so you have styles your
background your padding padding between
these things asent bar bar is something
which is available here basically and
want to remove that you can can remove
it and let me do a little bit of
adjustment here and that's where the new
card visual is much better here compared
to this one because as you can see not
much options are under control on the
design in case of uh the kpis and that's
where the new card visual is going to be
a better option which we discuss in
sometime now let me go here uh in this
one and as you we have size visual
border Shadow title call out values then
category labels is something which I
would like to disable now if I disable I
will not see gross and anyway here I I
don't want to see gross again and again
in this one but if you I want to have
category label I can have conditional
formatting that can change the color so
here we have the conditional formatting
options on call out values and call out
value is nothing but your actual value
so I can make it bold so that you
understand this is what we call call out
value category label youve seen this is
what you call category
label and we have conditional formatting
available at the call out value level
and category label label here I don't
need the category label so I'm going to
hide it but definitely we can use
conditional formatting so we can go
ahead and say okay we need the
conditional formatting based on let's
say discount percentage and we have
discount from 0 to 25 maximum or 35
maximum and we'll say okay and as you
can see the text has color but all the
colors are very nearby tell you a better
way to know the range so go here and add
the discount percentage so you can see
the entire discount percentage is
between 22.8 n and
23.4 so what I've done basically I set
up the value between 225 and 235 and try
to keep it but as our values are pretty
nearby you will see that you know most
of the values are having color which is
very near to each other because these
values are very nearby or we could have
actually done what on the margin
percentage if you take margin percentage
basically uh you have we have a little
bit bigger range but for categories we
don't have so these kind of challenges
can come if your ranges are very nearby
so in such cases you can use use field
value base or rule based and call out
explicit color which can differentiate
that we will learn little bit later as
you might have seen that I added
discount percentage and margin
percentage also I can add here at this
moment it is really important to know
what category label it is and I have to
now enable the category label if I want
to show it so in the previous case the
category label was not uh required when
I only have the one value but now
because I have multiple of them it is
required that I have the category level
multiple purpose so some of those
purpose may not be easily served by the
new card Visual and one of those purpose
is this purpose where I have a category
and I then I display these multiple
Majors below it and this kind of display
is something very specific to the
multirow card this is multi card visual
for you so the next thing I want to
discuss uh filter pan with you and
before going to the next visualization
which is basically slicer I would like
to discuss filter pain with you because
how filter pain applies and house slicer
is going to be a little bit different
from that this is something I want to
explain what I've done here is basically
from different pages which we already
created this is Matrix visual this is
the tagged bar visual this is p Visual
and this is table visual these are the
same visual which we have created in the
past some time back in the other pages
and from there I copy paste it and
resize it let me open the filter pan now
now let's try to understand what is this
so now when the no visual is selected
you see filter on this page and filter
on all page and you don't see any value
inside it but if I click on a particular
visual in this case when I clicked on
the pi visual you do see category margin
margin percentage as the filters which
is available means
both categorical variable and the
numerical variable which is basically
the majors Majors as well as the fields
or the columns are available for
filtering when I click on the table
visual you see what is be added so
typically what has been added is by
default available in the filters of that
particular visual we can definitely go
ahead and add a few more values now let
me come to this particular visual in the
category Visual and if I want to filter
something I go ahead and filter this now
as you can see there is no impact on the
other
visuals I'm filtering a value and there
is no impact on the other visual when
I'm filtering from the visual level
filter so visual level filter only
impact a particular visual then the
second thing I'm seeing some Majors also
like margin margin percentage here in
this visualization so let me go to this
column
net and let me say the value is
what are the options I have so in the
net I have option is less than is more
than is blank Etc so what I'm going to
say here is basically if you see I have
values which is basically 1.3 million
1.7 million 1.8 million 2.5 million so
let me say value is greater than and I'm
going to write down 1.5
million so this is 1.5 million value
basically and I say apply filter so now
you can see the it is getting filtered
based on the value one most important
thing which you have to remember that
you can only use major filter the filter
on a measure in the visual level filter
only so you can only filter measure at
the visual level now there is one more
which you can use here and for that what
let me do is let me simplify this table
visual I go to the table Visual and open
it build and from there I'm going to
remove category I'm trying to simplify
it and when I go to brand
actually instead of basic filtering I
can do the advanced filtering just like
I have done in the text majure where I
used Advanced filtering not the basic
filtering so the basic filtering is
basically the values I can select brand
one and I can also select brand 10 Brand
11 that's my basic filtering the values
filtering then you need Advanced
filtering so in advanced filing I can
have contain uh does not contain but I
have very similar so I can say Okay
contain one and apply all those which
contain one will come
now as you can see in the contain I can
have contain this or this there are only
two options but if you need multiple
contain what you need to do so in case
you need more than one values in the
advanced filtering what you do is go to
the basic filtering let's say I need
three conditions so check out three here
and then go and say advanc filtering so
you will get three conditions there and
now you can say is and does not start
with or start with so and and or
combinations you can create so we can
say is brand one or is brand 10 or is
Brand 11 that's the three values
basically in or multiple selection means
that add otherwise we can say
or contains or start with we say or
contains let's say
two either it is brand one or brand 10
or it contains two we got a different
combination in this manner you can have
multiple conditions and and with the
Eraser with the help of the Eraser here
you can actually remove it so now you
understand the basic filtering selection
of values Advanced filtering you have
lot of options and the options would
change based on whether it's a number or
whether it's aing data type you can have
like contains does not contain is not
blank blank is really important because
is blank or is not blank or empty values
when you don't have the values it is
going to help you out now the Third Kind
of filtering which we wanted to discuss
is the top end and the that is because
of which I actually I also removed the
category because I want to explain you
this easily so you have something known
as top end filter in the top end you can
specify I need five now five based on
what let's say cogs discount margin
margin percentage let's say net I'll
bring in net here now remember right now
you are not do net here but I still
based on the net I want to filter and
I'll say apply I ask for top five and
you might be surprised why it is not G
toet price the reason for that is this
quantity because the sales quantity is
unsummon summarize so I'm going to
remove it and now you're only going to
see five properties I don't have net
inside this visual but still I can do it
so this is top five based on net I can
change it based on margin percentage or
this percentage that percent I can only
have one one such thing because if you
say I want let's say State also here you
can add a state as a visual level filter
but if you now wanted to do let's say
top end you can only apply one top end
filter so you can't apply more than one
top end filter if you want that kind of
stuff where you have more than one top
end filter then you have to go ahead and
write down a top and major or you have
to write down a rank and then you to
filter it so top end and the major
filters are visual level filter
properties so visual level is something
which only filters that particular
visual see anything I'm doing on this
visual is not impacting any other visual
you might have seen the entire exercise
which we have done there's nothing
changing in other visual now what we're
going to do is let's go ahead and
continue with this these visuals will
keep as is so this is filtering on
category this is filtering on brand and
what we going to do is on the page level
filter now I'll go to the page level
filter and let me bring in a brand on
the page level filter this is Page level
filter and I select brand one now
there's no brand one here we don't know
which whether in this category brand one
are appears or not we definitely no
brand appearance here and their Valu
should change I click on brand one now
the brand one does does not appear in
that particular set of categories so it
disappeared here brand one why you're
getting brand one here the reason is the
moment I filter the page
data my top five got adjusted to that
and because I only selected brand one I
can get top five in that when I add
let's say Brand 11 brand 12 brand 13
brand 10 brand two I get a new top five
based on my selection so that's where
the top end filter is working and that's
why we have brand still there and you
can see other places we have more values
and these values continue to change
anything which you apply on the page
level is going to filter all the content
of the page now one of the limitation
which the filters have and that's where
we are going to have slicer that I I
can't stop the filtering of this visual
when I apply the page level filter so
either I do visual level filter which
filters the visual or I filter all the
visual I cannot stop my filter to
interact or stop the interaction between
a filter
of the page level or filter at the all
page level which is below I cannot stop
its interaction with any of my visual
which is available in my page now at the
page level filter we have basic
filtering and advanced filtering in
advanced filtering because I selected
multiple values it's giving me this
option but I can erase it again based on
what I select I selected this on brand
so I can have contained is not blank is
not blank is empty does not contain so
let's say do not start with b and we
don't have any brand which which is
doesn't start with B all the brands
start with B so we will not have any
value we'll do one thing we'll remove
this filter all together on the brand
and let's bring in state from the
geography at the page level filter and
here Advanced filtering is little bit
interesting because then here we can say
let's say start with n New York
NE you can say we got New York as the
state level and then there are few more
State like New Jersey and New Mexico
which start with new so it's also
possible that the categories are not
having that kind of data so they are not
getting the values so we are able to
filter the values so not now what I'm
going to do is I'm going to erase these
values and let's go to the all page
level what's the difference between this
page level and all page level so we
understood that visual level is only at
visual page level is going to filter all
the visuals on the page but if I bring
something at state
level and let's say I select laska it's
filtered the everything in this one go
to other page
this page is also
filtered what this page this page is
also filtered so everything is Alaska
here we said no no no how do I make sure
that it's only the multiple page level
which filing so we filter Arizona here
and then we go back to the filter pane
page and Arizona is filtered here you
say it may possible that the page level
is filtering also on all the pages not
this one so let's experiment let's go to
the page level filter again this is
filter on this page and let's go to the
basic filtering and let try to filter
let's say Alaska and Arizona now this
page is Alaska and Arizona but if I go
to this Azor map and you can still see
all the values okay you say very good
all the and you don't have a page level
filter also here you can you can see
this there is no page level filter this
all page level is all fine okay let me
go ahead and un check this and let's
select Alaska I select Alaska come back
to the filter pan and I see only alasa
value here remember we have two values
selected Alaska Arizona but the all page
level filter is restricting it to Alaska
so we are only getting the value of
Alaska and the cities of
Alaska in this manner what is happening
is basically we are able to filter at
different level visual level page level
and all page
level with this now we will go ahead and
learn
slicers now slicers are at the page
level but there is a feature sync slicer
which can make them available on
multiple pages so we have to learn that
we will now explore slicers what I've
done basically is I already created a
page where I
have taken the visuals from the older
page and when we was doing the filter
pan these are the same set of visual
which were there I removed visual level
filter from the category uh pie chart
and I kept visual level filter as you
can see top five brand on the table
level and I created a little bit of
space here so that you know we can use
the slicers now with we will use one
property interaction here which I'm
going to Deep dive into the details
later but we will be able to understand
the slicer functionality better if we
understand that how the
slicer Behavior can be changed using
interaction to add the slicer we have
two slicer options both available in
Builder visual as well as homage insert
so we will open the homepage insert and
if we scroll down we will be able to see
both the the slices the new slicer and
the old slicer as of now we'll start
with the old slicer and then we are
going to go to the new slicer also if I
enable the build visual region again we
have the new new slicer here and we have
the old slicer here they are not at this
nearby place they're little bit far away
but you have the two of them here the
first thing which you want to do is we
want to use this old slicer and so if
you click on empty space and click on
the new slicer you'll get it in empty I
would start by filtering the brand so I
can simply drag in a slicer and then I
can drag in a value field value here and
I can get a simple like this one and
this is basically categorical because of
that the slicer has come like this and I
can actually select values like this if
I click on another value it's going to
remove the previous value and select the
next value now if I want to select
multiple I can click with control we can
change this
Behavior with control I can select
multiple values control again control is
present right now when I'm doing all
these so this is the first look now
there are tons of format available with
this one also and then we can create the
hierarchical sler also so basically
let's look at the properties and then we
have to do multiple versions of this
slice survey so this is size and style
and padding which is very common
background we have seen visual border
and Shadow these are the things we are
not bothered about title is something
which if you want you can add it now
brand already is available as a slicer
header which I can remove if I want
title Now understand there is something
known as slicer header the moment I give
it it comes as a brand here and then
there is a set of properties for that if
I don't need I can create a title which
is separate than slicer and the title
can also be a function driven okay so I
can write down brand and then I can get
it based on a major and then there's a
conditional formatting also available
let's say in this one I want to write
down the set of selected values on the
title so I can do that we will once we
learn little bit more about the majors
we will be able to create that kind of a
function which can give all the values
on the title then we have the slicer
setting now this is really important
this is something which we right now
seeing we call it as a vertical list you
have tiles basically the tile will
comeing something like this and that's
why I kept little bit space here and
make it so you have the tiles here and
then if there are more values there
would can be horizontal scale we have
the horizontal one so this is style
previously this was known as orientation
horizontal this is style and if I click
here as usual it's going to filter the
values and with control I can click on
multiple
Val so this was previously known as and
if you watched the last year video this
is known as orientation horizontal then
we have a drop down we can again adjust
it so drop down is something which you
will not see the values as Styles as
well as the vertical you will have a
drop down and when you open it you will
be able to see the values you can create
Slicer in any of such ways so let me do
one thing let me duplicate this
one and I'll change it to
category so instead of brand let me go
ahead and and this is really good
feature you go to the arrow and then you
go ahead and change it it get changed
and this one we can I'll keep it as a
tile okay so smaller value tile is
better option let's look at the
selection option so we have a single
select means if you make it as a single
select single select here is not going
to make any difference but the only
thing is even if I press with control
it's going to keep the single value but
if you go ahead and do a single select
here let's say on the this kind of
visual which is drop down or tile what
would happen so what we let's do one
thing let's have one more here make it a
littleit small let's adjust the brand
here and let me do one thing let's
create little bit more space deleting
this
visual your brand let's duplicate this
copy paste and let's create a little bit
bigger visual here and this I'm going to
bring in from other dimension so let me
bring in state here I removed everything
and now I'm going to drag State and
definitely because the previous property
it retained it dropped down I'm going to
change it to Vertical list what happens
when I make them single select what is
the difference so here we don't see any
difference because even if we click with
control click the only thing is
selecting one value the look and feel is
having no difference when I go to drop
down so this is right now my drop down
and if I go to the selection and make it
as single select on you can see it
becomes radio buttons it becomes radio
button and there is only one value you
can uh select so if you want to select
mult all and single select brand then
you can watch my video Single select
with all that will help now what I'm
going to do is I'm going to switch off
the single select and I'll go to the
brand Visual and now here I'll make it
as a single select as on and once I make
the single select on you can see that
this is how it looks like so the
vertical list and
the drop down has similar kind of
feature we I'm again going to make it as
a toggle of the single select off and
these properties have changed over a
period of time in last one year so those
of you are watching the older videos and
maybe think it's l bit different yes in
2023 we have lot of these UI changes lot
of renaming has happened with the new
format pan with the on object
interactions the consolidation of the
properties has happened in the different
places so that's why you will see all
these things with a little bit different
name like we have this single select
option now if I toggle this option I
will not be able to see multi select
option and select all option these are
few of the changes which we have got as
part of the
2023 before I tell you more about multi
select let me case you how to use select
all so I can enable the select all and
in this state visual you can see now I
have the select all option and once I
click on the select to I will get all
the values selected what I can also do
is I can click on select all and it will
uncheck all the
values in the same manner I can go to
the brand slicer and again there I will
be enabling to select all once I enable
the select all it will be start showing
me select all option inside the brand
and I can check and uncheck all the
values using the select
all
and how do I erase the values so let me
make it a little bit bigger so if you
are not using slicer header then you
will not get this erase option see if I
want to erase if I have slicer header
then I'll get so the disadvantage of not
having this slicer header is that you
will not get it title is not going to be
a great option for us header seems to be
better option because we got a eraser
button we know the title is not a better
option so I remove the title and now I
if I select more than one values with
control and then I can erase it so I can
clear it off so that's the advantage of
having the slicer header there is one
option which we have not discussed and
that was multi select with control and
this is not visible completely so I can
make it a little bit larger so you can
see this so multi select with control is
the property which um if I disable it
which is right now on then what would
happen is basically if I now select I'm
not I have not pressed control but still
I'm able to do multiple selection if I
don't want to select anything then I
have to either press select all and
unselect all or when I selected multiple
venue I can use eraser
button come back and erase all the
values so same way you can have this
multi select here again we have to
enable the slicer header if you need the
Eraser so I enabled the slicer header
and then I can enable this one and I and
disable the title now I can select
multiple values without pressing control
and use the Eraser button to remove all
the
values but otherwise if you select let's
say if I selected these three values now
if I press control I continue to select
the same number of value so I click
again on that value to uncheck it so in
powerb typically the selection is when
you click first time it get checked and
when you click on second time it get
unchecked so in this manner you will be
able to check uncheck value and had
different kind of styles options on the
slicer now let's look at the other
properties like you have the Border
background padding icons all those
things you have adding icons and
background and values so now let's go to
the values let's check what options we
have in the values by clicking on this
state so that everything is we have a
bold value we have italic we have
underline if you want those we can
change the color but I do usually don't
prefer it because I would prefer these
things to change by theme uh there's a
border option so you can have a border
top bottom right if you want you know
values to have a border then you can
have it top you want you can on the top
left you want you can have that right
you want you can have or you can have
all of them then you can choose the
color for the border and then you can
have background right now there's no
background but I can go ahead and put a
background if you need it or we can
simply give a white background or we can
say reset to default so it will go back
to the original value now this is what
we had when we have one value let me go
back and bring in the build a visual we
can have this slicer having more than
one Fields also let me bring in city
that's where we start calling it heral
slicer so now you have the hierarchy and
you can open it and you can see the
multiple values now I can either select
the complete State like this or I can
open like the California I can open and
then I can select individual value from
the California so both is possible and
based on that it will work now remember
we
have check the option select with
control so that is why the moment I'm
clicking it is selecting multiple values
and this is useful when you have the
related values and you say okay if I
select state I want to select all the
cities this gives you flexibility to
have more than one into one slicer
instead of having dependent slicer you
can have this so typically what happens
is usually people say I want slicer one
to filter slicers to definitely if they
are from the same Dimension slicer one
do filter the slicer 2 but in this case
you have the values inside the the
second one so you have a better control
over it let me show you that example
where slicer one will the slicer 2 so
contrl C control V copy pasted it and
I'm going to remove state from this
slicer and let me go ahead here check
all and let me click only on Alaska so
City slicer is getting filtered by the
state slicer which is city state and I
can remove City from here now you see
only Alaska is selected and Alaska do
filtering the cities which we have now
Arizona is also giving Arizona City here
so slicer do filter each other when they
belong from the same table but if you
want that I I want one values inside
another one like a hery then you can
drag both of them into the one Visual
and then you have that kind of a tap
down selection which you can do and you
can select the complete state or you can
select single cities and pretty useful
especially when you have the month year
quarter all those things it is really
useful now what we have seen till now in
the slices was only the categorical
slicer let now let me remove this city
slicer and let me make space for the
date slicers I go to the sales table I
bring in sales date here and it created
a table visual automatically let me
click on the slicer the moment I click
on the slicer because this is date is
having the her is created the Hier
slicer for me and as usual I can you
know do those kind of selection which is
month year quarter and I can either
select let's say quarter q1 2018 I don't
have data I have data in Q4 of 2018 so I
can click there and can get some data
now here we know date because right now
it's getting hery and once we connect it
with date table it will not get later on
but we have an option where instead of
date hery we can actually go ahead and
say that we don't want to use the date
hery we actually want to use the sales
date itself it created this list visual
but there are more options now so I'll
open the format now again and let me
close few of them so it's still remain
bigger now if I go to the slicer
settings you have vertical list tile but
there are new options like between can
have date range
between we can have before before this
date so anything before three 0 2020 now
I have all the data before that but what
I can do here is basically I can go
ahead and ose this data and as you can
see little bit change in the data is
there there and if I scroll the more the
lesser the values are coming
similarly I have the after
slicer we have the drop down we the very
important thing which we have the date
other than the drop down is relative
date slicer you can say last one day
month year now my data is ending in
2020 so if even if I say one year it's
not going to come out and it is always
run based on today so I let I have to
say use three years in last 3 years I
don't have anything in last 3 years also
four years I have something last 4 years
from and look at the date based on the
date it calculated those last four years
the relative date so relative when you
go to this relative slicer when you
drill down to the year then there is an
option relative year or the calendar
year so now when I say calendar year you
can see the complete 2019 is coming when
I said relative it actually the rolling
four years which has come so in this
manner you can use relative date slices
also so you have option for days weeks
months quarter year and all those so
definitely it can help you like when you
say I need month calendar rolling four
months for the calendar or let's say
last 1
month now this is last one month but you
have option here next the next one month
and then you have this when you use this
there is a little bit different option
from next because you don't have the
calendar and this one differently this
is the reality so we only have the month
or day so this day this week this month
this quarter this year so you you can
use this and this is one of the best
options you can have in the date slicer
remember one of the problem with the
slicers that we cannot
default it based on a function means if
you ask me can you default it on today I
can't do
it there's no option actually can you
default it on the first value no I don't
have any option you have seen the
properties we don't have any option
let's go to the values even we don't
have an option here we do have an anchor
date option here we we don't have an
option here also in the values where it
can default using some major or a
function so relative date slicer can
help it you can initialize it on last
one month this month last week this day
this year this is one way and it will
automatically keep on changing and this
is really helpful but if you want to
save it on Max month on Max this and
that that's not good so best way in case
you wanted to save it on the this month
last month this year last year calendar
year or relative year you have to use
relative date slicer that's going to
give you that flexibility to save it if
you don't want to use it then we have to
create a column which is going to give
us values like today this month next
month and using that we have to
initialize which we will learn little
bit later when we create the date table
so you have the
slicers you know the different kind of
slicer and also you know the challenges
with default value and how relative date
can help here now there there are
certain time when you will have
challenges when you select certain value
and the value is not there can you
select the first value no it doesn't
happen like that so first value
selection last value selection little
bit more Dynamic default value selection
for the slicer is not available as of
now we may see these kind of future very
soon for the number slicers if you want
to create a number slicer you also will
get a between and all those options so
let me quickly show you a number slicer
and so let me go here and and bring in I
have quantities which are only three in
number and not
getting okay and let me create make it
as a slicer so I go to build a visual I
make it slicer I have only three values
It Is by default created a between
slicer then I can have the less than
quantity or equal to quantity greater
than quantity so I can say Quantity
greater than one I can say consider only
those rows where quantity is greater
than two the values are changing so we
have between before and after for this
one
so number slicer date range slicer
categorical slicer same slicer going to
work for all of them you just need to
change few
property we will now discuss the uh new
slicer so new slicer is available either
in the insert
menu under the slicer option or in the
build visual it is also
available I have enabled the build
visual now it was not uh enabled so I
enabled the build Visual and inside the
build visual this is the ler new new
slicer which we are going to explore
powerbi has changed a lot over last one
year the new slicer has been renamed as
tile slicer over the course of time you
can find it along with other new slices
on the build window you will see tile
slicer text slicer and the list slicer
text slicer and list slicer are added
little later after this video has been
recorded but we will cover them little
later so let me add a new page let me
close the reasons which are not
needed and in this visual first of all
I'll add the new
slicer now in the new slicer I'll need
the column so I can go to
the add data I can press the button add
in the add data and I can
add want to add
brand and the moment I add the brand it
gives me buttons for the brands like
this now by default it's giv me a 3X3
kind of a matrix I can
goer by clicking on
the format more options I can play
around with size as you already played
around padding border visual border and
Shadow are common one we can give a
title if
needed so title is already available as
a brand and then we have the conditional
formatting available for color and
background title can be aligned we can
have a subtitle divider and spacing this
is same for all those and we go to the
slicer setting we have option for single
select select all option you want to
select all option that is also available
here so those options are available
we'll see when we want to use the select
all option and in the shape we right now
it's a rectangular shape but we can have
rounded rectangular shape like this so
they are now rounded rounded
rectangles then rounded Corner we can
remove the little bit of rounding by
making it less or you can have custom
style means you will be able to decide
how much the top corner should be like
if I make top Corner round little bit
you can observe
here then this is top left corner then I
can have top right
corner now you can observe here in this
manner I can control but actually I
don't want to do individually so I'll
keep it like customize option off and
I'll keep rounded rectangle and then we
have the tab both top all those options
are available we can play around with
that now we go to the layout this is
important one right why we are seeing
this 3x3 because we have three rows and
three columns the max number which you
can give here is 10 so you can have 10
rows
or you can have 10
columns what I'm going to do is I'm
going to say row is
one I'll have columns as 10 now let me
try because I have 13 Brands so can I
give let's say 15 you can't give 15
let's try 11 you can't give 11 so you
can maximum have 10 after 10 there would
be a pagination for overflow so you can
have continuous scroll means you can
have a scroll or you can have the
paginated I will make it
paginated you want vertical means this
Arrow would be here you can see there is
an arrow here I when I went down and if
I went up there's a
down so I can keep it horizontal because
I'm keeping it like this then I can make
it little bit smaller like this
now brand header look title looks little
bit bigger so we can make it little
smaller now usually I don't change the
font as I told you in the past but in
this case I'm manually changing it or
maybe I'll just switch off the title I
don't need a title actually so I'm I
have removed my title so now these this
is my brand now what I can do is let's
create a visual and we can copy paste
one visual from the other pages so we go
to the slicer page and from there we
copy this visual contrl C come to this
page contrl V now if I filter brand one
I'll get brand one you can click on any
of the brands now let's go to the lier
setting and single select is by default
on I'm going to switch it off and I'll
also add show all so now with the
control click I'm able to select
multiple and I can say select all also I
say select all it is all selection is
there and in this visual we have lot of
settings around you know H selection and
all those so when you go to the buttons
here way down you have the default
setting you have the H setting you have
the Press setting you the selected
settings so you have so many settings
out here we we can do those settings
then you have the call out value Val so
call out values is by default default
I'll change the color so that you can
know which what one what is call this is
the call out value the value which is in
the middle is the call out value I'll
and the best way to do is and then I can
make it middle align so you can again
see the difference here let me do the
alignment little bit here so that you
are able to
differentiate now pay attention the
small small adjustment are there when I
change the alignment unit of display I'm
keeping as whatever it is and then show
blank as hyphen iph there is a blank
value and then there is a label option I
can switch it on and I can add another
column let's say I want to add
category so you can have little bit more
information in these buttons you can
have additional values so this is one
option now we will remove this option
label right now we don't want a label
and I switch it off so that it doesn't
take even a space now the option which I
want to explore is images the default
stage over stage selected stage we can
have different different places where we
can do this we can say add images field
here we can use a field for images now I
need to build a field because I don't
have but what I've done for this is
basically I have created few Mage which
Ive loaded to my GitHub account I won't
like to show you that
first so in my GitHub account I have
this icon folder where I've created few
icons which is 1 2 3 4 5 6 7 8 9 10 11
the these are just numbers and I also
created few images here so I have brand
images which is from B1 to
B16 then I have category images which is
13 then I have few human images also
which are faces we can use for customer
so I'm give you the link and you will be
able to use it so what I'm going to do
here is I will go to brand and this is
known as B1 B2 B3 so I can go to any one
of these you can copy this and replace
the blob with the raw go here and you
replace blob with the draw and if you
open the you will still be able to see
the image I want to use this but
understand one thing I want to make this
little bit Dynamic so I'll tell you how
to create such a column so I I'll go
back to my powerbi and in powerbi I'll
go to the table View and inside the
table view I click on the item table the
item table is already open I'll click on
that and you have this option for new
column under the table tool when you
click on the table you get the table
tool and inside that one you have an
option new column I'll click on the new
column and I'll call this column as
brand
URL now in the brand URL I'll give this
URL but it would be same I want the
after B the changes should happen so I
close my string at after
B now I don't want this one coming from
my image I want it Dynamic so between
the two strings I can concatenate by
them M perent but from where I'll get 1
2 3 4 5 6 I put 2 m% and between the 2
m% I can again create one more and I'll
here I'll take brand ID so what would
happen with B without space brand ID
ment again concatenating the string ment
concatenate the strings do PNG now let's
see what we get so we got a URL here and
this URL should work similarly I can
create a category URL we have category
C1 C2 C3 and the folder name is also
different there but let me go ahead and
add a new
column paste this and let me call
it category
URL I'll do some changes here first of
all this is not brand this is category
and this is
C same way I can develop a logic for
human for customer I only have 20 images
so you may have to develop some logic
that you keep on using those 20 images
these cannot be brand ID here I need to
put category ID
so these are my two URLs so now this is
category C1 C2 C3 C4 and this is brand
URL now for both these column what we
have to do is click on the column in the
data category you have to call it as
image
URL this is image URL okay same way for
category click on category Ur and into
the column tools you should get column
tools and inside the column tools go
ahead and change this data category to
image UR
both of them are now image Ur now let's
go back to our visualization we got the
images inside the image field I'll click
on add
data item and I'll click on brand URL
now you can see images here now we need
to do a little bit of adjustment I'll
I'll make I made it little bit larger
but I can go ahead and decide the
transparency saturation blur
position position could be
left position could be right
and we need a different kind of slicer
for that so this we will keep top or
bottom only set as background we can set
it as a background so this is setting
for the default one you can change the
setting for the hover pressed or
selected you can change those things
settings but I'll keep it default what I
would like to do now is I would like to
add another slicer so I'll add a new
slicer here and in this slicer the new
slicer I'll make it little bit vertical
after I add the column so in this one
I'm going to use add data I'll go to
item and I'll add
category I have the categories the
settings which I want here is basically
I'll go to the slicer settings uh I
don't want single select I want multiple
select I don't want show all option and
I'll let you know why I don't want the
show all option I go to the shapes I
would like it little bit rounded so
rounded rectangles and I'll I'll reduce
it to it's say 15 I don't want to round
it one also no custom option layout I'll
go in here I'll say five rows and I
don't want too many columns I only want
one column space between the card I'm
going to reduce little
bit then overflow is continuous scroll
no I want pagination and vertical
pagination or horizontal let's keep it
horizontal so right now we don't have
any kind of overflow so we can keep it
scroll also continuous scroll there's no
need basically we have given the five
now we'll go to the call out values
we'll keep call out values as is as of
now let's go down and in
label if you want the label we can
enable but label what happens you can
add additional field which we don't want
here we don't want subcategory or
something like that I'll go to images
and here I want to add an image so I'll
use
add data and inside the data I'll go to
item and I'll use category now I got the
categories here this is first category
why it is first C we actually need a
major but we are using a column so we
can only use First
I'll do a little bit of adjustment and
now what could happen basically here is
actually might not need values like
category 1 2 3 4 5 in your organization
it might be possible but looking at the
color of the brand or let's looking at
the logo you are able to decide and that
is the use case I want here so I
actually want to switch off the values
now there are only icon this is category
1 this is Category 2 Category 3 this is
category 4 Category 5 this is what I
want so I with the logo itself I'm able
to to decide I'll go down the button
properties now let's look at button
properties fault H pressed and selected
values we can do different different
settings right I I'll keep it on default
padding you want white padding narrow
padding we can use narrow paddings
border I don't like but border on this
button at least I don't want a border so
I'll remove border these images are good
enough we come to Shadow let's have a
little bit of Shadow here but the
challenge with the shadow if you want to
have Shadow here it takes a lot of space
and then you have outside or inside
Shadow based on that it is going to give
you the shadow so while the option is
pretty good but because I need a lot of
space I'm not going to use the shadow
option glow is another the Shadow and
glow options are something which
actually require a little bit of space
and then you need to go ahead and you
know choose the colors and all those
so for that outside and inside is the
option Center bottom center right top
right and all those options are there
for the glow disable that as ENT bar is
one option where you will have a bar in
front of it so every line you can see
there's a bar this bar if you need then
you can enable the ascent bar which
which also I don't need and let me say
reset to default so I I have reset it to
default the only thing which I don't
need is the Border in this manner now
you can see that we have a different
visual experience here we don't have
even names and in this case we have the
names and the selection is highlighting
you might have this is actually multiple
select we have to check and uncheck we
can have select all it's all selected
and deselect all and in this case you
can only see a boundary basically very
so when you use these kind of stuff
maybe we would like to change more
properties when it is selected so what
you can do is here it is default when it
is pressed do you want to do something
okay so want to increase the
transparency or you saturation something
you want to do when it is press so let
me increase the transparency and press
now let me go ahead and press
it then when it is selected so I'll go
ahead and say saturation is less and
then transparency is more saturation is
less these are the seating in this press
so now when it is pressed it looks
little bit different so these kind of
stuff can help you now when I'm
selecting you can see the
difference so these things especially
when you are only dealing with the image
you need that because so when it is text
you will be able to identify because of
the text highlighting but you need it
when it is only image you need some kind
of change in the Highlight as well as
the saturation so that you can identify
that there is a difference when we are
selecting or pressing it so this new
slicer allowing you to give a visual
appealing experience and as you can see
we can use images to make it be more
intuitive let us now discuss the newly
released feature of tech slicer Tech X
slicer was released in November
2024 so let's jump onto the release
notes this is the powerbi November 2024
feature summary and then we scroll
little down you will find inside the
content we have a new visual the visual
is texer and it came as a
perview now let me click on that and
we'll reach to the notes these are the
notes of the new visual the text slicer
introducing the new text slicer now
available in our core visual Gallery
this oneth brings the arrival of the new
text Slicer in powerbi offering new
possibilities for both users and
organization how to enable you have to
go to the options and setting options
preview features and text slicer visual
you have to enable it using that I'm
going to Showcase you that setting the
Tex slicer works by allowing user to
input specific text that act as a filter
targeting a design data feed by entering
the design text into the slicer input
box the slicer effectively Narrows down
the data set to display only relevant
information that contains the enter text
the functionality is particularly
helpful for handling large data set
where quick and precise filtering is
essential for Effective data analysis
and presentation
now how to create you will get this new
text slice and you can drag it to the
canvas to filter the data set add a
field from the data model to the to the
Field Val to establish the text slicer
functionality allowing it to filter the
data set based on the user input simply
add text to the slicer input box select
apply icon or press enter the slicer
immediately filters the data had
displaying the visual results the new
text slicer introduced powerful
customization filtering tool for powerbi
improved user experience and unmatch
customization so let's jump onto the
powerbi to explore this feature out I'm
here on the powerbi and before I explore
that feature of text slicer let me
showcase you how to enable this feature
go to file options and setting options
it will open a popup inside the preview
feature when you scroll down you will
see new text slicer visual feature you
have to enable that click on okay if
you're enabling it for first time as I
already enabled I'm going to click on
cancel you might have to open a new file
or close and open the file to get this
slicer inside your
visualization I'm back onto the powerbi
report View and let me add a page to use
this visual so let me click on the plus
button and here what I'm going to do is
first of all let me create a a visual
want to create a table visual brand wise
net brand wise
net let me converted into a table visual
now I would like to add the text
slicer here in the text lizer let me add
the brand from the item into the fields
by bringing the into the
fields here let me type one and press
enter and as you can see all the branch
that contains one has been
filtered I clicked inside and I'm now
entering 11 and let me press enter now I
am getting data only for Brand 11 or
everything which contains 11 again go
back and let's say WR 10 and let me
click on this Arrow which is apply
button I'm getting everything which
contains 10 and in this case it is only
brand 10 and we use nine and arrow
apply I got brand n same way I can
filter other things on the three dots
you have the options like export data
show as table Spotlight sorted sending
descending and format you have a clear
button to clear the selection you will
get all the values now I would like to
create a dependent slicer on this text
slicer which will get filtered and based
on that slicer I'm going to filter the
table visual ual or other visuals let me
add one more
slicer let me add brand to the slicer
and make it as a list
slicer if I go ahead and try to filter
one in the text slicer it will filter
both cable visual as well as the brand
list slicer but I only want it to filter
the brand list slicer and based on that
I want to filter the table visual for
that we have to use edit interaction and
feature or click on the any of the
visuals and go to format enable edit
interaction this case we have to disable
brand text slicers interaction with all
other visuals other than the brand list
Slicer in this case there are only two
but let me add few more so that you
understand it better let me control C
control V I create two visuals now this
visual is filtering let me Al so change
this visual to
category let me disable B text slicers
interaction with this new visual also
brand Tex slicer as of now is only
interacting with the brand list slicer
and it is not interacting with any other
visual on the page as of now so let me
start playing around with this let me
end two the TX slicer as of now is only
filtering the brand list slicer and when
I filter the value in the brand list
slicer it is going to filter the other
visuals in this manner I am able to
create a dependency of a search on a
slicer and then I'm able to use that
particular slicer which is filtered by
the search to filter my other visuals in
this manner I able to create a search
experience along with the list
experience let me enter a value one and
click on apply and once I do that I will
only be seeing value which contains one
in my brand values and using those
values let's say I can select brand 10
and 11 and that will filter my
visualization so what is happening here
is I am able to create of dependent
slicer on my text slicer and then I'm
able to use that dependent slicer to
filter my values of all other visuals TX
slicer as of now support only one f
means either I can have brand or I can
let's say drag category and once I drag
category it will only filter category it
cannot filter brand and category
together so I can have one at a time in
the past on the similar situation when I
use the text filter which is a very
similar slicer to the text slicer we
have concatenated the values of all the
columns of a table into one column and
then we have used that particular column
to fill filter the values I'll go to the
table view I go to the item table and
here I'll create a new column click on
any of the column and you will get the
column tools and inside the column tools
click on new column once you click on
the new column in this new column we can
append multiple Columns of the item
table into one column and then we can
use that for filter so let's create an
column appended
column and here we can have
brand
m% is m%
category
m% is m per a now we got a combined
string I could have added all the
columns but right now just for
Simplicity I added only few columns now
let's go back and inside this text
slicer instead of brand let's add that
appended
column and let me do one thing now let
me enable the interaction this visual
let me start filtering out now as you
can see with the category one what it is
all fitting I have added this new column
A pend column Here and Now what I've
also done is I have enabled the
filtering on both the visuals and I'm
going to remove this visual now I don't
need this additional for understanding
of this so let me remove this now let me
start filtering let's say I enter a
value let's say 10 when I enter 10 I see
both brand 10 as well as brand 2 I'm
seeing brand two because 10 can be
anywhere it can be in brand it can be in
item so in this case it is coming
because of item we can add a new visual
on item name and we can see that these
are the items which are getting filtered
because of 10 it may be anywhere in the
string broad category or name
anywhere in this manner you can work on
multiple columns but that's still a work
around hopefully I get supported with
multiple columns will be able to use
that so this is all about the new text
prer why don't you go ahead and try that
out
now we will discuss about the list
slicer the list slicer was released in
October
2024 so first of all let's have a look
at the release notes of October 2024 so
I'm here on October 2024 release
notes and if I scroll a little down I
can see one of the feature is new list
slicer and this is under
preview so let's click on that and we'll
reach to the feature so first of all we
have to enable it so to enable it go to
options and setting option preview
feature and list slicer visual we have
to enable it let's look at the release
notes major enhancements are upcoming in
the image support label additional
conditional formatting option and
improve default style specifically
designed for erical layouts please note
new visual is in the early development
and we won't recommend using it in the
production permanently however this is
excellent opportunity to experience the
capability of this new slicer provide us
the feedback for the further Improvement
so it is still in the preview feature
the new list slicer can become hcal when
more than one field is driv into the
field data well this action will
activate additional formatting settings
specific to antical data some of the
advanced new slicer level customization
offering are selection shape layout
overflow St style selection icon expand
collaps icon and button style these are
the few attributes which has been
released with the new list slicer so why
don't we go ahead and explore it out and
for that I'm going to use N2 n12 file so
I'm here on the N2 n12 file and I'm
going to add a new page to explore this
visual so the new slicer I have already
added but let me tell you how I added it
go to file options and
setting
options options and setting popup has
now opened up inside that preview
features and inside the preview feature
you have to enable the list
slicer and then you can click on okay so
that you can use it some of the feature
require restart so you might have to
close and open your file again as I've
already added I'm pressing on cancel so
I'm back on my layout let me add the
list slicer it looks like very similar
to the normal slicer so let me doag item
R and you can see there is a single
select list which has been created here
now let me do one thing before I go
ahead and add certain additional stuff
let me enable the format for it in case
you are not able to see the format
option on the right hand side to enable
the format page you can get it from the
view view
format and then on the right hand side
you have another format option once you
click that you should be able to see the
format page once you see the format pen
you can start working on the properties
if you're visually selected so we know
the size and style very simple based on
your location and the size they can
change
then we have the padding padding uh
right now I would like to keep as is I
don't want to change it background in
case we want it to have a background
color we can change it and if you change
the color we need to make it a little
less transparent so that we can see it
but right now I don't need any
background color so I'm going to disable
it visual Border in case you need a
border and if you want to have the
Border you need to increase the light
and come out of the visual there you can
see the visual border
again I don't need visual border so I'm
disabling it in case you need Shadow for
the visual you can enable it you can
observe the
shadow below the visual and then for the
shadow we have various option like
outside and outside where bottom right
bottom bottom left right Etc again I
don't need Shadow as of now so I'm going
to disable it title we already have a
title as brand but we can use a major in
the title we can have different headings
like heading 2 3 4 on normal right now I
keep it as is we can have font color we
can have font name size Bard italic
underline and the text color for the
title we can also have a background
color for the title and the alignment we
can keep it let's say cental align or
the right align or left align Tex rep in
case there is a bigger title it should
wrap out every visual now can have a
subtitle so we can have a subtitle if
needed if we enable it we'll get
additional space for subtitle then we
can have a divider between the visual
and the title subtitle right now I'm
going to disable that also spacing
customize spacing if you want to
customize the spacing between the titter
and the divider but right now I don't
want to change it I can even reduce it
further to save some space now comes the
important slicer setting it is a single
select slicer you can see the radio
buttons I can make it multi- select by
unchecking the single select and now I
can select more than
one now importantly this visualiz a show
all so you will say that is there with
the slicer when we have the multi select
but even if I enable the single select I
have the select all is this property
only specific to this one or added to
normal slicer let's check that out right
away let's bring in the additional
slicer the normal slicer put Brown
inside it and let us see is that
property also changed for this visual we
go here to the slicer setting and we use
select all and then we enable single
select so you can see in the single
select we don't see select all in the
normal slicer but in the list slicer we
have single select along with the select
all so let me remove this normal slicer
or the old slicer and we can now enjoy
select all but does it work work to
check that out let me create a visual
brand
wise net
major now let me do select all
everything is working let me deselect
all brand one brand 10 Brand 11 brand 12
one more thing which you might have
noticed if I do select all and if I
uncheck brand one only one is getting
unselected so we have one deselection
feature also here so these are some of
the properties so let's go back to the
format pan again of this
slicer we are on the slicer settings so
we have played around with that now we
are very happy with the select all
option also then here the shape
rectangle shape rounded rectangle snip
uh snip tab both these are the shapes
which are available so I'm going to
leave them as is I'm not want to chck
but I would like to go to the layout
layout is fixed number of button is on
number of button sh is it and I can
uncheck that it it creates a little
compact UI space between the button if
you want to increase the button space
between the button you can do that but I
think right now it is fine indentation
now reverse
indentation now this will play a little
better role when we have more than one
intend the butter container that also
will play a little better role when we
have more than one when we create the
hercal slicer call out values the values
which we have if you disable the call
out value you not see anything we need
to have the call out value it means
these are the color for the values like
brand one brand 10 so font size bold
italic underline color transparency
alignment like we can make them right
align penter align left align all these
properties are display unit is Auto and
show values as blink and then we have
the layout vertical
alignments also there then we have a
selection icon which we can enable or
disable definitely we need the selection
icon what happens if we don't have
selection iton I click click on Brand 11
Brand 11 selected brand 12 but I'm not
able to see so better to have a
selection icon then I have buttons this
is also little important because the
buttons are not visible unless you start
grading a Bott once you have bot you can
see the you know buttons then you can
have fill or don't fill you can have a
shadow you can have blow you can have
Ascent bar on the buttons so with this
property you can create a button land of
a UI but definitely if you want to make
it as a button then you need little more
space for each one of
them so if I want to let's say have
Shadow now you can see if I made give it
little more space then I can have the
Shadow or you reduce the number of
buttons then you can also have these
things so I will disable that but these
are the various property you can play
around now let's take the next step by
bringing in one more
field to the slizer and let me bring in
category once I bring in category you
can see that I can open the arrow there
will be nothing on the select on but for
each brand I can have next level and I
can do the right now it is single select
we can switch off the single select to
make it multi select that's one more
change which has came in last one year
where if you uncheck the single select
it become multi- select so in this
manner you have these properties and now
you can play around the little more
properties here on the layout and on the
icon so especially expand icon now if I
go here and play around expand icon I
can go to the layout look at where is
expand icon right now it is on left look
at that Arrow now it is going to
WR look at the icon
here same way alignment we can play
around THS and the spacing all these
things we can play around with this list
license some important properties have
come in and powerbi is paying a lot of
attention to the visual property so here
what we are going to get is basically a
new visual experience which with lot of
properties which we can play around and
make it suitable for our use case now we
have quite a few kind of slicer we have
a normal slicer the we have the list
slicer which is previously known as the
new slicer or the button slicer then we
have text slicer and we also have the
list slicer so why don't you go ahead
and try the list slicer out we have
learned slicers and we saw slicer apply
on a page but in case of filter we do
had an option where it can work on all
the page and we have something very
simiz sync slicer is a process in which
we can sync a slicer on one page with a
slicer on another page now usually We
sync the slicer
which is having the same name or the
same table on the other page at little
bit later I'll also show you a way where
you can sync the slicer which do not
belong to one table means the slicers
are coming from two different tables and
they can have two different names also
but they are of same type like
City so let me add this page and here
there are certain slicer which are
applied and I have this visual copy this
visual need page two so can I can I get
the category slic can I go ahead have a
category slicer and if I filter
something here can it do filter there on
this first of all this is a single
select kind of a slicer can I do that
there's something known as s slicer
there would be limitations what is
happening on that select category two
and if I go to this page is it going to
be
category so there are couple of ways to
achieve syn slicer I'm going to tell you
both of them so one of the way is from
menu options where you go to the the
menu and use the view Tab and there you
have the syn slicer option that you can
use and the second option is when you
copy paste the slicer you do get an
option to sync you have to click that
option to sync and then it will get
synced automatically so let's start with
the first option and then there is a
known as we have insert and in the
insert we have we have View and inside
view we have sync slicer so if I select
this slicer it is telling me that I can
sync it in the slicer and the page two
we have View and inside view we have
sync slicer so if I select this slicer
it is telling me that I can sync it in
the slicer and the page two let me do
that so one option is think and second
is visible I've done that now I go back
to the Category 3 category 4 I come back
on the page two I see only category 4
enlarge it the slicer are getting other
way and easier way to do this thing
slicer is copy it contrl C and crl V it
asked for saying slicer you I want now
you can see that I select brand one I go
here it is I'm able to sync the slicer
Pages this is sync this is the old
slicer and the copy paste or using the
sync slicer paint which is available in
the view we can do that but can we do it
on the model new slicer where is our new
slicer our new slicer and I do the same
let me contrl c go to the page contrl V
is asking for slicer brand 10 I filter a
brand 10 here I go to the other slicer
it should show brand 10 because they
belong to the same table if I go to the
new slicer page is also brand 10 so both
the old slicer and the new slicer can be
you think either by copy paste or using
view think slicer only thing you have to
do is click on a slicer know where it
should be visible so in this manner can
sync the slicer and then they can filter
the data across the
pages so now we would like to discuss a
use case which is syn slicer across
different fields and these different
fields could be across two different
tables columns so typically the SN
slicer is for the same field so let's
say if I have geography City on page one
I have a geography City on page two I
want to sync them but this case is a
little different I want to sync the
slicer which is across two tables let's
say customer City and geography City I
want to sync them they may not have even
name a city they could be little
different name so we want to sync slicer
across two different field that's what
the main objective is for this one what
has happened that I have used a little
different file that's very common file
which I use for abstract thesis series
the file at GitHub which you can also
get from my GitHub account the file
follows the same model which we are
following in the learn power ba series
you will be able to relate with the
fields which I'm using in this art of
the video also so how can we do that so
to do that let's try that out on power
ba file so let me open my power ba file
so I'm here in my power ba file and I'm
using the generic model which I'm using
in most of my other videos so here I'm
using my common sales model which I'm
using for most of my videos and this
model contains a sales table join with
the date item customer and geography
table one to many single directional
join from Dimension to fact the same
model we are going to continue here and
here what we wanted to try out is is
basically I would like to add let's say
from the customer Dimension I have a
city and let me convert this into a
slicer I have a customer slicer City and
I also would like to add a slicer from
geography table which is city let me
change this also to a
slices so I have two slices which are
basically on City on different one one
is on geography City another one is on
customer City so if I select one of them
as you can see there is no impact on
each other but if I go down and add
let's say some Visual and in that visual
I'll take data from item brand and and
take a measure like
net now if I select something let's say
I select one of the city from here you
can see the data is changing if I select
another one from here you can see
changes I select from both of them may
not get any data because mostly these
cities are kind of similar kind of City
whether this is this page or let's say
if I even duplicate this page they are
on this page I would like to have sync
slicer so I want to sync the slicer
either on within the page or across the
pages so how do I do that because if I
select a value there is no way I can you
know think with this and if I go to
let's say View and if I I go to sync
slicers as you can see I have do have
option where I can sync it with other
page but I don't seems to have an option
where I can sync these different one
with this as you can see I can see the
slicer here there are two slicers which
I can see across different pages which
is visible this one city customer city
as you can see it is highlighting that
customer city is available in those
pages and I can sync them by clicking on
the value so if I do
this if I sync it across the pages if I
clicked on let's say Atlanta here and if
I go to the duplicate page you can see
that Atlanta
values but how do I sync these two SES
on the same page which are from
different dimension let's look at the
details of the sync slicers
again in the syn slicer what I'm going
to do here is I'm going to go to the
Advance option I've unchecked the
syncing right now I go to the advance so
let me give it as a name City
Dy so I've given it as a name c Dy and
let me come to this slicer and also give
it as a name c Dy now this is cdy and
this is also cdy let me select one of
these now you can see whatever values
I'm selecting is also getting selected
on the other
slicer so now you can see that whatever
value I'm selecting here on the first
slicer is also getting selected on the
second slicer so there from different
dimension but I able to sync them now
can I sync them across the page so what
for that what we have to do is let's say
this is the slicer here I go and here I
so if I give the name as tore Dy it will
also get sync so let's say if I select a
value here check this value let me
select a value Austin here go back to
the first page you can see all these
three slicer are now showing the atin
value so I'm able to sync across page
which I was able to do previously but
across different dimension table or
across different table columns I'm able
to sync using syn slicer so the property
is lying in the advance once you rename
and give them a common name that is
where you have an opportunity that you
can syn slicer across tables with
columns coming from two different tables
so why don't you go ahead and try this
out we will now try to create combo
visuals combo visuals are the visual
where we
have basically either bar and line
together or stagged bar and line
together so couple of combo visuals are
there uh they can be found here in the
build visuals region or you can find
them here now line visual we have
already seen the secondary axis now the
thing which you are going to get here is
the secondary AIS and I'm going to start
with the cluster column
chart I bring in the cluster column
chart and here on the xaxis let me bring
in brand and on the y- axis let me bring
in
net now there is a line axis line Y axis
now what I'm going to do first time I'm
going to bring in Gross here
and you will find that the there's a
line y- axis but I did not get in a
secondary Y axis if you see both of them
get adjust yis there's no secondary y
axis
now this happens when you take the two
variables which are having the similar
kind of stuff it automatically put them
on the same one now what happens if you
need the secondary AIS I actually want
it to have so you go to the visual
format which is right now available here
otherwise go and click on the three dots
and format to get it in case you are not
getting it now you are not getting a
secondary Y axis we do see the property
of the secondary Y axis here and you go
and enable the values the moment you
enable the the values start showing the
secondary y AIS now because of kind of
values you have there was no need of
secondary ya axis it was not showing but
you can enable it let me disable it and
let me do one thing instead of gross let
me try to bring in
margin on the second line
AIS now the moment I bring in margin
percentage because I manually switched
it off it's not showing me so I will
switch it on and do but usually what
happens is basically when you have the
majors which are not of the same kind of
a range it will show you the secondary
yaxis automatically now what I'm going
to do here is I'll going to play around
few things and tell you what all you can
do now this is one thing which you can
have similarly you can even have a
legend and along with the legend also it
will work but Legend do not work for the
line so if you want multiple lines you
need to have multiple measures so like I
have I have margin on the line axis I
can have discount but the legend is not
going to work if you're looking for a
legend then it's not going to work on
the secondary y AIS it is true across
line
chart line clustered column chart and
line
tagged column chart it's through across
that so I'm going to remove it again
same thing we have one more thing which
we have done in the past instead of
having it as a legend we can have it
second AIS more than one and
both are them in the expanded manner
then also we can have it but again we
have the lines based on the majors we
know can't use legend for that now you
have the lines U then again you can use
different kind of formattings what we
are going to do here is first of all um
we will go to
the below and the there is section for
columns where we can do the formatting
for the columns and then there is a
section for the line where we can do the
formatting for the line now because we
are using only one to xais or we are not
using any Legend there is only one major
we get the FX option so that is again
the what you are showing on the primary
AIS even if you're showing the line on
the primary AIS still if ideally there
is this column contains one there's no
Legend then you will be able to get the
FX option means you can do conditional
formatting now if you want border we can
have the Border here I like to increase
little bit transparency this is too
darker so I actually wanted to increase
a little bit transparency to look look
and match the column color is something
which I want to use I also want to
increase the Border width so that it is
little bit wider so these are some of
the things we have done in the others
also and then if required you can
increase the space between categories so
that they are little thinner bar you can
use reset to default for a particular
category to make it now series is we are
talking about margin all or discount so
if all what are the options you have is
you can decide for both the lines
whether you want solid or dotted now
here I'm going to CH show you this line
smooth and sted so now I'm going to make
it smooth you see this is the smooth
line and this is the property I've not
shown you in the line visual because we
had too many values there then you have
the sted layout which is basically the
step one so let's do one thing uh
instead of all the series let's go to
the margin percentage we have the margin
percentage as the smooth
line so we have one smooth line and when
we have stepped line now width right now
is three but I'm going to do one thing
I'm going to go to markers enable it now
both the lines are markers what I'm
going to do here is I go to the margin
percentage and let me see do I need
disable no I need margin I need marker
for margin percentage I don't need
marker for the one the step layout so I
removed
the marker for the discount percentage
so there is no marker for the discount
percentage let me change it to margin
percentage I keep the marker and I can
have different kind of marker let me
take a different kind of marker this
time make it little bit bigger color I
am fine with whatever color it has but
what I'm going to do here is I will go
up and right now already in the series I
have margin
percentage I go to the line and I make
St as
zero all the value is there now what we
can do here is basically when we go to
the data label and enable
it now we have enabled for everything
now one thing is that only for this dot
this values is coming this percentage
value is only for this dot you see
carefully that for this dot the values
is coming I can completely remove the
marker also and keep the values also
sometime we do that kind of hiding off
line and just keeping the value let's
say I'm showing net and I want to show
the value of gross and I put a line of
gross and then I just keep the values of
gross and don't show anything on but I
can see the de values and all the data
level properties like title value this
is basically major driven so basically
what I happening these labels are major
driven labels now everything which you
want to do you can have a major me for
title you can have measure for Value you
can have measure for details so three
things you can have like not everywhere
I want to have titles so what I can do
here is basically when I go to data
label I can for the margin
percentage I wanted to have a title also
for margin percentage I have title in
the single line right now it is there if
you remember the property we have here
is when we go Below in the layout we can
decide whether it's a single line or
multi-line I can make it multi-line
uh now I'm as of now I'm only doing it
for Discount I can do it for all of them
in this manner we can do those changes
so this is our bar and line let me call
it with the simpler
name and let me duplicate
this same way what I can do is I can
click on this and convert it into staged
bar and line now when I convert it you
will might see only small difference
nothing much has changed but the things
will change the moment I bring in
category
here once I bring in the legend now you
can see the Legends also here and then
as usual on the column values you have
this thought order
reversal and you can have the space
between the
serieses now for line we
have markers and everything so you can
play around with the data label if you
want and then we have the series label
when we go down we have the CDs discount
and margin the labels are shown here
basically if I enable it now you can
decide for each series what you want the
position on right or left you want and
the value and the series color whatever
you want and word r if the series name
is pretty long you can have that you
want to have background so I enabled the
background but both the series color and
the background color uh need to be a
little bit different so let me change
the background color to different
you can see transparency I can
increase total labels again because it's
a stagged visual so you can have the
total label but it will look too busy if
I have that and then we have the error
bar options and where you can use
various stuff in this manner um I have
this tagged and line
visual as you can see that with the new
major driven labels and with the help
from the data label enhancement and the
enhancement which has been done for the
bar WID for the transparency and the
Sorting of the bar we got a new era in
the visualization of the tagged Visual
and the clustered column bar visual to
take them to the next level and as you
can see those of you have watched the
series in the last year you will see a
lot of difference in terms of what we
are creating here versus what we have
created last year visual level format
sting has been released in August 2024
and now we are going to discuss those
this part of the video I'm using a
little different file not the same file
which we are using for learn power ba
series I'm using the abstract thesis
data file but I'm using the same model
so you will be able to relate with what
I doing using the same fields which are
available in your learn powerbi files
which I have shared with you on the
GitHub so let me quickly jump onto the
August 2024 notes and in August 2024
notes if you scroll a little bit down
you get this new feature which is visual
level format things now you might be
knowing that visual level and
calculations have came few days back and
you would like to format those strings
and there was this challenge how do we
format how this option has came and
there are various things which has been
supported now so it is not only
supporting at the visual level but it
has been done in a manner that you can
do it at the model level visual level
and and the element level so let's
understand this feature first of all let
me click on that SC down for visual
level format strings let's understand
this feature visual level format thingss
are here providing you with the more
options configure matting and configure
the formatting originally bu for visual
calculation this has been actually bu
for the visual calculation the core
ability that the visual level format
strings provide is the ability to format
visual calculation basically it allows
you to format the visual calculation
which is basically when you create these
new visual calculation or visual level
calculation or me visual calculation are
not in the water you cannot format them
unless you are using them in data labels
or a specific part of the card and new
slicer manual basically what happens is
because we were formatting our measures
at the model level and then if you want
to format them further we were
formatting them in the data labels and
few places in the card which were nicer
other than that we were not able to
format and if you want to format your
visual calculation that's the option we
were using now we would like to go
beyond that and we would like to them at
the visual level with visual level
formatting string you can do that so
means you will be able to format the
visual calculations for visual level
format string however are useful even
without visual without visual
calculation they are also useful what
are the three levels now we can do it
model level we format this model level
you can set the format for columns and
measures in the model anywhere you can
use that column or measure the
formatting of the apply unless over
written by a visual calculation element
level form what is the visual level then
this is what is introducing here or
introduced today with with this release
notes you can set the format of the
string any column or a major or a visual
calculation that is on your visual even
they already had a format string in
cases the model level format string were
written visual level format string would
be used because this visual level will
have higher priority over the model
level now next come the element level
you can set the format for data labels
and specific elements of the new card
and new slicer visual this will be
pended including much more in the future
any format string you set here will
override the format string on the visual
add the model so now you will explain
you element level selected element on a
selected visual measures or column and
visual calculation both it applied
visual selected visual applies to measor
and columns and visual calculations
model it applies to all the pages and
the reports on the same model and which
one will impact it has been given here
so first is model level if you have the
visual level the visual level will apply
if you have the element level then the
element level settings will apply it has
been explained from where you can get
the model level so model L you can set
from the major tool or the column tool
or you have these properties under the
modeling from where you can apply the
model level setting for visual level you
can find it under the data format once
you open and select the visual when you
further go down you let's say you want
to set up the data label inside the data
label further you can go ahead and
change the formatting of your measure
using the format strings so this example
is been given now the total is shown as
scientific notation but only in the data
label not in other places such as tool
tip as shown below notice how the
element level formatting is used in the
data label but visual level model format
thing is still used for the other
elements in the same visual now we have
understood this feature detailed time
has come that we go to powerb desktop
and explore this feature out so let's
move to the power ba desktop and here
I'm going to add a new page and in this
new page I'm going to add a table visual
in this table visual let me bring in BR
let me also bring in and let me
duplicate it a bar visual because not
every property applies everywhere in the
bar visual let me go ahead and enable
the data labels also I'll open up the
property Pane and I will enable now the
data labels as you can see data is now
displayed in millions and this happens
because of the data label properties so
go to data
labels go down and then open values and
inside the values you will see the
display format is Auto and you can
change it as per your requirement so now
let's go ahead and custom on look at the
formatting of the major this click on
the major under the major tool you will
be able to see the formatting of the
major right now the formatting is joural
and all other values are set to the
default values so let's start by by
changing the format so I can click on
the format and start writing down my own
format so I would like to write down a
format hash comma hash HH hash and I'll
not give any decimal place or zeros
after that now if you see the other
things were disabled and if you look at
my net menue here now net has no decimal
place it has been formatted using the
million format let's look at the bar
Visual and in the bar visual on the tool
tip you will see it is following the
model format
we have to now discuss the label format
but before that let's experiment with
the properties of table visual I can go
to properties and under which I can
found data format I don't want to set up
for brand but I would like to set up it
for net which is auto as of now
following the model level formatting I
can click into the format and replace it
with a million format of hash comma hhhh
do0 so I will now get one decimal place
press enter to commit and now go back to
the table visual where we have done this
you can see one decimal place is coming
which is the visual level format
different from the model level now to
explore the additional properties what
we are going to do is we are going to go
to the bar Visual and try to set up some
visual level and elements level
formatting I go to the bar visual here
and in the bar visual I go to the
property and I have data format and I
want to give a data format now the
format which I given for the table
visual definitely not going to apply
here we will give the same format here
hash comma Hash Hash has do0 it means
one decimal cas you will observe no
difference in the data label but when
you go to the tool tip you see it is one
decimal place in the million format and
that is what we wanted so now my visual
is following the visual level format but
I'm missing a visual with a global
format so what I'm going to do here is
I'm going to add one additional visual
here so let me add a bar visual here and
inside this bar visual I will go ahead
and add net and brand from the item
table and now if you look at this visual
you have the global format now we would
like to go ahead and experiment with the
element level formatting so let me click
on the first bar visual which I've
created and go to the data labels in the
data label let's scroll down to the
values and inside the values we have
display unit you can select the display
unit as null and you will observe that
now the labels are also following visual
level format in display unit you can
also choose any other formats like
thousands
million
billion Etc you can prefer to choose
Auto format Auto is the one of the most
common format we use and once you are
using Auto format you can decide the
number of decimal places let's say you
can change it to one or two now I would
like to give a custom format the moment
I choose it it shows me the visual level
format let's start writing down now hash
comma Hash Hash Hash the million format
d0 and0 means you have to show two
decimal places in place of 0 0 if I
would have used Hash Hash it means the
digits are optional it means if there is
a one digit it will show one digit not
two digit after the decimal so let's
look at this line where we have 7.0 if I
would have used Hash Hash after the
decimal it would have only shown 7 not
70 dou 0 makes it compulsory to have two
decimal places we are now using three
different formatting for this measure
net so if I click on this measure net
you will see at the model level we don't
have any decimal places and if you go to
the tool tip of the second bar visual
you don't see any tool tip on the table
visual you see the visual level format
with one decimal place on the first bar
visual you see on the data label the two
decimal places means the element level
formatting and in the tool tip you see
the visual level formatting now we have
explored the format string feature at
Major level visual level and the element
level but the visual level format
feature has came for the visual
calculation so let's go ahead and
explore one visual calculation too let
me add a visual calculation on the table
visual the calculation I want to add
here is next next of the net I want it
means it's going to give me the next row
let me press enter and it is giving me a
calculation which is giving me Nest but
the formatting is not following any of
the format which we have done at the
model or the visual level we need to
change the format and to change the
format we'll go to the format pan format
pain properties and inside this we will
choose this calculation and now here we
can give a format what we want hash
comma Hash Hash has the million format
and as you can see the calculation is
showing without any decimal place but
net is following its own format which is
basically having one decimal place now
you have seen how to format a visual
calculation at the visual level we have
now learned how to format at element
level visual level and mod level so why
would you go ahead and try out visual
level format
strings let's understand what is Dax and
what I'm going to do is I'm going to use
the definitions which has been provided
on Microsoft Larn site so that we are
you know very near to what Microsoft has
given so Dex is data analysis expression
is a Formula expression language used in
analysis services powerbi and power
power in Excel Dex formula include
functions op ators and values to perform
Advanced calculation and queries on the
data in related tables and columns in
the tabular data model so in all these
analysis Services power VI power pivot
we use tabular data model so in the
table of data model to create the
formulas or the calculation we use Tex
and this is what we are going to use now
onwards a lot when we are going to learn
the formulas The Columns the calculated
column Majors tables RLS Etc so Dex is
used in Dex calculations Dex formulas
are used in Majors calculated column
calculated tables visual calculations
and Ru of security these are the places
where Dex calculations are used so first
of all what is Dex measure measures are
Dynamic calculation formulas where the
result change depending on the context
means if the your filter context is
changing then the results will change
majors are used in reporting that
support combining filtering model data
by using multiple attributes such as
power V report or Excel pivot table or
pivot chart measur are created by using
Dex formula bar in the model designers
and we'll go to the power VI desktop
this is where we are going to learn the
Dex measures we have the option to
create the measures we have it in under
the Home tab we will also get it in to
the table tools that's calculated column
the calculated column is a Col column
that you add to an existing table in the
model designer and then create a Tex
formula that defines that column's value
when a calculated column contains a
valid Dex formula the values are
calculated for each rows as soon as the
formula is entered the values are then
stored in the inmemory data model so
basically the Dex calculated columns
will be calculated and will be stored in
the model while the measures are
basically runtime which is going to be
executed when we actually use them onto
the visualization T calculated tables
calculated table is computed objects
based on the formula expression DED from
all or part of the other tables in the
same model instead of querying and
loading the values into your new table
column from a data source a de formula
defines the tables value so basically
you are not getting it from The Source
you are actually calculating it based on
the other data which is coming from
source so basically it can be based on
other table or time we may create tables
like calendar table which is actually
driven by completely by the formula only
calculated table support relationship
with other tables means yes do you are
calculating a table but still it can
have relationship with our tables
calculated tables are recalculated if
any of the table it pulls data from our
refreshed or updated so if it is taking
data from any table and that table's
data get refreshed it will also get
refreshed and updated visual calculation
the Dex visual calculation has been very
decently added to powerb a visual
calculation is a DEX calculation that
defined and executed directly on a
visual so it is only at the visual level
not beyond that so the scope of visual
calculation is visual visual
calculations make it easier to create
calculations that are previously hard to
create getting a simpler decks easier to
maintain and better performance so the
reason for giving this is basically you
want to have a simpler Dex like looking
into previous no R next Row first row
last row or even creating the running
sum all these are going to be really
easy if you use Dex visual calculations
Dex queries Dex queries can be created
and run in Dex query view of power ba
desktop and open source tools like Dex
Studio unlike the calculation formulas
which can be only created in a tabular
model Dex query can also be run against
analysis service multi-dimensional model
Dex queries are often easier to write
and more efficient than the
multi-dimensional data expression MDF
queries so those of you who have used
the multi-dimensional models you might
know that the m DX query is used and it
is real now Dex is easier again the Dex
query is basically we are trying to do
what we are doing in the sequel to write
down the select query here we are
writing down Dex queries now the Dex
query when you wanted to write down in
Dex query view or Dex Studio you need to
make sure that it returns a table and
you can also use evaluate function to
evaluate these queries just like select
does the job for you in the SQL World
evaluate is going to do the job for you
so to run the Dex queries you need to
use evaluate one should make sure that
the query should return return a table
so if it returns a table then it's going
to be displayed in the Dex query view or
the de view you can also use order by
index queries which we do not use in the
visual explicitely because what happens
in the visual we have a option to sort
on a particular column and we use that
option to sort we we do need to mention
that okay order by this column that has
been taken care by the visual features
data type what all data types de support
you can import data into a model from
many different data sources that might
support different data types when you
import data into a model the data is
converted to one of the tabular model
data types and these are the data types
it will be converted whole number
basically the number without a decimal
place so this is very similar to
integers decimal numbers Boolean text
date date and time valid dates are all
dates after March 1 1900 so if you have
a date before that then it might not
work currency and a blank these are the
various data types which you which are
supported on the Dex and you when you
are going to use that you will realize
that these are sufficient for our
calculations and you know working on the
so Dex variable you can create variable
within an expression using where so you
can create a variable variable is
technically not a function it's not a
function it is a keyword to store the
results of an expression as named
variable so basically you are going to
have an expression and that expression
will be saved as a variable it will be
given a name and that name can be used
further that variable can be passed as
an argument to another as an argument to
other major expression for example major
equal to where Max of Max State and then
you'll use the written statement and
then you're going to use it again like
in this case we are using calculate sum
of say gross am out filter all date date
of date equal to Max so I'm using the
variable and it is really important
whenever you are using a variable
whether you are using in a measure or
whether you are using it in a column you
need to use the written statement
written statement is only needed when
you are using variable if you are not
having a variable you could have used
simply let's say major equal to sum of
gross amount that will also work when
you're using Dex variable so you need to
make sure when you're are using Dex
variables you should use a written
statement to complete your measure or a
calculator column so these are the
various definitions I wanted you to know
before we move into the depth of the
deex now we will now go ahead and
discuss context there are various kind
of context in Dex and it is really
important to understand that now some
time when we are using these context we
may use only the word context or a
visual context or a row context we'll
also try to understand that so let's
understand the different kind of
contexts which are available in power ba
or in the tax so what is context context
is an important concept to understand
when creating the Dex formula context
enables you to perform Dynamic analysis
as the result of a formula change to
reflect the current row or the cell
selection and also any related data
understanding context and using context
efficiently are critical for building
High performing Dynamic analysis and for
troubleshooting the problems in the
formula so basically context is applying
everywhere and we need to understand
what are the different kind of context
and which context is applying back
formulas in the table or model can be
evaluated in different context depending
on other design elements what are those
Design Elements filter applied in a
pivot table or a report filter defined
within a formula relationship is
specified by special functions using
formula there are different type of
contexts B context query context and
filter cont context now let's understand
row context row context can be thought
as row context can be thought of as the
current row if you create a formula in
the calculated column the row context
for the formula is include the value
from all the columns in the current row
if the table is related to another table
the content is also included all the
values from other tables that are
related to the current row is basically
every row it will get executed and every
row has a context that is where the row
context comes in place for example
support you create a calculated column
quantity 1 plus quantity 2 let's add the
values from two columns quantity one and
quantity 2 from the same table this
formula automatically gets only the
value from the current Row in the
specified column so it's only getting
one row it is not getting more than that
so that is where the row context is
applied the row context also follows any
relationship that has been defined
between the tables including
relationship defined with the a
calculated column by using Dex formulas
to determine which Row in the related
tables are associated with the current
row related function can fetch a related
table based on the relation so basically
you you can say Quantity plus related
tables quantity so it is going to fetch
row by row that values so all these
places is row context so basically your
row itself is a filter of data it is not
going beyond that particular rows
calculation so it's not that if I say
Quantity 1 plus quantity 2 it going to
sum up all the quantities in the table
that's not going to happen we will take
example when it's going to happen but
that's not going to happen with the row
context is in place so Dex is multiple
row context Dex include function that
iterates calculation over a table these
functions can have multiple current rows
which each with its own content T in a
sense these function let you create the
formula that perform operation
recursively over an inner and outer loop
so basically you are executing on more
than one rules for example suppose your
model contains product table and sales
table user might want to go through
entire Sal table which is full of
transaction involving multiple products
and find the largest quantity order for
each product for any one of these
transac this is one example when you
want to calculate multiple rows of the
sales table against the each product
that's where you are using multiple row
contacts with the Dex you can build a
single formula that Returns the correct
value and results are automatically
updated at the time user adds the data
to a table so the Dex will take care of
the execution and you will get the
correct formula so one of the example
using earlier is like I want to find out
the first sales State when the customer
came to me for first time so this is
minx filter sales custom customer ID
equals to earlier customer ID so it's
going to look at for all the customers
in that table and go to find out the
minimum save date to summarize the
earlier function store the row context
from the operation that precedes the
current operation so basically it's a
multiple row context which is coming
into play in this case so let's
understand query context query context
refers to the subset of the data that is
implicitly retrieved from a formula for
example when a user places a measure or
the field into the report the engine
examines the row and the column headers
slicers and Report filter to determine
the context the necessary query then
runs against the model data to get the
correct subset of the data makes
calculation defined by the formula and
populate the values in the report so
basically what happens when you create a
visual so it has it might be getting
slies it might be creating filters it
might have the columns row columns or
column head
based on all those a query context is
formed and then you get the result so
this is what the query context is
because the context changes depending on
where you place the formula the result
of the formula can also change for
example suppose you create a formula
that sums the value in gross amount
column of the sales table let's say sum
of gross amount if you use this in a
calculated column within a sales table
the result of the formula will also be
same as the entire table because the
query context of the formula is always
the entire data set of the c table the
results will have gross amount for all
regions all products all years and so on
so if use the sum of gross sales amount
in a calculated column versus a major
your expectation of result should be
different in case of a mejor it is based
on the query context of what is present
in the visual in column headers Ru
headers or what is coming because of
filters and slices but in case of the
calculated column is going to take the
complete Sal table and go to calculate
however user typically don't want to see
the same results hundreds of time but
instead of instead of want to get profit
of a particular year a particular
country or a particular product or
combination of these to get the grand
total so this is what we want we
actually wanted to group the data this
is what we do in a powerb visual we
wanted to have the grouping of the data
based on particular year country Etc in
a report the context is changed by
filtering or adding or removing the
fields and using the slices for each
change the query context in the measure
is evaluated therefore the same formula
used in a measure is evaluated in
different query context for each cell so
basically your visual may have different
set of columns different set of filter
filters and slices and based on that it
is going to be evaluated in different
query context let's come to now filter
context filter context is a set of
values allowed in each column or in the
values retrieved from a related table
filter can be applied to the column in
the designer or presentation layer
reports or pivot table filters can also
be defined explicitly by filter
expression in the formula so we have
filters and slices we also have you know
filter expression in which we can use in
calculate or the expression function
that also can give us the filter context
filter context is added when you specify
filter filter con States on a set of
values allowed in a column or a table
using the arguments to the formula
filter context applies on the top of
other contexts such as row context or
query context so filter context is going
to apply on on top of the other context
such as row context and query context
that we to remember in tabular model
there are many ways to create the filter
context within the context of client
that can consume the model such as
powerb reports user can create filter on
the Fly by adding slicers or report
filters on the row or column headings
you can also specify filter expression
directly within the formula to specify
related values to filter tables that are
used as inputs or to dynamically get the
context of the values that are used in
the calculation you can completely clear
or selectively clear the filter of a
particular column this is very useful
while creating the formulas that
calculates Grant to so what would happen
now there is a filter context which is
applying and because the visual is
getting executed the visual rowes is
actually having a particular value
getting filtered now you don't want that
kind of filter happening because of the
visual Ro so there are functions like
all all selected using which you can you
know go beyond your context you can
completely clear or selectively clear
those particular columns filter context
and get a formulas which will help you
to get Grand totals so this is what we
understood about different context not
what you're going to do is you're going
to explicitly look at this row context
and filter context and when we go to the
visualization quite a few time we are
only going to talk about filter context
but by the definition you might see that
it is applicable on a larger context or
some other context but we'll try to
limit ourself to use few terms and I'm
going to explain you what are the terms
which we are going to use when we are
going to look at these context in the
visuals let's understand the difference
between the row context and the filter
context and also look at the powera file
to understand the different kind of
context we have understood few minutes
back so let me take you through uh the
next slide let's have a look at the
differences so basically the row context
as we have understood already is a
physical row of the table so basically
when you're doing a calculated column
then what essentially you're doing is
every row by row that calculation is
happening or basically row filtering is
applying on every row so you are only
limited by the data of that particular
row that is where we say row context is
applied now similarly when you use
iterator functions like filter sumx
average X add columns you can also
access the row context so like say if
you use in the sumx you use the sales
table then you're also creating a row
context because at that time you are at
the row of the table and you can do that
while creating a major also now row
context applies to one row at a time not
more than one row because we have multi-
row context if you remember for that a
filter context if you apply how can it
come it come can come because of the
slicers or the filter which are
available on the page it may come
because of the visual so visual has
every row and it row has a column or row
because of which the values are coming
and they are coming as a filter context
Dex calculations like when we use
calculate function we are giving filter
expression and those are also acting as
a filter context and filter context
usually applies to a set of rows now
let's jump out the power be file and try
to understand the row context first of
all if I go to my sales table in the
table view if you remember we have done
certain calculations and one of the
calculation which we have done here is
the gross amount when you look at the
gross amount what is this calculation
sales quantity multiply by price now
this is a calculated column there is no
aggregation here and this calculation is
going to be done row by row so here row
context is applying and you're only
getting a data of a row you're not
getting beyond that same way we have
cogs calculation which is again the row
by row calculation discount amount is
again row by row calculation but if I
come to sum of gross sales if you
remember we discussed in the query
context now here what is happening the
entire table is available when we are
doing this kind of operation and what
are the other Contex text apply now when
we are on a visual the other context may
come because of able visual or the bar
visual or because of the grouping they
are providing in the visual now here
there is nothing which is coming in for
that and that is why you are getting the
full total and that that is why you will
find that I am keep on mentioning this
whenever you are using aggregate
function in a colum it gives you full
table so you have access to full table
and to reduce that you have to use some
kind of a filter function or something
like we have seen the example of earlier
in multi row context so same example we
have here the first change date where we
are using this filter function and
earlier a multi row context so here we
are having this multi row context
basically what is happening your
customer ID equals to customer ID in the
full sales table we're finding out the
subset of the rows which are satisfying
these conditions in the sales table
where current rules customer ID is
equals to the customer ID of the sales
table and that subset of row you're
using to find out the minimum sales
state which is becoming your first sales
dates same way we have also calculated
the last sales date so these are you
know the calculation which is coming
from multirow Context now let's go back
to the
visualization and in the visualization
if you look at this visual this visual
is having row if you look at this row it
is filtering the data for that Row for
category one but also if you look at the
gross column this particular row it is
not giving this total like what we are
getting in the column because here the
categories filter context is applying on
this visual row and restricting the data
to category one so basically what you
call the data is getting grouped so data
is getting filtered for category one for
this particular visual row so here we
can say that you know each row is
getting a filter context of category so
when there is a category or there's a
brand each row will get the filter
context of those UNS sumarized column or
group by columns and because of that you
are getting that particular value for
each row so filter context is passing
now additional filter context can be
added from filters from slicers and then
that will further reduce your data for a
row so different kind of filter contexts
are getting applied on this one so now
what could happen you could go ahead and
add a filter or a slicer and can apply
to this particular Visual and that will
also give you the context so what
happens let's say I can go here and put
a brand let's say I mly put a filter as
a page and I can select brand one now
what you are seeing is this filter is
also getting passed to this Visual and
your result or your query context has
changed to get the results so now we are
getting data of brand one for this
Visual and in inside this visual every
rule like category one is getting data
for category one category four is
getting data for the category four so
the context is getting applied to each
and every row so now you might have got
a little bit of idea of different kind
of context and what would happen that
you know when we are going to go ahead
and look at various calculation we will
talk about that context and sometime we
might simply use the generic term
context but looking at whether we are
talking at the visual level or whether
we are talking in a calculation the
calculation could be in the major
formula you will be able to identify
that which context we are talking about
here which context is going to apply
when we use that particular kind of
calculation or when we are talking about
visual which context we are talking so
let's understand how we are going to use
various terms so whenever there is a
slicer or filter which is passing the
filter context we may simply use the
term okay the it is getting filtered or
it is getting filter context similarly
the visual may also pass the filter
context so we can say use the term
context filter context visual row filter
context or row filter context means when
the visual have let's say category or
brand and it is filtering the data for
that also there is a filter context
which is passing but we will K may use
to explain you better like okay this is
visual rows filter context is passing
now when we use Dex formula and we have
the filter because of that we may say it
is Formula filter context or simply the
context so this is how we are going to
use the terms uh in the upcoming videos
based on that it will be helpful for you
to identify which context we are talking
about so now we will understand Dex
query View and first of all what we are
going to do is we are going to go and
look at the release note of Dex query
view to understand it little bit in
details and we are just starting with
the Dex journey I might not be able to
give you complete
overview of what all Dex query view can
do so what we will do is first let's
understand the basic of what de query
view can do and later on we will come
back and explore Dex query view in
little bit details so let's start the
journey with the blog in November 2023
the feature of Dex query view has been
released an additional tab on the left
hand pan has been added for Dex query
View and this feature will allow you to
run Dex qu directly from Power VI
desktop you don't need external Studios
for that release notes of November 2023
talks about this feature but very
recently a detailed article has been
given on blog. powerbi.com or powerbi
microsoft.com
slus blog we are going to look into the
article as well as we are going to play
around with the Dex query view in powerb
desktops let's quickly have a look at
the blog as you can see as a first thing
the various components have been
explained so we have the data pane here
we have the quick measures option we
have the command bar here ribbon Dex
query view access via the fourth view
option the fourth view option which we
are going to check out in some time Dex
query
editor which is this portion and the
result grade which is the this
particular section and then we can have
query tabs we can have multiple
queries how Dex query view is going to
help us out H has been described in this
blog quick queries from the data Paine
to make it easy to create Dex queries
direct model author can use Dex query
view new measure authoring workflow we
will see how can we create new measures
directly from here CeX query of the
visuals create your own Dex
query now those of who who are from the
powerbi world and never used deck studio
uh you might not have seen the use of
evaluate now what happens when you want
to
evaluate a query in the Dex view or in
the Dex Studio you require evaluate and
then you write down evaluate and a query
a DEX query typically should return a
table so all every time we trying to
bring in uh xquery we try to return a
table and then you say evaluate and the
expression which return returns as a
table and that's how you get it now if
you want to create something new or you
want to Define Majors then you use the
Define keyword where you can Define the
majors now these measures are defined in
the context of that particular query so
let's read out the definition from here
evaluate evaluate which is required that
specific what data you want to see
Define which is optional that can
specify a measure or named Dex formula
to use in the Dex query this measure can
already be in the model or not if
already exists you can make changes that
only apply to the Dex query to try them
out you can also have the option to
update the model with these mejor which
we will get into more details later in
this blog so in this blog they have
shown you how can you save the changes
in the major and we are going to
experiment with that
also when we are going to take the
Practical examples now one example has
been given for a de query summarized
column is one thing which
returns table and that is how we can use
it if you go down more examples have
been given also equalent sqls have been
provided in this blog so that you can
understand what's happening out
here as you you can see the queries are
run using evaluate
expression select column is another
function which can return return you a
table with the selection of columns what
you want and we order by something which
we don't frequently use in powerbi
because we use the visual sorting and
visual sorting internally applies that
order by but here you can explicitly
call order by
function then show data preview in the
quick measure then it will generate a
query for you Dex query and you can run
that few more
examples then you have uh Define with
the references if you have a major and
you want to Define its references then
you have an option when you are running
the query you can see the def references
has been defined you can change the
definition a little bit while uh doing
the evaluation of that particular major
in the Dex view so as you can see some
of the majors have been changed and it
is asking do you want to update or
override those measures I may or may not
want that I'm just experimenting it here
by changing it what would happen so you
have a place where you can experiment
how your different measures or different
combination of the defination is going
to result in the data and then few more
things have been explained
here we have learned now quite a few
visuals and there are still few visuals
which are left out and we will take up
those visuals once we are able to learn
T and able to create more complex M once
we are done with that we will come back
and we will learn how to use conditional
formatting and how can we create some
other visuals and in those visuals we
need few calculations which are
dependent on some decks this time when
we are going to learn creation of new
major just like we created the majors
initially uh we can take help of a new
major which is available on the top
under the major tool or table tool or
Home tab but we are also going to take
help of this new feature which has came
in 2023 which is Dax query view view in
the Dex query view we will be able to
put the definition of an existing major
modify it and get a new major or we
simply Define a new major and and we
will be able to use it so Dex query view
is something very similar to those who
have learned SQL it's like in a SQL
editor or SQL Developer where you write
down the SQL statement and execute them
to get the query result so these are the
Dex queries which we are going to write
down here and you will get the results
so before we Deep dive into the majors
we're going to learn little bit about
this Tex query View and as I already
opened it you can see that there is
already in a statement top top and 100
customer we do have a table with that
name I'll explain you what this so
whenever we are going to do anything in
a visualization we are not going to use
this valuate function at the max I will
do this top and 100 now top end is a
function which can give top values 100
is the number of values and customer is
the expression or the table which I've
given so it's giving me of 100 customers
important thing which we have to
remember when we are in the Dex query
view is that whatever we are writing
down here when we are to evaluate it
should give us a table and there are
many ways we can get table we will learn
them as we go move forward now if we
look at what all options we have on the
top of the Dex query view we have
something known as format query so if
you write down a complex query and if
you want to format it let's say can we
format it further yes this is how it
will get formatted you want to comment
you want to write down something let's
say we have written I will learn Dex you
can go and comment it here you want to
uncomment you can uncomment or these
three lines are I want to uncomment I
can go ahead and uncomment in one go
comment then we want to find something
we can use find and find it here inside
this one you want to replace something
and then you have a command pet where
you know above the cursor below the
cursor you want to search something that
can help you I want to execute a major
how do I execute a major or get its
value in the de can remove this and you
can have multiple queries you have tabs
below to M run the multiple queries so
what I can do here is I can go to one of
the existing major and I can right click
and say quick queries I have evaluated
Define and evaluate Define with
reference and evaluate Define all
measures in this model now evaluate
means simply it will give me evaluate
expression Define and evaluate will give
me definition how it defined now so let
me add the Define and evaluate so it's
giving me a function summarize column
I'll explain you what this summarize
column means so let me evaluate this
first of all I can also evaluate this
without so basically what happens in Dex
query view that we need to evaluate and
then we need a table expression this is
how it works so summarize columns is
also going to give us table expression
what it does is you can have the name
and then you can have expression name
expression name expression you can also
add filters this is how summarized
column works now if the major is in the
schema or the model you can use it but
let's say I want to change this
definition of the major how does we
Define a major first of all let's
understand now this one so we first we
say Define mejor the table and the mejor
name the new major name or the major
name which you want and the definition
the expression basically so this is our
expression part this is the left hand
side measure name part this is how you
define it now can I have the two
definitions here yes I what I can do is
I can say multiply by two and I can keep
a bracket to give the preference
multiplication any way is going to take
a preference I can run this now you can
see that it takes the new definition the
local definition local definition would
be given a priority you can simply say
evaluate then you see the old definition
now let us say I want to Define my own
new major so what I can do is I can copy
and I'll say gross one what is my gross
one what was my gross actually my gross
was sum of sales gross amount this was
my gross so what I need to do is now I
need to add this measure and before I
tell you I I'll even tell you one single
function which is row what row function
can do is row function can actually take
a name expression name expression name
expression and it only gives me one row
summarize column is even more powerful
it can have a group buse also we have
not added the group by there so so let
me execute it first of all evaluate for
first time evaluated with net original
definition of net because we have not
used Define what I can do here is
basically I can add a column name static
column and I'll call this as grand total
because row is giving me only one row it
typically used also to create one row of
data row again but it gives me a table
name so expression name expression name
expression this is what the syntax is
name expression name expression keep on
going like this now third one is gross
we created here I'm not calling it gross
one I'm simply using gross and then I'll
use my gross one and gross one is only
local it's not being created till now so
I got it but what do You observe here
other than you know it's giving me the
data is update the model override the
measure update the model add new measure
these are the two new options which are
coming in it means if I want I can add
this measor but right now what I'm doing
I'm testing it so no need to do now we
have learned about this thing something
known as sum you already know this same
way as sum we have min max count count
majors are there now let's go ahead and
do this now I'm going to create it and
then we are going to use it there also
so let me say what is Max here and let
me call it as gross two then gross three
this is Min Min of gross amount then we
can have one more which is Count now I
don't want to count the see gross amount
I want to count let's say order number
and remember my order numbers are unique
so when I go to new function which is
distinct count which is going to count
the distinct values I'm not going to use
order number I'm going to use sales City
ID so what is my sum of gross amount
what is my Max of gross amount Min of
gross amount count of order numbers and
what are the distinct number of CI in
this and I need to add all of them into
my row also it cannot happen that I I
just get it and here I can use this
formatting now let's all this formatting
every row we get this and now you can I
can do that copy paste let me put a
comma also here and then start doing the
copy paste we need gross I'm I'm giving
a different name here okay gr Min is two
Ross three is a Max also not following
the order and if you remember I am not
given name here this is gross 4 so let's
call now gross 4 was there so we will
say count orders and this way will say
distinct cities distinct cities distinct
cities so correctly the name now let's
run it now you getting this now some of
those we can create a as a major so
let's say I want this update as a new
major and it is asking this change can
not be undone means once I create I
can't undo means I have to manually go
and delete it you can't use control Z
means is going to update the model we
are fine with that isn't it okay fine
again I say update so I used update
again let me create Min of gross also
and Max up and some we already have so
we don't need it actually we will learn
the sux function now in some time then
we will try to create it from here we
know a easier way here copy paste copy
paste and do it I would like now let's
take an example of this visual here data
is grouped by category so how can we get
similar kind of example in Dex query
view how can we get the group data we
will use summarize columns or summarize
now these two functions have the ability
to have group wise as well as aggregated
column together and using that you can
create a table which will give you
aggregated columns as well as Group by
columns so let's go ahead and try that
out so if you remember when we came
initially here we have been given a
function which was summarize columns now
look at the definition of summarize
column what does it says you can give
group bu you can give filter then name
expression name we already using name
expression name expression why don't we
go ahead and give a group buy how do we
give a group buy we need item category I
given a group buy then I have name
expression name expression and let's try
out evaluate this now I can't evaluate
it alone I need to have the Define also
because there are few things which is
not created as measur and we are getting
the similar kind of results here we
created additional measure there is
average gross if I want to add it and
without even defining I can put a comma
at the end and I can say average cross
comma and if I use that start suggesting
me the majors then I can use average
cross it suggest me as soon as I type it
let me run it oh my God in this manner
this summarize column everything which
you want to use here should finally the
valuate should return table say what
happens I'm asking about return table
return table what happens if I don't do
that let's say I simply write down
evaluate this average gross now it is
already available isn't it let's select
an execute it doesn't so it needs table
and start renaming it also let's say we
call this table one we call the first
one is test there's nothing there what
we're going to do is every time and
again we going to go here and create the
majors by just copy pasting by doing
little bit faster stuff and
understanding those things so now we
have understood Dex query views and we
also understood the basic functions
available with us what we are going to
do here is basically uh is there are too
many visuals in this file so at this
stage we're going to remove all these
Pages I'll remove them one by one and
now we'll start learning Dex with almost
an empty file
so what we have done is now we
completely created the mt5 by deleting
the page we'll save this file and we
will also now do a save as and in this
save as this time we are going to give
it as a n22 name also but we are going
to say this is the second file so that
you can different that's where we
started learning the data analytics
expression and interchangeably we might
use Query view as well as the new major
functionality here whenever we want to
use that we would like to learn about
these conditional statement if and
switch so while these can be used in
column and measure so initial example
what we are going to take is here to
learn these basics of these statement we
are going to use them in column but they
can be used in major when we'll do
conditional formatting we will come
across a situation where we would be
needing the if or the switch state so
let me showcase you the syntax and then
we can apply it anywhere so I'm here on
my table View and inside the table view
the item table is already opened I would
like to Showcase you that statement here
both the statements so if a statement
and what I would like to do very simple
thing I have five categories I want
category one and two in group one
category three and four in group two and
the last category in group three that's
what I want so let's start creating
group using the if statement in a new
column so again you clicked on a column
then you will have a column tool if you
clicked on the table you will have table
tool in both you have new column click
on the new column let me start calling
this column new column is group
one and I'll start with if statement if
what is my condition if category because
I'm creating a column I can simply use
the column name belongs to the table
without using the table name but ideal
situation is use table name column in
why I'm using in because I have more
than one value or I can use R statement
in what and in we give here in the curly
brace
category 1 comma double quotes category
two close so what what is the if
statement logical test what is the true
value and what is the false value now
because I have already created a True
Value I need to have another if in the
false value so I want to call this as
group one but for remaining values I
don't have else I again need a if what
if I need is I need to Loop the if so
here what I'm going to do is if category
is three and four then it is group two
so this is in the else of the first now
what is the else of the second if I'm
looping the if inside it so the false
state when it is false what is that
group
three I close this if is close but right
now let's focus only on this if so we
have a condition when that is true what
is the outcome when that is false what
is the outcome this is one now look at
the bigger if this is the condition when
it is true what is the outcome and when
it is false what is the outcome so true
false outcomes I'm closing the first St
enter I found there is some uh spelling
mistake so let me correct
those now this is correct Category 2 is
in group one Category 5 is in group
three Category
3 is in group two category 4 is in group
two Category 3 is in group two category
1 is in group one Category 2 itself is
in group one and below that category 5
is in group three everything is correct
now we use this group see this was only
two if what happens if you have so many
multiple ifs then it will become a real
big challenge isn't it to Loop such
things so we need something known as
case statement we typically know know in
the SQL very equivalent of that one and
we have something known as switch here
switch which is equivalent of case
statement now switch can be used in two
maners so first we will learn switch
where we can give a column and we can
handle each and every value of that
column so the first we will learn the
switch where we can give the switch
statement with a column or with a major
now here we have a column so we going to
give a column and handle each and every
value and then we will learn the another
version which is switch true where we
can give conditions like we have given
in if so let me start by creating
another new column and let me call that
as group two now here what is going to
happen is I'm will use switch now the
switch I can have expression expression
can be true then I have value result
value result combination but it can also
be a column or a measure so I'll use
category as a column now when because I
used a column or I used a variable which
is having value not true false I need to
now specify each and every value so
category one what is the outcome of that
group one now in this manner I have to
now repeat this combination so let me do
one thing let me move this comma from
here to here here so that I can easily
repeat it and let me remove it from here
so now what I have to do is category 1
group one Category 2 what should be the
Category 3 category 4 last one we can
leave for else which we can call as
group three now here we need to change
category two is one Category 3 is two
group two four is group two again so
this is switch statement with a column
or a categorical value or something
which is having a value not true and
false so we have one three same groups
should exist these values should match
there should not be any difference and
they are matching you can see so this is
working now this means if I have
thousands of value I need to write it
down thousands of rows but what happens
if I have a better matter to write it
down can I use something which where I
can give the conditions just like we
have given in the case of if because
think about numerical value where we
have a range greater than equal to Z and
less than5 or less than th000 will I
write down 1 2,000 values no I don't
want to I need something which gives me
the that particular so for that we have
a switch true version
and to make it a little bit easier I'm
going to copy this statement I'll click
on any column and again create a new
column we paste this statement I'll call
this group three and let me move it down
comment it double slash is for comment
we'll use these things so we start a new
Switch this switch is now this time with
true we call this as switch true now
what happens when you use switch true
your expression should return true and
false and then you have to use the value
so what is my first statement my first
statement is category in category 1 and
two then group one I don't need to use
if I simply need to use one statement
which gives me true and false if it is
true this is going to be my result so
this statement should return true and
when this return returns true it's going
to give me this result if it returns
false it goes to the next level so here
I don't need another if looping simply I
give the next statement and if this is
true this is going to take the next
result now after I give all these
condition finally I can give one
else and then I can close the switch
statement so how switch true works you
give a statement if it is true what is
my value another statement if it is true
what is my value and finally you given
else value True Values True Values
finally else values so if there are if
if if if okay please remember in such
situation the order is also really
important now what happens sometime when
you deal with numbers you have a choice
of writing down between numbers or
sometime you can simply say so let's say
I say if it is greater than 80 I can
give the next condition as greater than
60 because greater than 80 is already
covered in the first Cod and then I can
give greater than 60 in that order so
first is greater than 80 then 60 but if
I put first greater than 60 it covers 80
so it cannot you cannot have greater 80
after that so the order of these
conditions is also really important in
some cases so you to take care how which
order you are going to give it if I
would have handled a multiple condition
and there is some kind of um priority I
need to give Whenever there is a
priority which we need to give in switch
statements it always need to come before
remember that and based on that you will
be successfully able to create switch
statements enter another column created
and we got the values here same as what
we have got in the rest
tool now let's create start creating
some expression function and what I'm
going to do I'm going to go to the major
Table and there I'll create one of them
and then we will learn more and more
details on the expression function as we
go move forward we will try with some
basic expression functions first and
then we will go little bit detail into
this one but as we progress further into
the deck create more formulas you will
learn that we can do more powerful
things so let me create a table visual
on a new page I'll start with something
which we discussed initially but we have
not done if if you remember we have this
column if you remember we had this
column gross amount is nothing but
quantity multip by sales price we also
created a mejor on that and why this is
able to give a result got as usual we
are using sum of gross amount so result
inan and this is creating an implicit
measure gross is an explicit some of
gross implicit and we when we will learn
the calculation groups later it will not
allow implicit measur so we'll only need
to use explicit measure and that's why
I'm creating explicit measure so at some
stage you need to use calculation group
you always have the measures which are
explicitly soit measure and explicit me
do I need to create a column first and
then need to do so this is is not needed
that is where the expression fun and
expression function can be used both for
column and measure we learn how to use
that in a column also so first of all
I'm going to create a new major and in
this major I'll call it
as Pro level th X now when I put this
any expression function sum X main x max
X count X there is nothing for distinct
count as of now there's no expression
function for that for these is this is a
table expression now this table can be
as simple as table name it could be a
filter with Filter expression is going
to give table then there could be
complex table Expressions which will
include functions like summarize all all
selected all these kind of stuff would
be there and then we have an expression
the calculation or a major already
existing Majors could be there or we can
Define here now when you use Simple
table it's fine you can use set of
column and calculation inside that but
when you we are going to do the complex
measures when we have the table
expression itself is in complex then we
might have to use calculate few places
inside the sumx itself in the expression
portion that we will learn little bit
later so let's start with very simple
expression function here sales and we
are going to use sales in the table part
of the expression and in the expression
we will say sales price multip by sales
quantity it means I'm trying to create a
roow level calculation so what's
happening here this is my level and as
I've given the complete table the
table's row level is my row level so
this expression has to execute at the
each row level and and that's going to
be little bit costlier calculation that
compared to the simple gross which was
simply a sum and that is where we might
have to take a call should I create a
calculated column and then majure or I
simply create a mejor it's a really
small data so it doesn't matter much
here in this case it's going to give you
same kind of performance on a larger
data you might have to take that call
and if you look at the numbers all these
three numbers are same the than the
formatting we have done formatting on
the gross we can do on the gross row
also the results are same the ground
total is also
same grand total is also same now we
have used sux same way let's if you
remember we done Min of gross and Max of
gross we not don't want to take
everything so this was gross two was Max
if I want to achieve the same Max using
this one can I achieve so I copy gross
row Max and I can use max X here instead
of and Max X also having the similar
syntax and then we have a variant thir
argument Returns the largest numeric
value or largest string result from
evaluating expression from each row of
the table so you have this values which
right now I don't want to use simply use
this and let me add it to visualization
it's giving the same result same way M
so this is the simplest way to start
with the expression fun expression
function can be used as the col column
level also but we will that little later
so now let's create little bit different
version of expression function so what
I'm going to do here is now I'll create
a new
major and in this new
mejor I will use a filter I'll say
brand one
Ross and we keep on coming back to this
then I can use filter here filter
function I'm using filter now
the let me try to use item here I use
item I say item brand equals to Brand
one question close can I use sales here
I'm not able to use sales the moment I
use a different
table other than my table which is item
I can take anything from item here
I can I can count the item I can count
the brand I'm not able to get that so
what I can use here is I can use the
gross here major I can use a measure
here this portion I use a filter which
does not belongs to the table on which
I'm using the filter in the table region
if I in the expression if I use a filter
which is on a table on which final my
column is not there I want to do the
calculation then what I have to do here
is the major expression can be a major
Al and as you can see this is giving the
correct value but there's one more way
now not for the brand one let's say I
want to filter something as quantity or
something on the sales table itself if I
want to filter something on sales table
let's say
gross
sales
one
THX filter I can use
sales
item sales sales Item ID equals to one
close the filter and then I can use
sales quantity I can sum the sales
quantity or maybe because we are using
gross so we for us to know
price I got brand the item one is
falling in this category so I'm getting
this now not only filter I can give this
single value I can also make do a little
bit more complex stuff so the filter
expression could be really complex I can
have multiple conditions I can use in or
all those stuff I can do
we that we'll learn when we are doing
calculate but one thing I would like to
tell you before we move ahead with the
more complex functions is that I can
here I can say let's say sales
qy quantity sales
quantity greater than let me call it as
gross sales so now it's going to sum
everything which is greater than two you
remember we have done some kind of
visual level filter for that now there's
no need of visual filter I have actually
made it part of the EXP function so this
is very basic start of the expression
function do and as we progress further
we will learn more complex which we can
do so let's Now understand the
difference between filtering a data in
calculate with and without filter
function so let's say we want to give a
filter expression in the calculate
without using a filter function how
would we give let's say calculate net
item brand equal to Brand one we want to
use filter function how would we give
we'll give calculate net filter item
item brand equal to Brand one now when
the visual will contain brand into the
visualization you will see a difference
you might not see difference when when
item brand is not in the visual context
so you may not be able to see that
difference if we are having the visual
on category because at that time the
visual filter context is not filtering
brand it is filter ing category so you
might not see the difference so what's
the basic difference when we do this so
the calculate function without a filter
function you directly apply the filter
to specific column with the calculation
this modifies the filter context and
effect how the expression is evaluated
the calculate without a filter
expression applies filter directly to
the column altering the filter context
and impacting the calculation so it's
alter the filter context and later on
you will understand that it is basically
what it is doing it it is removing the
item Brands filter context in the visual
so is basically it is saying like all
item brand and then brand equal to Brand
one so your row of the visual which is
actually showing you brand 1 2 3 4 that
filter context of visual is not getting
honored and you are still getting the
data of brand one but it is going to
display played against all the brands
this is what is happening so I'll
explain you when we go to the power VI
that in such scenarios what this first
statement is equivalent of Now using
filter function with calculators allows
you to create a filtered table based on
specific condition so basically the data
is getting filtered this offers a more
flexible approach of defining the filter
context and customizing the calculation
in interacts with the data calculate
with a filter expression construct a
custom filter context by creating a
filter table based on specific criteria
and Returns value based on that so
basically your data itself is getting
reduced so basically what happens when
you use this filter function and let say
you use with the brand because the data
is already getting filtered you only
have the brands one data you're going to
see only brand once row so these are the
main differences and we have to
understand that with the example now we
will understand this calculate functions
little bit more in detail then we don't
use filter and simply try to filter the
data what happens then so we will bring
in our calculate page from here and in
this one had major bring this visual
copy paste now in this one I'm I only
right now bothered about how do we
calculated this brand one net that's
understand brand one net was so brand
one net was
calculate net we use a filter so when we
are simply using the filter function it
is filtering the brand one's data and
that is what you are able to see here
that you're only seeing the row which
contains the brand word data so the data
has been filtered to give us only data
for brand one in this case let's try a
different
way actually
we can also do we don't need a
filter without using the filter fun item
brand one it's call it
BR in the first case what was happening
when you use the filter the data was
like second
case and if I would have removed this
one and this one it's
actually only going to give me brand one
in this case if I bring in it's first is
going to bring all the brand so here
brand columns is filtering brand one
which means the filter is applied to all
the rows and there is no filter to the
table filter retains and interacts with
the initial filter context while filter
expression directly in calculate ignores
it it means that filter contexts on the
brand one overrides the other filters
which are inside the visual specific
especially visual rle as well as outside
the visual let me do one more variation
of this
I
go and put here category instead of
brand then there's no difference only
when I view it by brand when it is brand
uses a
filter without filter function it's
giving me the brand one value everywhere
this is something really useful when you
want want to use only brand one's value
or whatever you filter that value you
want to use across the values understand
this thing the filter of brand one has
been applied on the row every row is
only giving you brand one so what's
happening in this case is basically the
brand one is getting filtered and that
particular value is available now for
all the rows of the brands so whether it
is brand 2 brand three Brand 4 all the
brands are going to show you only brand
one's value so we have the brand one
value displayed against all the brands
because the column has been filtered for
the brand one now how can we achieve
otherwise in what it is equivalent of
can we understand it better to
understand it better let me tell
you equalent of which which will help
you to understand let's go back to this
one calculate
again what it is equivalent now we
already understood the all you
understand if I use all item brand here
what would
happen it would remove the context so
when when we are using this all item
brand what it is going to do it's going
to remove the filter context of item
brand means if you filter the data for
brand it will not apply neither it will
apply the Brand's context in the visual
so in the visual row if you have a brand
three brand four brand five that is not
going to be applied so this has been
entirely removed so what should I have
given if I simply say all item brand
grand total but now what I'm saying
after that is now let's put the filter
of item brand equal to Brand one what is
happening now you have all the item
Brands out of which you are only
bringing in brand one now what we going
to do here is we'll bring this
in let's bring it inside the
visual it's same as this one so what's
happening now that in the visualization
when you going to see the each row which
is talking about a brand it is not
filtering the brand because of all item
brand but it is getting the value of
brand one because what we have said all
item brand then filter the item brand
equal to Brand one so it is only getting
the value of brand one for each rows so
the filter context has been removed and
especially when it is displayed in the
visual so especially when the brand
itself is appearing in the visual the
visuals filter context of the row is
also getting removed and based on the
value which we have filtered here in our
measure based on that only we are
getting the value displayed so sometime
what would happen if you think that I'll
just simply say item brand equal to
Brand one or item brand equal to brand
one brand two brand three or I use the
or statement it's going to be same as
what I use in filter that's not it's not
same so calculate with Filter function
and without filter function are not same
remember this when you are doing your
calculation now we would discuss the
differences between all and all selected
let's look at the very simple syntax of
all and all selected so now this is net
all means net calculate net and all and
in all I can specify a column here and
table here this is without specifying
anything similarly net all using
calculate net all selected now what is
the difference in between these two so
basically what happens as we have
learned in the past we have something
known as filter context now filter
context may come because of slicers
filters or maybe because of the visual
visual row is Alo going to put a filter
context on the data now all is going to
remove everything we'll learn this with
an example all disregards the filter on
a specific column or a table to retrieve
unfiltered data for the calculation for
the every value it's going to that on
particular column or a table whatever we
have used there now all selected
preserve the user selection of filter so
user selection of filter that you have
done that filter context would be
preserved in the specified column while
removing the filter from the other
column allowing The Selective adjustment
so this is going to happen in the all
selected so what is in short we can say
that all ignores the filter context
including the filter and the the visual
filter row context means the visual row
which is going to put a filter context
that is also going to be removed but on
the other hand all selected is only
going to ignore the visuals filter
context which is basically because of
the row of the visual so let's
understand with an example let me come
up with brand net
visual make it as a table visual
duplicate
this create a little smaller visual with
category I'm adjusting the sizes in the
second visual I'm clicking on the brand
arrow and then I'll make it cut I need
like sers also and I'm going to use
Simple slicer here I'll use brand
slicer copy paste let me change this
with category
slicer copy paste and state
slicer I added three slices in this one
I'll use
State I have three slices let me convert
this one into drop
down instead of net I've taken margin
here so let me correct that
clearly here
net net is the measure we are going to
use predominantly in all of calculation
but let me sort it descending here now
what I want here is I want a grand do I
get a grand total we'll take help of
calculator let's create a new major for
the grand total click can click on any
of the major and get a Major
Tool and here we will go ahead and say
total net brand so we'll say calculate
this calculate we can use the Expression
also but we'll start with net now there
is function all which can help us what
does all can take all can take all can
take table or a column name what is
there in this column is let's why don't
we start with the column name that we
use item
brand I drag it here and here you can
see I'm seeing grand total let me put it
to other visual in other visual where
there is a category I am not seeing that
grand total on each row why it is
happening because here in the case of
brand I am saying all item brand and it
should remove the filter context of all
item brand so the filter context of item
brand has been removed and that is why
each row of the brand is giving me the
grand total but we have not told that to
remove the filter context of category
and that is why what You observe that
the filter cont context of the category
is not getting removed in the visual
rows so visual rows are still applying
the filter context of categories but the
grand total is not getting that filter
because in the grand total now again we
are able to ignore the filter context
now when I select brand 3 now what is
happening here is you are only able to
see brand 3's value when you see brand
3's value you will observe that in case
of the brand visual we are able to see
the grand total value external filter or
the filter which is coming is going to
reduce the visual to only brand three
but the context of the filter has been
removed from the visual Row the context
of the visual and the context of the
slicer filter has been removed and we
are getting ground total both in the row
where I'm getting brand three as well as
grand total while in case of the
category visual we are getting two
categories now we are getting two
categories because of the brand 3 again
because brand 3 contain two categories
but for those category the category
filter is still applying so because of
that category filter I'm getting the
data for those rows based on the
category but the grand total again I'm
able to ignore item brand I'm getting
the total one now if I add brand two and
brand three as you can see in the brand
visual I am getting both the rows I'm
getting the grand total which is is
ignoring the visual as well as the
slicer filter context and as you can see
in the category visual as expected it is
able to use the category filter context
in the visual but the grand total again
it is ignoring all the filter contexts
because in the grand total anyway
category is not available and I am able
to get grand total so we got total
Network what happen need both case of
category and item intr category and item
belongs to same table is it what I can
do here is I can go ahead and create
this majure again and this time instead
of item brand I simply use item what
happens I'll call it total net
item I'll bring in into the first visual
I'll bring it second visual now in this
case what you are observing that both
the visuals are showing the grand total
even the categories uh filter context
and the bran filter context from the
visual has been removed the reason for
that is basically basically that we are
using the item table so any which we are
using from the item table in the visual
will not be able to force a context
similarly the slices will not be able to
force a context and the visuals will not
be able to force the contact even if I
remove those brand two and brand three
now you will see all the values and in
case of all the values again we are
going to get the total for all the rows
because the the filter context of all
the brand and category has been removed
from each row and we are getting grand
total in the each of the visual but what
happens when I put the state filter
let's say I put the state filter on
Alaska now you are seeing that the
filter context is applied but the visual
Rose filter is not getting applied we
are getting the Alaska gr R why it is
because again the filter was on item for
the specifically for the second column
so it is ignoring the items uh filter
context but it can't ignore the states
filter context because we have not
talked about the state into our formula
so because we have not talked about the
State into our formula it cannot ignore
the filter context or the filter of
State in the visualization so
visualization will get filtered for the
state but it will remove the context of
brand and category because we have said
all item what can I do here here comes
my third all
formula and the third all formula is
when where we going to remove everything
now all can have multiple columns if you
want I can say sales or I don't say
anything one of the two things I can do
I'll have this two formulas in one go so
I'll say total net Els one major I can
have one more version of this one
without this one now because all the
dimensions are getting applied at the S
so most of the time these may end up
giving us the same result I'll bring in
net and let's not add it to the second
one there's no need of that now as you
can see when we have bought this total
net and total net sales where we have
used the sales table it is also start
ignoring the states context why it has
been started ignoring the states filter
context because the all has been applied
on the sales table so anything passing
to the sales table is getting ignored if
you apply the filters now if you apply
let's say brand filter your values will
reduce because this is going to reduce
the values in the filter but the rows
which are still remaining for that the
filter context the way all is removing
will still apply same way if you filter
category again you will get the data of
brand and category based on your
filter only that much categories or that
much brand but yes in the for the
individual row of the visual the filter
context would be removed complete filter
context would be removed but what does
it gives us it gives us the gr to this
is all for us let's learn about all
select for that what I'm going to do is
I'm going to duplicate it want to keep
everything as is removing the
filter and let me do one thing I'll keep
only this one because rest of the
behavior in case of all selected is
going to be same what's the major
difference between all and all let's
start now let me create this measure
with the all selected so what's the
difference between this all and all
selected so in case of all selected what
would happen here is basically all
selected is going to honor the filters
which we apply
but it is not going to honor the visuals
rows which are putting the visual filter
the visuals rows filter contexts would
be ignored but the filters filter cannot
be ignored so let's say if I put filter
on brand 12 you can see that the all
selected is showing me only the brand
12's value it is not showing me overall
value why because it is going to honor
the external filters or the slicer which
has been applied in within that boundary
it will show me the total so if I select
let's say brand 12 13 and 2 now it is
showing me total of these three for all
selected one so it is ignoring the
visual row filter context now let me
modify the other visual the same job
what I'm going to do is I'm to change
this instead of category I'll bring in
state here from the geography
Dimension let me go ahead and remove
these two and bring in
total a little bit more WID for this
what do you see so what you are doing
here is you are saying the ignore the
filter context of item not of state and
because you are not ignoring the filter
context of State the state values are
still filtering your visual rows and you
are getting the state level data I do do
this we go and ignore the context of
Sals table itself Sal item n it's all
selected I'm saying ignore all the
context which is coming to this this
I'll add this the first table I'll add
this table and we require a lot of
overlap now when I use the sales now
what happened the all selected applies
on these sales all selected now is going
to ignore anything which is coming to
the sales table and because of that now
you are going to get the total which is
of my selected values and it will be
displayed for each rows now in case you
apply a state filter it will honor that
also now so whatever filters you apply
that will be honored
irrespective of what dimension they are
coming so your grand total will depend
on the filter selection in case of all
selected and based on that particular
set of filters it is going to give you
the grand total you can have an all
selected without the sales table this
case we to give almost similar kind of
results because the sales table is the
base table where we applied or the base
back table where we applied so now you
have understood the difference between
all and all selected so there would be
times when we are going to use these
especially in time intelligence let's
say I want to create a PRI previous
period you might not select a previous
period because previous period might not
be in my filter criteria so let's say I
selected current one now when I selected
current month I need previous month I
need to ignore date tables filter
context completely and then bring in the
previous month's value so in that case
I'm going to use all but if the values
are available within my filter context
and I want to play around then in that
case what I can use I can use all
selected so let's say I want percentage
of total irrespective of my selection
then I'll use all or I need percentage
of total based on my selection I'll use
all selected I use I want my rank rank
based on the original values without
considering any filter I'll use all I
want rank based on my selection I'll use
all selected so these are the some
places where you will use all or all
selected depending on what exactly you
wanted to a a let's learn about remove
filters let me bring in state and city
here create it as a table Visual and add
a net Also let's have a filter MD space
click on filter we'll get it here
control C control V second dimension
take one from geography Dimension that
is State take one from item Dimension
that is brand we got our visual we have
certain values and let's make it as a
matrix in The Matrix visual build visual
we have the to now create a major net
all what would happen calculate net
all geography City
it we bring it here what we seeing that
look at this the state filter is not
getting ignored only the city filter is
getting if you apply some filter that
filter is
obeyed and if you're applying some
filter which is on state that is getting
obeyed because we said all of City not
of state or not of
geography take this and now we use
remove
fi this is something which we are also
trying which is also known as
exclude exclude level of details so we
are trying here is excluding the level
of details so the city is present but we
are trying to ignore that but we got the
remove filters now what is the syntax of
remove filters remove filters table or
column name so in this case we want to
use column names you can have more than
one column names we can have geography
City here to ignore this one
remove so same results we are getting
it's almost same I filter brand one the
results are same the brand one is going
to pass the remove cities here again the
state filter is going to pass to check
the cities filter what happens when we
apply cities it's almost behaving like
your all filter removing the contract
it's easy to remember that okay I'm
removing something now let's bring in
city as a
filter drag City here create it as a
slicer as you can see this is net number
is smaller and the all number and remove
filter number is bigger basically the
filter context of C
and we can have multiple columns as per
requirement so we can in the remove
filters we can use multiple columns if I
want to add State here I can add State
they are all from same table this is
what we call exclude level of detail
which can be achieved using remove
filters let's learn about all except all
except is something like you know means
ignore everything other
than all except so I copied a visual
from the other one and let me remove few
of things
here let me bring in
net so let's say I want to remove all
the filter other than it let's bring in
the filters
also I name the pages I want to create a
major which should IGN know everything
other than geography St we create a
major net
eight let say calculate calculate can
take various things now you might have
learned till now all except what does
all accept does it takes a table and the
column name table and the set of column
names so table name could be the table
for which you are going to give the
column and the beauty of this function
is it can take a fact table and related
Dimension the one side tables can also
be but we will start with geography
table is compulsory here and then we'll
see geography 8 what we are seeing you
only obey geography 8 no other filter
now we bring in here and as you can see
that it ignored the city filter in the
visualization okay very good it ignored
the CD
filter but what happens if I put a
filter of
brand filter of the brand coming from
other dimension is not getting ignored
what happens if I selectricity
here this filter is applied but the
state is getting filtered because of
this city the Texas is the only data
which I'm getting at the row level and
there it's ignoring the city filters but
overall it is Texas only and we know
anytime we apply a filter but in the
ground totally ignoring everything so
whenever we apply a filter or what we
can call external filter or slicer it is
going to reduce the value in the
visualization means your categories your
cities your city state category brand
subcategory are going to reduce on based
on what you have selected but now within
that selection further we can ignore the
filters even the filter which we have
applied externally its value can be
ignored while showing the value like I
will still be able to show grand total
or a total of a state or a total of a
city ignoring that filter but I can't go
beyond the set of values which is
defined by my slicer or filter you to
remember
that that's also fine so what does it
means that the filter from the other
dimension continue to pour in further
let's duplicate
this and here in this visual now me open
the build instead of C I want to bring
in I
category I want let's say use
category what do we see here there is no
total all except state it is still
considering the category it's not
removing that it's not removing category
so it's not the state total it State
total is only coming at the state level
in this visual but in this visual if you
would have the state total was coming in
why is it so because what we have said
here is that in the geography table you
only obey a filter now that's what it
was doing it worked for geography
Dimension state and city but it is not
working for the item Dimensions category
because our formula was only talking
about geography Dimension and geography
Dimension State there was no mention of
item category Dimension and and that is
why when the major we have used there
with the category is not able to ignore
the category filter in our visual ual
and is still giving the category level
data filtered based on the
categories proc is not how do I do that
and that is something which is famously
also known as fixed level of detail I
want fix it I only want that one how do
I achieve fixed level of detail in this
major let's go ahead and try that out
copy this and new
major and can all accept give me me a
fixed level of details I use sales here
sales and after that geography State and
that's what I told you also that all
except function you can give the central
fact table and then you can use one side
of the table in the
relationship you'll call it all
accept net all
accept let me bring in
this no
differences but when when I put the
brand filter you notice one thing that
my state totals are now ignoring the
brand filter filters are no more
considered look at this
total when I put the filter the
same let me go to the second
page let me put this here net all
Exel and now you see that this
portal is same and it ignored the
category
also it is like fixed level of details
so level of detail has been fixed at the
state level it's giving me the state
value and definitely state is in the
context that's really
important so in this manner all except
can help us ignoring filter now now you
can have multiple of them like in this
case if I simply would have wanted
category and it I could have done
that because it uses a central table
it's not like all or all selected where
you can't have from the related table
here you can
have item
category and you can get the result same
as this
one
why because it's going to obey the two
filters it's going to obey State and
category now it's obing the two filters
State and
category this is going to remain same
now let me filter the
brand now when you look at here this
total is different from this
one this is 90 these all are 90 these
are the my category 1 and category 4
total so remember 24,000 and
16,000 let me go back and remove the
filter of brand one you are having this
is category 1
24,000 category 16,000 these values
remain intact when I any filter now if I
add one more child
here this visual I'll go ahead and add
let's
say it
and explore that the next
level what you will see here is look at
this this category a total is still
intact because of all except category
state
level is it at the state
level city is getting ignore this is how
you use all accept so let's Now
understand the difference between
filtering a data in calculate with and
without filter function so let's say we
want to give a filter expression in the
calculate without using a filter
function how would we give let's say
calculate net item brand equal to Brand
one when we want to use filter function
how would we give we give calculate net
filter item item brand equal to Brand
one now when the visual will contain
brand into the visualization you will
see a difference you might not see
difference when when item brand is not
in the visual context so you may not be
able to see that difference if we are
having the visual on category because at
that time the visual filter context is
not filtering brand it is filtering
category so you might not see the
difference so what is the basic
difference when we do this so the
calculate function without a filter
function you directly apply the filter
to specific column with the calculation
this this modifies the filter context
and effect how the expression is
evaluated the calculate without a filter
expression applies filter directly to
the column altering the filter context
and impacting the calculation so it's
alter the filter context and later on
you will understand that it is basically
what it is doing it it is removing the
item brand filter context in the visual
so basically it is saying like all item
brand and then brand equal to brand so
your row of the visual which is actually
showing you brand 1 2 3 4 that filter
context of visual is not getting honored
and you are still getting the data of
brand one but it is going displayed
against all the brands this is what is
happening so I'll explain you when we go
to the power VI that in such scenarios
what this first statement is equivalent
of Now using filter function with
calculators allows you to create a
filtered table based on specific
condition so basically the data is
getting filtered this offers a more
flexible approach of defining the filter
context and
now we will understand this calculate
functions little bit more in detail then
we don't use filter and simply try to
filter the data what happens then so
we'll bring in our calculate page from
here and in this one add measure bring
this visual copy paste now in this one I
only right now bother about how do we
calculated this one one net let's
understood brand one net was brand one
net was
calculate n we use a filter so when we
are simply using the filter function it
is filtering the brand bu data and that
is what you are able to see here that
you're only seeing the row which
contains the brand word data so the data
has been filtered to give us only data
for brand one in this case let's try a
different
way
actually we can also do we don't need a
filter without using the filter fun item
brand one let's call it
brand in the first case what was
happening when you use the filter the
data
was second
case and if I would have removed this
one and this one
actually only going to give me brand one
in this case if I bring in it's first is
going to bring all the brands so here
brand columns is filtering brand one
which means the filter is applied to all
the rows and there is no filter to the
table filter retains and interacts with
the initial filter context while filter
expression directly in calculate ignores
it it means that filter context on the
brand one overwrites the other filters
which are inside the visual specific
especially visual rule as well as
outside the visual let me do one more
variation of
this I
go and put here category instead of
brand then there's no difference only
when I view it by brand when it is brand
uses the
filter without filter function it's
giving me the brand one value everywhere
this is something really useful when you
want to want to use only brand one's
value whatever you filtered that value
you want to use across the values
understand this thing the filter of
brand one has been applied on the row
every row is only giving you brand one
so what's happening in this case is
basically the brand one is getting
filtered and that particular value is
available now for all the rows of the
brands whether it is brand two brand
three brand four all the brands are
going to show you only brand one's value
so we have the brand one value displayed
against all the brands because the
column has been filtered for the brand
one now how can we achieve otherwise and
what it is equivalent of and we
understand it better to understand it
better let me tell
you equivalent of which which will help
you to understand let's go back to this
one
calculate
again what it is equalent now we already
understood the all you understand if I
use all item brand here what would
happen it will remove the context so
when we are using this all item brand
what it is going to do it's going to
remove the filter context of item brand
means if you filter the data for a brand
it will not apply neither it will apply
the Brand's context in the visual so in
the visual row if you have a brand three
brand four brand five that is not going
to be applied so this has been entirely
removed so what should I have given if I
simply say all item brand grand total
but now what I'm seeing after that is
now let's put the filter of item brand
equal to Brand one what is happening now
you have all the item Brands out of
which you are only bringing in brand one
now what you're going to do here is
you'll bring this
in let's bring it inside the vi
it's same as this one so what's
happening now that in the visualization
when you going to see the each row which
is talking about a brand it is not
filtering the brand because of all item
brand but it is getting the value of
brand one because but said all item
brand then filter the item brand equal
to Brand one so it is only getting the
value of brand one for each row so the
filter context has been removed and
especially when it is displayed in the
visual so especially when the brand self
is appearing in the visual the visual
filter context of the row is also
getting removed and based on the value
which we have filtered here in our
measure based on that only we are
getting the value displayed so sometime
what would happen if you think that I'll
just simply say item brand equal to
Brand one or item brand equal to Brand
one brand two brand three or I use the
or statement it's going to be same as
what I use in filter that's not it's not
same so calculate with Filter function
and without filter function are not same
remember this when you are the
calculation now let's learn earlier
function this function will allows us to
get the current row value so as you have
learned when we create a calculated
column and we do let's say sum of that
column it gives us the total of that
column but we always don't need it so
definitely we require filters now while
doing that filter we need the current
row value let's say I want to get the
customer first sales days or purchase
date for the same customer I wanted to
find out in the entire table what is my
first purchase dat so there earlier can
help us to check that out what we I'm
going to do is I'm going to go to table
View and inside table view I'll go to
the sales table by clicking on that now
I able to see my sales table now in the
past I have shown you when I done sux
sales gross amount it has given me the
total amount what I would like to do is
I would like to create a new column now
which I can do by clicking on column
tool because I already clicked on a
column so column tool is visible and
inside column tool I have a new
column let me make F little bit larger
control and middle Mouse button scroll
now the column which I want to create is
the first sales date basically what does
need I have a sales date in this row and
I have a customer ID but for that
particular customer ID this might not be
the first sales date I want to find out
what is my first sales date for that
customer ID there are couple of options
I can use but I would like to use Minx I
want to find out the minimum date filter
I want to filter the table how do I want
to filter this table sales table I want
to filter now complete sales table is
available as you know the this is a
column at the moment I say sales table
complete sales table available what I
want is I I want to look say sales
customer ID equals to what customer ID
so one way is I take the customer ID
value in a variable if I don't want to
do that then there I can use function
earlier if I use earlier I can again
give sales customer ID this means
current row customer ID the customer see
understand in the filter when I say
sales table the complete sales table is
available when I say sales table
customer ID complete tables customer ID
is available now I'm saying current rows
customer ID so I got the current rows
customer ID now the table only contains
the current Rose customer ID and from
that I want the sales tables sales date
minimum sales date so for this
particular customer the table is getting
only that portion of the table which is
equivalent of the current customer you
can see that particular partition of the
table I'm getting now and then I'll get
my minimum sales date from that
particular partition so let's do one
thing let's see is this date equal to
the current date because if this date is
equal then this might be the first
record we are in search where this is
not equal so this is not equal so we can
filter on this customer so the customer
ID 2954 we can filter on 2954 so number
filter equals
2954 and there are so many records and
if I now go ahead and sort a sending
I've done a sort ascending here or this
particular customer ID now let's look is
this date available for all these yes
the 1119 date is available for all the
rows that's the first now with earlier
you can have little more complex
calculations also it's not that you can
have the simpler calculation like this
let me clear out and take one more
example let's say you want to find out
what is my last sales date you know for
this customer this is my first sales
date but I may like to know what is my
last sales date isn't it what is my last
sales date now the last sales date
becomes a little bit more more tricky
and we need to add more conditions how
so let's add a new column and try to
understand what is my last Sal date now
look at this column first so in this
case what is happening when I'm
comparing customer to customer and I'm
taking minimum then I'll get the first
date next thing what I need to do I also
need to consider the sales date I want
to know that sales date which is before
current row sales date means sales date
is strictly less than the earlier sales
date and then I need maximum out of it
so customer is equal to the customer Sal
state is less than the sales state in
the current row and what ever data you
are getting from that data get the max
dat so let's copy this formula so we'll
get last sales or last purchase not the
overall last last is date and here let's
start writing down again so explain you
once more Maxx remember this thumb rule
when you go into the future typically
you will require the minimum so somebody
says what is my next sales date the
typical formula would have been Minx
greater than this
date I need Max but less than current in
that case it would be I need the last
date the last date is less than the
current row date but it is Max out of
all those so filter sales sales customer
ID equals to earlier customer ID means
current rows customer ID and sales
date is strictly less than earlier sales
Sal date now I got a partition where all
the dates are less than the current date
for the same customer now let's get the
max out out of those sales date so now
we got our formula for the current
customer the sales date Which is less
than the sales date at the max out of
that enter you can press enter or click
click on this button commit button you
will get this answer for few of the rows
you might not get it but for few rows
you'll get it so let's filter 2954 once
more equals
2954 now sort ascending on the date
already sort ascending now row was 19 so
we are getting 19 here and let me do one
thing we make it little bit smaller so
let me compare the dates now well so
1912 to 17 1912 to 17 Trail by one row
what we have done here basically we got
the data which is trailed by one row
here this is basically previous date or
the last in this manner you can use
earlier now there's one alternative
which I should also tell you that in
case sometime what would happen I'll
tell you when you want to use earlier
function you cannot use any calculation
here like I want last month or something
we need a EO mon function so on earlier
function doesn't allow you to do that in
such scenario I'll give you the
alternate of this one only by clicking
on again new column I'll tell you how
can you achieve this and in that case
I'm going to create a variable so
variable uncore cust means customer
equals to no need of earlier here simply
give customer ID and then you can give
underscore C and remember that whenever
I create a variable I used underscore so
that I can differentiate then you give
variable where where means what happens
in a formula or in a measure when we use
variable so this is the syntax let me
explain you so you used variable then
you use the variable name and then you
use the column in case of column it
should be column in case of major it
should be a major or it can be a filter
condition we will learn when we do now
second one is I want date so simply I
current rows date and then I can use
that as underscore sales say date now
when when you use variable you need to
write down a return statement so how my
formula is the name equals to variable
variable name and the variable formula
written statement and the formula after
the written statement again I don't need
earlier here I need underscore date now
Dex is not case sensitive so whatever
you small or uppercase combination you
can mix and match and do it and let me
press enter uh we have the same name we
it will not let me rename this as a date
one press enter or you can press the
commit button now we got the same
results that we had previously there is
no difference in this one you can use
function earlier so you have learned how
to achieve the same result with and
without earlier the advantage of these
variables is that let's say I want to
get the date in the last month I could
have used here F function EO month and
got the last month end date and I could
have compared with that with the last
month end date that is little bit more
flexibility I will get if I use
variables depending on the need you can
use earlier or you can use variable so
let's start learning the search function
so let me go to the table View and
inside the table view I'll open the
geography table so search function can
be used both in a column or a major so
first we will take the example of a new
column and then I'll also tell you how
can you use it in a major so let me
click on a column and I'll get a column
tool and inside the column tool I can
press new column create a new column and
in this column I would like to search
City I can use function search SE what
what search function does for us it
takes a text means the text which I want
you to search within the text it can be
another text or it can be a column in
which I want to search start position if
I don't want to start from the first
position I can give the from which
position I want to start the search and
not found value if I don't find a value
what should I return so basically it's
going to return return the index of the
first letter so let's say you search for
new and it find new starting from fifth
position so it's going to return return
five so what if it doesn't find you can
return return a not found value if you
don't want to return let's say zero or
something you can return return blank
but prefer to return return a value what
I want to search I want to search new
Now search is not case sensitive and
because search is not case sensitive
what I can do is I can write down new as
NW all cap then I can give a column name
I could have given a string where I
wanted to search this but here I'll give
a column name start position I want to
start from the starting so I can leave
it empty if I does doesn't find I want
to return zero it means I'm going to
return a position zero if it is not
found so that I can identify it is not
found but I can do here is I can go
ahead and do sort descending here and
sort descending means it will sort the
column on higher Value First there are
only three values which contains new so
these are the three values which
contains new and they are coming on top
now so this is how you use basically the
search function now what you have to do
to use it in a measure so simply what I
can do is I can search this and I can
use that as a result in my filter so let
me give you a quick example of a measure
I'll create a new page and in this new
page I'll bring in city and I'll force
this to become a table visual so once
you click on a visual and then you press
another visual type powerb automatically
changes it into that particular visual
now I need a measure so I need the count
of the Cities which contain new this is
my simple very simple requirement I need
count of the Cities which contains new
so cck click on a new major available on
the Home tab and major name is Count new
cities or cities which contain new but
to just to keep the measor them little
bit short I'm doing this calculate so
I'm saying I want to calculate count
geography cities I would like to count
the geography City filter the geography
table search what I want to search new I
can give in any case because it is not
case sensitive in what column geography
City column
and let me write down geography City
because I have City in the customer
table also so just want to confirm I
have used filter in the filter I used
geography is going to take geography
City but just for the clarity I'm
putting it here I don't want to give a
start position zero and I can say
greater than zero now there could be few
versions I'll tell you there's a
function count rows also available with
us so you can do it like this or I'll
tell you one more function which you can
achieve it easily let me create a new
major and instead of all these I can use
found rows and inside that I can give a
filter condition and I can create
another measure let me rename it as one
now you might be surprised why I'm
getting only three rows I'll tell you
the reason also what happens is any row
which is getting filtered by the filter
clause for which we are not getting a
result means the value for that is blank
and blank is not zero okay for value for
which is blank it will not appear in the
visual both the measures right now in
the visual is only giving value for
these three City
it is always the super set let's say if
I put net now and net has value for all
the cities so all the cities will appear
and we will get blank values for
so these are the quick example how can
you use a search in a major or in a new
column so let's now learn find we will
go to the table View and inside the
table view in the geography table we
will try to use it we have already used
search here the search and the find have
the same syntax the difference is the
find is case sensitive and also you
cannot use Wild Card characters in The
say search you can use Wild Card
characters but in find you cannot use it
again find is case 10 set so let me copy
this because I clicked on a column I'll
have the column tool available with me
and inside that I have new column which
I'm going to click and paste this and
I'm going to change this find and the
Syntax for the find is same let's
discuss that find and let me start the
parenthesis once I start the parenthesis
I got the synex find text the text which
I wanted to find within text I can give
a text or I can give a column name in
fact I can give a major when I'm
creating a major start position the
position from which I should start and
not found position if I do not found
what I wanted to return I can also
return a blank if need I use
this you can see I'm not able to find
any cities with new why because any W
new is capital new inside the city start
with the default position return zero if
not found is returning me zero because
any W is not available in any of them so
let's try n capital
ew now we will get the first three
values as 11 one because we are able to
find out new on the first position okay
so this is how we use find we will take
a quick example of a major also so I'll
go here on my report view I already
create page where I use search let me
call it search and find now and let me
add a quick major I'll click on the
major table and I'll get a table tool
because I clicked on the table this time
and inside that we have option for new
major I click on that and I'll quickly
write down a major find city find new
city let's say
and we'll use count
rows
filter
geography geography comma find what I
want to find new new should be in title
case where I want to find it in
geography
City starting position if not found zero
greater than zero it should always be
greater than
zero same result but if I make it an ew
capital or I change anything let not
even this I make n
small it will return all blank because
I've used filter and when filter doesn't
find that value it's going to return a
blank for that so these are the quick
examples of a new majure as well as a
new column now let's learn contains
string function contains string is
function which is not case sensitive
means whatever you want it to search
that's not going to be case sensitive it
cannot search for card anyways it's very
similar to the functionality what search
and find provides it but actually it
returns true and false it doesn't return
a position to you so let me start a new
column I already clicked on a column so
in the column tool I have new
column and let
me let me search
contain new I'll use
contains
string within text so first we have to
give which within what text I can give a
column or I can give a text I'll give
city as a column and what I want you to
find out I want you to find out new I'm
going to give it in all caps to check
whether it is case sensitive or not it
is actually not case sensitive as is
given in the description it's going to
return true and false whether it finds
it or
not it returns me
true for first three cities where
previously find and search for giving me
111 which is position so we can can use
whenever we need true false results
let's take an example in the report view
for major so I'll go ahead and copy this
major and try to simplify this I'll
create a new major I'm in Major Tool so
I can use new major and I'll now say
contains
new and here let's change
it simply let me try to write down
contains string first is within a string
so we need to
give geography
City
new so what we have done is basically
filter table geography and simply
checked true and false here and this is
what we need in the filter every
condition in the filter should return
return a true and false so this one
satisfi that condition so I don't need
to check equal to true or false that I
don't need it's simply written true and
false to me in this manner you can
create quick major and a new column on
contain string let's check out function
contains string exact now contain is
string exact is going to check for case
sensitivity the syntax is very similar
to contains string so let me copy this
contains string column I clicked on a
column and if it has a formula it will
start showing it in the formula bar
as I clicked on a new column I will also
get a new column option I can simply
click on that and cop and create a new
column let me paste this and let me call
it
contain exact
new and let me change this contain
string exact so I removed G so it's
starting suggesting me the syntax is
very similar within string find a string
returns through the string contains
another string contains string exact is
case sensitive it is Cas sensitive so
when I give new in capital it might not
return return any
true Everything Is false because new is
not present any W new in capital is not
present title case new is present in
first three so I'm changing that right
now in my
formula making it a little bit bigger
for you enter and now I'm going to get
true let me use this in the
report view by creating a major so I'll
copy this contains new major and because
I clicked on a major I do have major
tools available with me click on a new
major to get a new major contains
new contains
new exact and here instead of contain
string we'll use contain string exact
we'll keep it capital as of now all new
as all
caps and we'll not get any value so now
we will change it to title
Case press enter and we get the values
as three because there are three cities
only which contain any W in title case
in this manner we can create major and
column for contains thing exact now
let's have a look at three more Dex
function which is right mid and left and
to do that what I'm going to do is I
will go to this table date Auto I'll
going to create first a column and what
column I'm going to create here is
basically create a date which is in ddmm
and YY y format so I'll use format
function format date which is there in
this table
comma DD iy mm iy YY y y format now my
objective here is to extract out date
from this column and put it into date
function what I want to do is I want to
use the date function date function
require year month and date I want to
extract this and during the extraction
of this we will be able to use all three
functions left right and mid so let's
start again with a new column I already
clicked on a column so column tools
going to enable us or a new column me
quickly click on new column and in this
new column I would like to create a new
date again I'm creating a date just
giving a name new date I'll start with
the date function now date function
requires first what it require year
where is the year here in this date here
is last four characters of this and to
get the last four characters we use
right right is the function which you're
going to use what WR going to take is
going to take a text and number of
characters Returns the specific number
of characters from the end of the WR
returns from the end how many characters
I need from the end I need from the end
four characters the four characters
represent ear now Dex is pretty flexible
sometime when you return return text and
it use it as a number unless youate
creates an error it does do that autoc
conversion now month where is month
lying here so here in this string the
month is lying in the middle let's check
the number so this is the first position
second position third position third
position doesn't have month number
fourth and fifth position has the month
number I need four comma 5 okay or I
need four and two characters let's look
at the mid function which is going to
help us out so we need mid function here
let's look at the syntax of mid function
it has three arguments is requires first
argument is text in which we are giving
a column you can give a text also means
you could have given a hardcoded date
here then the start position start
position in our case is fourth character
it's not the third character it's not
starting with zero it's the exact fourth
character when you count from one 2 3 4
and then the number of characters how
many number of characters we need so we
need two characters so we'll use State
DD YY from the fourth I need two
character it should return a month now I
finally need day and day is present as
first two characters and first two
characters there is a function which can
help us that function is left what is
the syntax of left left function the
text we can give a column or a text and
number of characters we need how many
number of characters we need from the
starting of the string we
mmdd y y y y and there's a Tim stamp
also I can remove the time stamp I
clicked on the column I can go to the
format and I can choose a format I want
I can choose a short date so in this
manner you can use these three functions
right mid and left definitely you can
use them into a measure also and you
will be able to create the required
calculation using these one more thing
which we can do with this we can use the
Left Right function along with the sear
function to create the first name and
the last name now what we are going to
do for that is we'll go to our geography
table so in the geography table there
are only few cities which contains the
PO names like New Orleans new Las Vegas
and JY City for only few cities where we
have first name last what we'll do ins
whenever I contain one should only show
me first name whenever I have two it
should show me first name and last name
so last name would be empty in case I
have one word City so let's take out the
first name what's the rule for the first
name so the first name should come till
the place where we have the B as a
character so what we can do is we can
use the left function we use left and on
the city column and till what place
first few characters we should go we'll
say search and in the search we will say
the find the position uh so the position
of what position of space the moment we
get the space then within the text which
is City start position we are not going
to mention now I'm not going to mention
not find Value as zero because what
would happen if I press not found value
is zero let's understand this because
when we don't find the space it's not
going to give me the first name that's
what I don't want like in the new ark
I'm not getting any name but I need the
name because that's the first name this
is only name
what we say in such case is we use one
more function and we learn now a new
function which gives me length of the
text and I'm going to use the length of
the text so what I'm saying here is in
case you don't find it actually written
the length so what would happen you will
go till the last letter of that thing
and you are now getting that particular
City where we only have the first name
so first name is all sorted now we need
to work on the
so I want to use right what is the text
in the right I want to give I want to
give the city and I want to give the
number of characters so now number of
characters is from the end but when I
use the search function that's going to
give me the position from the starting
isn't it so if I say space comma space
within text City
starting position and let's say zero is
the not found position right now what
would happen the space is the starting
position is not going to work for me
because space is at the fourth position
is going to give me last four character
so what I need exactly I need length
minus the position of the space so what
happens when I do that now what happens
because if I'm returning a zero or the
city is where it has the for the cities
where it doesn't have the space it's
going to give me the last name also as
first name which I don't want so why
don't we return length there of the
city what we are saying is we are going
to return the length of the city in the
search when we don't find anything so it
will take us to the last characters so
length minus the last character is again
the length is zero so let's see what
happens in that so the last name goes
away so see it's almost the similar
search which we have used there now
definitely because we want the last
character so we use length so from here
we do and other thing what you could
have done you could have used mid
starting from the space and use the mid
and the length is number of characters
what you need but again that would have
number of characters again you to find
out using the length and the search so
right is the best choice in sear case so
this is just an implementation of you
know search and right and left together
so these kind of combinations will keep
on coming to you when you do your actual
project you can do similar kind of
exercise in Majors also this is combined
version of two thing functions let's
understand the function select columns
select columns function can be used to
create a calculated table with the
column renames and it can also be used
as a table expression inside a major
calculation I clicked on a table and
inside the table tool I have this new
table op option which I'm going to
click and I'll use select columns select
columns now the most important thing
which this select column does is it can
select a set of columns me you can t
filter the table vertically you can
reduce the number of columns which you
want so let's understand the syntax of
Select column select column takes a
table and then it takes the pair of name
expression name expression name
expression and it finally returns you to
a table so this name expression pair
means one is you can rename the column
so basically you can have a name of a
column and then you can give a column
you can give the same column multiple
time the name expression also means that
you can give formulas for a column so
let's say you want to say A+ B A multip
by B Cas which is statement or something
that also you can do means you will be
able to perform low level calculation
while you are writing down the
expression in select column and select
column is not going to group by or
filter it is just going to give you a
table with the set of expression renamed
as per your requirement now inside the
table expression you can use filter if
you want or after the select column
again you can use filter or summarize
whatever you want in this manner you can
use select column for various purpose so
let's say I want to bring in table now I
want to call brand with some some other
name let's say I want to call brand
name again let's say I want brand with
some other name brand two let's say
brand only I can do that then I want
Item ID I can give a new name item
identifier and I can use item id now I
selected three columns let's assume that
I only need these three columns so now I
got the item table my item table used to
have 55 rows I again got the 55 rows see
it's not summarizing or it's not
filtering here select column is not
filtering you can use filter inside the
table expression instead of item you can
use filter something there you can use
calculate table if needed but whatever
columns I'm getting I'm able to rename
that so what I would like to do now is I
would like to add some expression here
I'm making it a little bit large so that
you can see the table expression clearly
you would have remembered that some time
back we added some calculated column in
our item table so I clicked on the item
table and if you look at this group two
this is something which I wanted to add
there is a switch statement which is
categorizing the category into various
groups and let me go back to the select
column table calculated Table and there
what I would like to do is now I would
like to add another column which I would
like to call as group so I have given a
name and and now let me give the
expression the same expression which I
have given there now after giving that
expression let me come out and press
enter am I able to get that so as you
can see every role the calculation has
been done and I able to get group one
group two group three so you can see
that the category one is lying in the
group one but we don't have a category
but it is still calculated because it
was part of the original table so let's
add the category to understand that so
just before that now I am adding C
category and the category column from
item table while I have given a table
name in the table expression so I might
not require the table but it is always
better to use table and the column name
the fully qualified name and now you
will be able to see the category column
so you can see the category column and
you can see that the category 2 is part
of the group one Category 5 is part of
the group three now can I do some
calculation like multiplication or
something let's say I want to add let's
say item by brand I want to do very
simple stuff here is I want to multiply
the item ID by brand ID for our
reference purpose let's do that and let
me enter now again or I can press this
commit button and now you can see that
the item ID and the brand IDs are
getting multiplied actually the item
identifier is one in this row and the
brand ID would be 10 for the brand 10 so
I'm getting a value 1 * by 10 is 10 so
in this manner you can see that we are
able to rename a set of columns and we
are also able to write down name
expression name expression and enhance
our calculated table at the same row
level where the original table was and
able to get the data so still have the
55 rows but we have the additional
column in a new table using select
columns now sometime this helps there
are operation where you may be using in
the same table or maybe we need to
rename the column before we use it and
in such cases select column is pretty
useful especially when you do cross join
or you use generate function and the two
tables have the same column then you can
use select column to rename such columns
so in this manner you can use select
column to create a table which is cut
vertically it can be combined with
calculate table and filter to get a
horizontally filtered table or the table
which where the rows are also filtered
here columns are filtered let's learn
the next function which is summarize the
summarize function can be used to create
a new calculated table where we can get
the aggregated data it is heavily used
in measures to you know handle the
grouped data sometime to correct the
grand totals creating intermediate table
which can be further used for analysis
so let's learn first of all how can we
use summarize in a new calculated table
so let's understand what that function
is so first I'll go to table tool new
table I want to create an aggregated
what I want in my aggregated table is I
want the sum of items net sales item
wise brand wise category wise or let's
say City wise take two different
dimensions so we would like to create
brand wise net sales and gross Sal how
do we do that so summarize it we have a
function summarized what does summarize
function does first it takes an table
then it takes the group Group by
expression the group by expression
doesn't require a rename you cannot do a
rename and then name and the expression
means expression means the some the
column where we are going to use some
kind of aggregation for that you can use
an rename again in the table expression
you can use add columns select columns
calculated table filter whatever you
want you can do that so here what I want
is I want to summarize the sales data
what I'm going to use I'm going to use a
center table sales table because if I
use the dimension table I might not get
an access to the many side of the table
I'm trying to use a table which is fact
which is a central container and it is
related with tables like item and
customer and as you can see it is
started showing that so from geography I
would like to bring in state so I would
like to summarize my data on state item
brand State and brand and then I want to
calculate net net is already a measure
let me call it as and I can rename I
usually what I do whenever I create some
columns by myself I usually rename that
underscore to differentiate and I can
use a net major now I'm using net major
it doesn't mean that it's going to
filter with my slices value it's not
going to change it's going to be the
static value and if there is some
row and let's use the major gross then
can I on the Fly do a sum of quantity or
something so let's try underscore QT y
comma sum of sales quantity I want to do
on the Fly sum and now I want to create
this table so I'm getting 442 rows and
I'm getting these values so for New York
I have net quantity as 24,000
approximately gross 29,000 and quantity
as 84 it has no impact of filters and
slicer and this is true with all the
tables so let me go here in the filter
region here let me use something on all
pages isn't it so let's go to a name and
basic filtering customer one it's going
to filter on all the page customer one
but if I go to the table view there's no
change still you can see the value is
same 24,000 29,000 and 84 there is no
difference calulated column has no
difference when a filter or a slicer get
applied on the page it has no
relationship it is precalculated even
the measures if you are using in such
tables get calculated and evaluated at
the load time so they are static in
nature calculated table and columns are
static in nature so don't expect their
data to change using filters and slicer
as of now that is not possible so we
have used summarize here in a calculated
table there could be n number of things
you can do with using this you can have
some permutation combination with other
calculated table functions like
calculate table filter Etc and it could
be used in major and major we can can
drive few things so we will go ahead and
take a major case little bit later let
us learn a set function which is Union
and for that what I wanted to do is I
want you to bring in a new file from the
GitHub and that is the file which we are
going to use for few more operations set
operations
so the file name is upend and summarize
Group by and we are going to use in few
more operation as I said earlier we're
going to use this in few more operations
I'll right click on the raw copy link
and as we have done in the past we will
go ahead and use that inside our powerbi
get data
web and inside the web you going to give
this URL click on okay it should suggest
us two table data one and data
two data 1 and data two two Excel sheets
are there I'm taking both of them and
right now I don't want to do any kind of
transformation of data so I'll directly
load these
tables the tables are loaded
now I want to create a union of these
two tables whatever data they have so
data one has three rows item one item
two item three and data two has item one
item two and item four okay and they
have different quantities so because
they have different data I want a union
all usually the Dex function Union does
a union all so how would we do that we
want a new table again Union function
can be used to create a new calculated
table as well as it can be used in
measures as per requirement and in the
new table let me go ahead and
do rename as Union
table and we'll call Union table one
which is data 1 comma data
2 so we got a union where all the values
have been just added up so this is how
you can use Union function and we will
see more use case of this little bit
later let us now learn set function
intersect it can be used to calculate
calculated table and it can also be used
in Majors I'll go to the table view I
have two table data one which is having
item one two and three with some values
and table two which is again having item
one and two and also a new item item
four which is having a value eight and
these values are not matching items are
matching but the values are not I'm
doing intersect operation which gives me
common values is it going to give me
anything
let's go ahead and check it out so I'll
click on any of the table and go ahead
and do intersect operation under the
home table I can see new table I'll
click on the new table and I'm creating
a new table here but this can also be
used inside the major I'm creating a new
datable data 4 why not data 3 why data 4
I'll let you know intersect left table
and right table only two arguments it
can
take so let's give a table which is data
one and the second table right table
data two let's see what these two tables
have
common there's nothing common zero rows
are returning how do I check whether
it's going to work or not so let me do
one thing very one quick thing right
click on this table data one and copy
the
table then go to enter data under the
Home tab once it opens up paste it you
will get the same table it just got
duplicated I'm going to change the value
for item three and I'm going to call it
data 3 now you got your data 3 and press
enter or I can press load button now I
got a table data 3 which is having
something in common with data 1 the
first two rows of the data one is common
with the first two rows of data three
data 1 and data 3 has two rows common
now I'll go to data 4 and instead of
data 2 I'll use data 3 and press
enter and as you can see I got a table
item one as one item two as two these
are the exact common set of values
please remember the complete row set
need to match we also have functions
like distinct values and summarize which
can help us to get distinct values for a
single column or summarize for multiple
columns and that can also be used in
such cases to create a combination of a
column set before we use intersect so as
per your need you can can use it in a
table or in a measure let us learn the
set function minus don't have a minus
here we have accept and what the accept
does is something which is present in a
table and not present in the second
table so something which is present in a
not present in B I need that kind of
data now to do that what we are going to
choose here is data one which contains
one item one 2 and three with three item
three having value three data table
three where item three has a little bit
different value now let's start by
creating a new table as of now we can
see new table option under the Home tab
let's click on
that this table can be named as except
let's use the function except except
requir two tables left table and the
right table and it's going to give the
data which is present in left table
which is not present in the right table
Returns the row of the left hand side
which is not present in the right hand
side table this can be used for
calculated table table or measures take
an example later how to use this in a
measure so let's use the data one as a
left table and data three as the right
table we should get the item three row
with the value three because that is the
one which was there in data 1 table
which was not present in data 3 table
what happens when I change the position
now I should get the item three but with
the value six because that is the row
which is present in data 3 but not
present in data one one in this manner
you can use accept function this can
also be used to find out sometime when
you come across the cases when you need
a major something which is present in
particular situation and not present in
particular situations in such cases you
can use that accept function will help
in measures Also let's learn distinct
function and values function there are
two functions let's learn how they
behave what they give us so I'll go to
the table View and inside the table view
I have this item table and in this item
table I have branch and the branch are
only 13 but they're repeating in all
rows 55 rows similarly categories are
only five repeating in all I want to
know what are the distinct values I have
for the brand and item and I may want to
repeat that so let's go ahead and try
that out so I'll go ahead and create a
new
table and let me give it as a name as
Brands which is nothing but distinct
item brand it's give me distinct item
Brands can it give me distinct of a
table also yes it can give but for that
we need a table with repeating values
we'll take that example but before that
let's look at one more function which is
values again from the Home tab we'll go
to the new table function and create
categories category table and we'll use
values item category it can take a table
or a column name that's one of the two
things it can take when a column name is
given it return returns a single column
table with unique values when a table
name is given it Returns the table name
with the same column we have functions
can give us distinct values you use the
column example can I do with a table I
have two tables data one which is having
two rows which is common with the table
data three what I want to do here is I
want to see can I combine them Union I
have was able to do a union of those and
can I get a distinct so let's try to
have a union distinct table which is
actually the SQL Union can I have the
SQL Union let's go to a new table again
from the Home tab this time and we want
the union the SQL Union which is not
Union all usually the Dex Union is Union
all so we'll say Union of data one and
data three what is giving us it's giving
us the data which the duplicate rows
let's see can we use the function
distinct and the moment we give distinct
what does distinct function con take
distinct function so distinct can take
column name or table expression return
one column table that contains the
distinct values in a column for a column
argument or multiple column with
distinct unit combination of values for
a table expression argument table
expression argument we want to give
Union data 1 and data 3 let's see what
happens so now we have item one and item
two repetition on item three is having
one value as three and one value as six
and that is why both of them are coming
so with the distinct we are able to do
it can we also do it using values let's
do one thing let me tell you one quick
thing I can make it this one as a
comment copy so we remember both and use
values here now okay values function
except a column reference expression or
a table expression as argument one okay
it's not taking this one can it take
already existing table let's do one
thing so we have Union equal and let me
make it as only Union the union SQL
table we have still have the duplicates
now let's create one more new table we
have one physical table and now we are
going to use that another physical table
is distinct SQL as values Union equal
table so understand this thing when we
use the table expression it doesn't give
us the unique values so first you are
not able to use values with a variable
table and second it's not going to give
you distinct values for a table so for a
table distinct values we have to use
distinct but for a single column we can
still use values function for a table
it's not going to do it it has a
different purpose so in this manner you
can use values and distinct function as
per your requirement and you have
learned some of the differences we have
another function which can group the
values and that is known as Group by we
will learn a use case where Group by is
going to behave better than summarized
but to do this use case let me tell you
what use case I want so in this use case
what I want to do is I want to create a
new table using data 1 and data 2 and
without creating a third variable using
that inside a variable I want to
summarize the data I want to sum the
values so as you can see they have some
common rows with items is item one item
two are common in those so I want to
summarize that value I don't want that
to repeat Union function will repeat it
it's not going to aggregate that let me
click and create a new table and the
first time I'm going to attempt it with
suiz summarize Group by so let me create
a variable where underscore Tab and this
is a very simple table which I'm going
to create using Union data van first
argument it can take multiple tables so
data one and data two only two arguments
I want to give as you can see in the
syntax I can give multiple tables but
I'm only giving two tables here I have
two tables then shift enter return what
I want in return is summarize how many
columns I have two two columns isn't it
so what is my variable table and from
that table one column is Group by which
is item so I can use item comma I want
the sum so underscore sum of what sum of
underscore I can't use sum so I need to
use sumx underscore Tab and comma values
column and let me I got a sum column I I
got a group by column and let me press
enter what are you observing here it is
actually 22 it is actually the sum of
the complete column this table in the
sumx is not taking the row context it's
taking it as a complete column the
current row context is not available
while I'm doing the summarizes some same
as creating a calculated column it takes
the complete value of the column but
that's what I don't want what should I
do in such case so let's copy this code
and create one more table again under
the Home tab new table is appearing I'll
click on that and let me paste this so
this is Group by Group by so again the
table with Union but let's start with a
different function in the return and the
function which we are going to use is
Group by what does Group by takes it
takes a table expression Group by column
names name and expression for expression
so whatever number of Expressions you
have you need to use a name for all such
expression you need to rename the
expression where you going to have the
aggregate data same is true for
summarize also what is our table name
underscore tab gr by the column name is
item want Group by item comma I want to
do sum underscore sum comma sumx the
function I want to use and here instead
of table name I'll use current group
function and then I'll use the value
column and let me close this and try out
and now you can see the item data is
grouped properly because of this current
group functionality available with the
group by function which allows us to
group the data which is applicable for
the current Group by in the context so
in this manner you have observed there
is a difference between summarize
function and the group by function let's
now learn a function which is known as
generate series generate series function
can generate a table with a sequence of
numbers so let me click on any of the
table and from the table tool I'll click
on new
table I would like to generate the
numbers sequences from let's say 1 to
100 the function is generate series
what is start value start value is one I
can give I can give zero also end value
is 100 and increment by
one so in this manner I'm able to get a
table which is generating sequences for
me and it is giving me 1 to 100 now in
case you want to generate odd number
series you can just give it two here
because it's starting from one it will
generate a OD number series
it will have 50 values only because till
100 we have 50 only now if I want a even
number I can either start from zero or
two so that will create a even number
series now let me tell you I can create
a date table also along let me use
generate series the first argument start
value the second argument let me
generate it for 365 days and the third
argument as one again it's going to
create for 365 days I'll go and use now
add columns now add columns is is only
getting what the values column with 365
values comma name I'm create going to
create a column which is known as date
and what I'm going to date there is a
beauty about the date Dex date there's a
beautiful thing which we have learned
about Dex date that we can simply add
the numbers by using the plus sign and
it will keep on giving us the dates
added by that number so let me start
with 2018 comma 01 comma
01 and let me add plus now the generate
series is returning me the value column
which now I can use in this add column
expression after the
name and let me press enter and as you
can see we getting the dates generated
but there's a problem we are not getting
the first gener because it's going to
add the one also from zero to
364 days now we got all the dates what
we need in this manner you can use
generate series function you can use it
in table you can also use it in measure
there could be use cases where you you
need to generate a sequence inside a
measure and that is where you can use
the generate series function to generate
sequence of numbers and that can be
further used through some complex
calculations let's learn two more Dex
function generate and cross joint both
the functions can generate a table which
can be used in a calculated table or a
measure which basically do the cartisian
product is going to create the complete
combination of the values to take this
first example for Generate cion what I'm
going to do is let me show you item
table now item table has 13 Brands and
five categories so total combination is
65 but we are getting 55 rows here it
means there are some combinations which
are missing so first of all I want to
generate all those combination and the
second thing could be that what is the
combination that is missing out of these
are the things which we can do so let's
go ahead and find that out for that what
I'm going to do is I'm going to create a
new table and for that I'll go to table
tools and new
table and how do I create that distinct
combination of values so for that I need
to use the distinct function also so let
me use
generate function first of all what does
generate function do generate function
takes table one and table
two the second table expression will be
evaluated for the each row of the first
table returning the cross joint of the
first table with these results now this
evaluated for each row as a real big
important for that we have to take a
separate use case but we will take
distinct item brand as the first table
and I could have taken a bigger table
but because I want to create that
combination I'm taking a single column
table but definitely you can have a
table which is having more than one
column can also work out and then we
will use item
category we will use distinct item
category as second
table
so so now we have got 65 rows as you can
see it means these are the possible
combination now how do we find out what
is missing combination we have learned
one function
accept now except function gives us
something which is present in a not in B
so how do I get the distinct values I
can select all the values or I can do
very simple thing I can go and use the
summarized function what does summarize
function take it takes a table as an
argument first of all and then we can
give all the group by columns and then
the name and the expression for the
aggregated column but here we only need
the group by column that is item
brand and item category so these are the
distinct combination which is present
with us so now you can see there are 29
such combinations are missing so
basically it is not that 55 rows has all
distinct combination there are 29 such
combinations which were missing in this
case and let's sort it on particular
category sort ascending so for category
one it is saying there is no brand 12
and 2 so let's go to the item table and
validate that so we go to the item table
we select category
1 and you can see there is no brand 2
and 12 here it means we are getting the
correct
results we have done this using generate
so we see what generate does and what it
can do the same operation can also be
done using cross joint so we'll again
create a new table table tool is visible
so let's utilize the new table under
that and this new table would be cross
joint
again we can use this into our Majors
also by generating some tables so cross
join what cross joint required return
returns a table that is in cross joint
with the specified tables here you can
have multiple set of table the returns
the table that is in cross joint with
the specified tables now it is not
talking about the row that's very
important okay so we will use
distinct
item brand comma distinct
item
categories and we have got the distinct
65 combination
again again I can use that accept code
to find out what is the combination
which is missing so this is a cartisian
product which has happened 13 distinct
value five distinct value cartisian
product has been done by cross joint now
we'll complete that step and then
discuss what is the
difference
except and what I've done is I copied a
part of it let me use that again
summarize item item brand and category
is going to give me distinct combination
which I have done just a minute back I'm
bringing in that and I should get 29
rows same 29 rows I'm expecting here so
it means we are able to do cross joint
we are able to do summarize to get the
distinct value of more than one column
and then we are able to find out what is
missing in a particular combination the
same could have been done in a major now
what's the difference between two when
should I use cross joint and when should
I use generate whenever you need a
filtering mechanism you should prefer
generate and the reason for that is that
generate can work on the row Value Cross
join is not so let's take a new file and
I have loaded a new file for this
purpose so let me go ahead and bring in
one file so we'll use this file cross
joint versus generate it is employee
data you could have used the employee
file but I created a smaller version of
that so that we can easily use it and
understand that so let me click on that
we'll right click on the raw copy link
go back to the powerbi and in powerbi
we'll go to the Home tab get data
web paste the URL click on okay one
Excel
sheet with the name employee I'll press
the load
button employee table has has been
loaded
here so what I basically want is
basically I have a start date and end
date and I want to generate all the
dates between these so 1st to 15
February 1st January to 31st January 1st
January to 31st January 15 January to
31st January these are the dates I want
to generate all the dates between that
so let me try out this thing first using
generate Home tab new table visible
click on that what we need to do here is
basically
employee days dates one employee dates
one what we
generate generate function what is the
first table very simple employee
table what the second table the second
table is I need a calendar I need to
generate the dates between the start
date and end date can I get the start
date of employee table seems like I'm
getting end date of the employee table
T seems like I'm getting that and let me
after doing this let me
try let me press
enter and as you can see the data here
for the employee one we getting all the
dates in
January also we are getting dates till
15th of
February but for employee 2 the data is
ending on January for employee 3 it is
just 15 days of
data only those dates are getting
generated now how to do the same thing
in the cross join okay let's try again
click on the new table under the Home
tab is still
visible let's call this table as
imploy date
to cross
join employee table comma
calendar I try to get start date I I'm
not getting any suggestion so maybe I'll
forcefully write down so I copied that
code at that time it is showing me error
so seems like it's not going to give me
and yes I don't have a row context
available so I'm not able to use so what
I'm going to do here is I'll use Min
of employee start date and I'm taking
the complete table column now okay and
Max of employee end date what ex it is
doing is basically is giving me the
minimum of the start date and the
maximum of the end and
date and because of that let me sort it
on the
employees What's Happening Here is look
at the employee
second you will see the employee second
has the data in February
also employee 3 is having the January
data from 1
January and having the data in the
February
also which is not correct in such cases
what we need to do once we get this and
assuming you don't have common column
name otherwise you have to use the
select columns you have to use filter
here now the date column calendar
generate a date column so we have a date
column is greater than and equal to the
start date and date is less than and
equal to and date the dates which is
available in this table you're going to
use a filter function and the rows has
reduced from 130 plus 294 and in this
case you will see that the employ two is
no
more getting data in February same is
true for employe 3 very limited data so
youve seen that cross joint is going to
create a much larger data set in such
case and think about you have a very
large date range it can explore the data
and then we filter it which is really
not effective and think about that we
may have to do this as a major and in
case of major what happens is uh we
typically use a disjoint table and using
the disjoint table join also we can
actually for such filter we may or may
not always use generate and cross join
used there but yes as per requirement
and use them so what I've done that when
I was doing all those table operations I
actually saved the file as N2 and 3 and
I have kept that file aside now and I
came back to N2 and 4 for rest of our
operations which are typically related
to measures and now what we wanted to do
we want to learn few more me measures
and for that we need the help of some of
these table calculations and that's why
we learned so now what we are going to
learn is some of the use cases where we
need to use summarize and values they
can help us to change the level of
detail calculation like some of averages
or average of sum so basically what
happens you do a operation till a
particular level and after that you
change the aggregation so it was doing
sum and then I do the average same way
sometime what happens is we are using a
filter context of visual row and I'll
give you an example of what we mean by
use context we reuse a filter context in
the calculation and the grand total is
not going to be correct in such case on
also in such cases we can use summarize
and value sometime the way I'm telling
you may not work in such cases what you
have to do is you have to basically go
ahead and create a mejor first and then
create another mejor on top of that to
make it work so let's jump onto the
first use case where we are going to do
it I want to create average of so let me
create a matrix Visual and in this
Matrix visual I'm going to bring in from
geography table state and city I'm also
going to bring in a net measure as a
value let me expand it very simple you
have certain cities for which the values
is getting aggregated and that the same
sum is shown here but I don't want sum
at the state level I want an average how
I'm going to do that so let me start
with a new major and this new major is
going to be aage average of city net
this city I want to do some post that I
want to do average what I have to do
here is basically average X I can use
values or summarize let me use values as
of now to begin with values then let's
use geography City till this level you
have to do whatever aggregation I'm
going to do in the expression net and
then I'll complete this code and let me
bring in this new major as you can
observe here value is no more a sum it
is an average I would like to take one
more example here now we have a major
known as gross amount isn't it so let me
do one thing let me first create a major
with the help of values only and let me
call it as gross so average gross same
calculation what I've done for net and
you can see the average is happening I
would like to do the same calculation
now but with the help of a column where
I want to aggregate it into the
expression part of the average X
function so let me create a new major
again I'm going to take help from Major
Tool which is visible right now let me
paste this gross calculation and make it
gross fun and here instead of gross I'll
use sum of sales gross amount very
simple instead of measure I am going to
use the sum of gross amount expecting
the same result pay attention the result
is not same not same as this one and let
me bring in Gross for your reference
and this is the behavior of expression
function which I want you to note down
and to correct this behavior let's use
calculate inside this
calculation in the expression if you
need to do an aggregation if you are
giving a table expression table
expression and you are using aggregation
on the column then you have to use
calculate in the expression you cannot
do it without that let me do it right
now and now you can see the values are
are
matching that's great can we do the
similar kind of calculation with
summarize because values will allow us
only one summarize can allow us multiple
so let's say I want after two the
average should happen or after three
average should happen or the calculation
which are done which need a grand total
sub total correction might require
multiple columns then what should I do
so now let's try the same thing can we
do it using the summarized function we
have already used the value function let
me do one go ahead and copy one of the
calculat I'll copy this gross
calculation and I'll modify this so just
for my reference I'm copying it and two
and let's put this into the commands and
try to replicate the same the first one
we are going to do is aage X summarize
taes this is the center table geography
City till City I need the sum and then I
simply use the gross measure and let me
check the calculation out and as you can
see and let me move the gross
maybe at the start along with the net
now you can see this calculation is same
as this one so mean summarize can also
help us and summarize can take multiple
columns you give the center table the
reason I given the center table is that
if you are working across two tables
like item and geography then still you
will be able to do such calculation
let's say you need it after two columns
so there is a level of detail which you
have you know used it and post that you
have done it and it is not that if even
if I go let's say one step ahead and
let's look at this let me go up one
level now in this case right now there
is no City present in the calculation
the level of detail has been included to
take the average so if some of you
wanted to have a level of detail include
this is something how you do level of
detail include you have learned remove
filters that is exclude now this is
include now let's play around further
with this so what I'm going to do here
is can I do a sum of gross amount here
and is it going to be a little bit
different so we say sum of sales gross
so just like values do I need to use the
calculate function or summarize can do a
better job for me no I need to use
calculate so let me use calculate here
and I'm not creating multiple Majors
here you for your reference you can go
ahead and create it this is one but yes
I'm going to do one more version of this
one let me copy this and let me create a
new measure of another version which I
can create with summarizes actually
summarize can also include a calculation
inside the table so we have the Group by
columns and after that the expression
says that you can have name and
expression here what does that mean for
us you can have underscore one or I can
give underscore gross for your reference
and name and here I'm not using
calculate let me use sum and here uh
this is sum is ending this is uh
summarize ending comma underscore gross
and I knowingly give these whenever I
use such variables or such calculated
column which is inside the table
expression or as a variable or a where I
usually give them underscore so that you
are able to differentiate that I'm doing
something different and let me do this
is two is already available let me
rename it and press enter let me add it
to the visualization and our calculation
remains same what we wanted in this
manner you can use summarize also to get
these average of sum you can do same
thing with sum of averages or when you
want to use include level of details
this is what you can do so another
example which I wanted to do here is
basically where we use the filter
context of visual Road and our grand
totals are not correct and we wanted to
correct again values and summaries
depending on the requirement can be used
sometime they can be used like just like
what example I've given here and
sometime you may have to use the measure
inside another measure where you use
values and summarize so you begin let me
rename this as average of sum and let's
begin a new tab and this time what I'm
I'm going to do here is let me bring in
brand from item and let me create
something which uses the filter context
of visual row I'll bring in that create
a table visual so if you created a
visual and you want to change it just
click on that Visual and click on the
another visual type inside the insert or
inside the visualization Pane and you
will get that kind of visual now I want
to create a visual which use context and
how do you use context this is how you
use the context because after some time
we will have some time intelligence
measure which is also going to use that
so I want sum of brand one and I'm not
going to use filter here I will use if
Max of item brand now this Max of item
brand what's Max is going to take in a
row see in the row brand 8 itself is
available let's say there is a brand8
available and I'm using category so row
only contain brand8 and then I'm using
category then it can bring the within
brand8 whatever is maximum category is
going to bring in that but here brand
eight itself is present the max of brand
eight what it is actually it is brand 8
in the first row so in this row it is
going to be brand 8 the brand 13 that's
the only value available yeah if I use
category definitely there are more
values available then it can take a Max
and I'll call it as it is equal to Brand
one comma what value I want to return
net otherwise I don't want to return
return a value let me try this out I got
a major tons of major now we have you
see the value for the brand one is
correct but there's no grand total here
and this is what we call the
calculations error because of filter
context context have you used now this
is one example you may have many other
such calculations where context is
causing your grand total either not to
appear or to appear wrong because
remember the grand totals are calculated
again when you calculated the grand
total again there was no item brand
available and when the item brand is not
available you blank value how do we
correct that so let's try with sux
values item
brand comma if
calculation did not work out did not
work out let's use
calculate so the moment we added the
calculate the results have started
coming out so as you aware that when you
use calculate is going to appear and let
me remove the calculator and showcase
you again whenever you are doing some
kind of a calculation inside the
Aggregates make sure the calculate is
used and once you use the calculate you
will get your calculation and you know
the alternative is summarized and which
you can also use to correct such
calculations so we have learned how can
we use summarize and values to get
include level of details and how can we
use it to correct our grand totals let
me just copy paste for your reference
and add summarize here so that you have
an example to refer when I share these
files with you we'll use a
summarize sales comma item
brand and this is sum of brand one
though I'm calling it brand two so we
have both the measures available with
help from values and summarize we
continue with one more use case where we
can use suiz and values and the place
where we need is basically when we need
to count the distinct values B so how do
we get the distinct count of anything so
in the sales table items are basically
made not going to be more than so how
many distinct items I have in my item
basically what I can do here is I can
bring in item here and I can use a build
a visual Pane and change its aggregation
I will get a 55 is the count I'm getting
there's a function distinct count I can
use so let me try to create a major
first major
is this
count and we use the function distinct
count sales item
id let me bring it here this is 55 on a
larger data the distin count might not
give you the desired performance I'll
tell you couple of ways which could give
you a little bit better
distinct count we are going to use
again in this distinct count I'm not
going to use function distinct what I'm
going to use I'll use count
rows values now single column I can use
values we have learned that in the past
get the distinct values you can use
values let me bring in here get it okay
so you're getting the same values now
let's learn one more way which which you
can actually use on multiple column
somebody ask you what is the distinct
combination of city and item you have in
the how do you do that and in fact
somebody can ask that brand and state
combination how do we do that what we
are going to do here is we are going to
use
summarize so first let me give you this
one listing count of item only and then
we will create a little complex case so
here we got this now we would like to
know the brand and the state combination
now state is also not at the role level
and brand is also not at the role level
what is that distinct combination
present with us for that now let's go
ahead and try that out and this time let
me explain you I quickly changed in the
case of summarize we have done few more
examples already now this time what I'm
going to do is let me explain you the
complete calculation count rows let me
use count rows this can also be used
when you have a visualization with few
group buys and few Majors you can take
the complete combination of those majors
and group Buys in the summarize and can
count it so count rows summarize what
summarize needs table so Central table
I'm going to give geography state I'm
going to take and from item I'm going to
take brand remember the combination is
not available in the say table it is
available in the related table and I'm
bringing in the count for those distinct
count is not going to work the alone
values cannot help me out so summarize
can help in such cases so you can get
distinct count counts using summarize
function and count rows let us now learn
how can we get percentage of total we
start a new visual let me create a
matrix visual first of all and in this
Matrix visual I would like to bring in
state and city from geography table so
state city and my favorite major bring
city under the state now when you do
that when you go to this major and right
click you see an option percentage of
Grant total percentage of row total
percentage of column total let's look
what is percentage of GR total let's
look at the other option right
click show value as percentage of column
total no difference again it is 100% no
value is percentage of there's no row
total right now there is a no row so
100% so basically they are just giving
me percentage of Grant total so now let
me go ahead and show show values but
what happens sometime I might require
certain calculation where I actually
need percentage how do I do that we have
learned few function in the past and
they are going to help us out calculate
percent of DT net grand total of net I
want to use the divide function because
I want to divide the current calculation
by the total grand total I'll tell you
how to get the grand total so divide
functions make sure that divide by 0 is
handle okay if to divide by 0 so net
what is available in the current now I
need a grand total the grand total
should violate or should not have any
filter consideration and to do that we
have something first of all I'll use
calculate net now I can use all or all
selected now if you want to honor the
filters use all select you should don't
even want to the filter context use all
I want to use all selected let me not
give any table name or it independent of
the tables so typically it will apply on
your C you will say it was showing 5%
something because when you use
percentage basically right now A Rao and
to convert to the percentage you click
on this you will get the percentage and
now you are saying I need sub toal how
do I get for sub total Alaska it would
be like 100% because Alaska only have
one Arizona has more a couple of ways
let start with first way so the first
way which I'm going to use here in I'm
going to use divide and I'll call it St
sub tootal one and there are few ways so
first way is in the second calculator
which is the sub total which I want I
can use remove filters of city now there
are only two levels so I can say remove
filter of City geography City what
happens when I remove the filter of
geography City or when I use all
geography City th will be removed from
the context so this is exclude level of
details I mean excluding a level of
detail again I need to make it as a
percentage and as you can see now this
is 100% this is 100% only one city and
this combination is 100% and definitely
at a state level we are going to have
100% so this is one way so we have
excluded the de there is one more way
which we can use for that we'll go
little bit more changes here again the
half of the formula will remain same so
the first part the role remains same the
calculate remains same here what I'm
going to do is filter all all selected
geography I'm going to bring in
geography table and then I'll say
geography state I'm trying to bring in
the filter context of visual row
geography State equals to the max of
geography state I'm trying to bring in
the filter context of visual row here
whatever state is in the context that
only should be considered as a filter
you take the complete geography table
ignore everything on the geography table
but state is equal to Max space so
whatever state is there in the row that
is the only thing you to consider I
calculated another subtotal and let me
go ahead and make it as a percentage
column and you will see similar results
a little bit different approach but what
we have there done here is filtering the
complete geography table for the row so
I considered the complete geography
table for every row filter is applied
filter context of visual row been
ignored because of that on the context
has been ignored but we are saying the
geography state in this complete table
should be equal to the max of geography
State and what is this Max of geography
State the state which is available in
this particular Row in this row though
I'm seeing City but I'm Arizona is the
state present here in the row context so
geography State complete table I'm
filtering for the current date and
that's how it is getting calculated and
we got the percentage of sub total in
this manner you can calculate percentage
of up total let's discuss how can we
create a rank now rank we might need as
a major we might need as a column now we
have few functions to do rank we have
rank X only Rank and rank rank. EQ there
is function for that all now the
function which we are going to discuss
right now is rank X and we are going to
discuss the rank function later when we
will discuss the functions which are
very similar to SQL window fun they are
not same as SQL window function but in
few aspect they are very similar to that
so when we are going to discuss that's
where we are going to discuss the ram
function first of all let me go ahead to
my table View and in the date table I
would like to create a rank this rank
would be used later when we will do the
time intelligence what I want to do here
is I have this column Week start date I
want to create a rank on week start date
and the reason for that is typically
whenever you want to do time
intelligence if we don't have the
extended time intelligence function we
actually use the rank function start of
the week is one column on which I want
to create a rank I want to create a new
rank column let me click on new column
column tools is visible because I
already clicked on a column and let me
use this week start date column and
create a rank so I'll use I'll give the
name as Peak rank make it a little bit
bigger so that you can see it Rank and
you can see rank. EQ rank X and rank
three functions are there I'm going to
use rank X now the rank X function have
few arguments which are required the
first argument is table in case of
column it's going to be a table or you
can use filter function to return return
a table which can restrict it when we
create like rank subcategory rank if you
want to create you can have use the
filter function expression this is going
to be our column third we are going to
leave fourth is order by default it is
descending rank x is by default
descending and ties is Skip and dens by
default is Skip I'll explain you the
meaning of skip and dense in a moment so
we're going to use dense and Skip here
one by one and I'll explain the meaning
so let me showcase you so I'll start
with rankx table name is date table and
I'm creating it as in a column not
adding to the script we can add it to
the script later and then the column I'm
going to use is Week start date and I'll
leave it as only two arguments I'm
supplying right and let me do one thing
let me sort the dates on ascending order
we understand the meaning of ascending
and let me close date we have a pretty
big date skpt let me close that now
let's look at it so what's happening
here definitely we are why we are
getting the highest rank first of all
because it's a descending Rank by
default we actually wanted as sending
rank so whenever we create a rank for
the date column we actually need as
sending rank second I opened all the
distinct values and you can see the rank
has jumped this is because it is a skip
rank what happens in case of skip rank
let's understand this let me sort it
ascending here so for 7 days I have this
rank so the next rank is not two it's
eight so it's a skip the ranks which are
actually they repeating if it is one one
then next is three it's a skip if it is
one one and next is two then it is 10 so
two things I need to change here is
first I need the rank as ascending rank
so I need to give an argument by default
it is descending and ties We Know by
default it is Skip so I need to create a
dance Rank and let me press now you can
see on my calendar the minimum date is
having rank one and in spite of rank
repeating twice I don't have the rank as
three I still have it as two so dance
rank is a continuous rank the rank
numbers will be one to three in spite of
repetition that is what we call dance
rank so we have created a dance rank
here and we have created ascending so
rank X function is something we have
used to create a new column now let's go
ahead and create a rank magic so I'll
add a new page for that so let me create
a visual brand the table visual I'm
bringing in brand and net converting it
to table I want to create rank already
it is sort in descending I want to
create a rank on the same order what I
can do here is basically new major I'll
click on new major and I'll call it rank
net I'm going to use rank X all selected
now what is the difference between all
and all selected I'll showcase you in in
a short file all selected item bran and
net now I can give the other argument so
I can have in the table I need to have
all selected all all except something I
need here expression here need to be
major values we are going to leave order
I'm going to use descending because
mostly we all to create descending Rank
and ties I'm going to use Den here so I
can leave any argument after this one
descending by default it is descending
so I can could have skipped that and den
so it's giving you r 1 2 3 4 5 what's
the difference between all and all
selected for that let me do one thing
let me also bring in a slicer on brand
and let me build it as a multi- select
and show so I'll do select all as you
can see that the moment I am removing
something the rank is getting adjusted
if you see now the rank is still one 2 3
4 5 6 7 8 9 10 this is because all
selected it is considering only the data
on which the rank is getting created but
if you don't want that you say no no
even though I remove the data from my
context I still want my rank to honor
the initial data then I can use all now
you can see that the rank is having
jumps so we have number six this is
missing because we have unselected that
we have number nine which is missing
okay we have number three which is also
missing so this is how all work now
let's come to a really interesting
feature of the rank and let me explain
you for that first of all I'm going to
bring from the brand table the brand ID
into the
visualization and let me enable the
build a visual for that I right on the
right hand side there was an option I
enabled that and I'm going to bring the
brand ID why did all the rank became
one for reason for that is and to
understand that reason let's change it
little bit let me remove brand ID and
let me bring in actually category and
then you will be able to understand
better let me sort first on category
shift and sort on rank now you can see
inside the category all the ranks are
for the brand so the category is is
acting as a partition and inside that we
are getting the rank so the rank get
redistributed or partition on the column
which is not present in the rank measure
when I created my measure whatever
columns are not present if they are used
in the visualization the rank will
redistribute inside that you know
partition itself into that and because
of the same reason because brand ID and
brand are at the same level now category
has different different brand but where
bring in now again the brand ID each
brand ID has only having one brand and
that is why the rank is coming as one
one one one then how do we handle such
scenario one of the easiest ways and
because they're belonging from one table
you can simply bring in brand ID also
inside this one now in this case I
cannot use item table typically I take
an example of City ID and City there I
am able to use the geography table
because they are at the lowest level
brand is not at the lowest level so I
have to specifically call Brand ID item
brand now you can see the rank is again
correct both are participa but what
happens when you read rank on multiple
columns which are not part of the same
table so let me bring in brand again
into a new table and let me also bring
in state I'm bringing the state column
so let me do one thing let me first
bring in state here I'm doing a little
bit change and then brand and net now
what happens when I put that rank column
let me again make it as a table visual
again you can see the brand getting
distributed the brand ID is not present
brand is present it's getting
redistributed inside I can sort on the
state and then I can shift and sort on
the net and you will see the rank
getting adjusted but I need a continuous
rank so anytime I create a state rank it
will get distributed into brand rank if
I create a brand rank it will get
redistributed or partition on state I
need a combined rank they are from two
different tables so then how do I do
that so let's again create a major and
in this major which is rank net St and
brand eight and brand I'll use rank X
all selected now you know the difference
between those I can't use all selected
the reason are all because the moment I
do that I use geography State comma item
brand and you need to be careful because
I have state available in geography and
customer if I don't use the correct one
uh it's going to not work again
redistribution will happen inside that
and I'll try this out and this this is
giving an error because you can't use
this different TBL so to overcome that
what I'm going to use is I'll use
summarize function summarize all
selected on sales table sales so the
table which I'm giving in the summarize
is sales and as I'm giving a central
table then I can take the dimensions
table geography and item into that
summarize so here it is summarize and
all selected is compulsory here and then
net and then I can use the other two
parameter this sending and dense now let
me add this to the visualization now
here you will see the rank is again
distributed why because we have taken
customer that's what I was telling
because I'm taking the geography State
and I'm use this then it will create a
problem so let me go ahead and change
this State field from customer to
geography and now you can see the rank
is continuous okay in this manner you
will get a continuous rank across
multiple table column in sometime we
will discuss rank function rank function
is also better equipped than rank X
function for handling the ties now there
is a ways to handle ties in rank X but
that's really challenging so we will
keep that for rank function let's
discuss top end function now when we
want to get the top end there are a
couple of options we have one is
definitely we have a top end function
which won't give us and the second
option is basically at the visual level
itself let me bring in brand and net
into a visualization now as converting
to table visual assume you want top five
Brands by net what you will do simply go
to the brand into the visual level
filter and this happens in the visual
level filter you can go here and use top
and I need top five base is what I have
net in the visual but I can get in based
on margin percentage anything which I
want but right now I definitely want
base on the net so you drag the value
here and you use apply please drag a
measure and you get the top five values
very easy so whenever we need it we can
use that but we do have a function which
is known as top end and let me explain
you that function step by step I'm going
to use the new major for that so let me
click on the new major in the table tool
and the major I'm going to create is top
10 net and the function is top n Now
what is my n value n value is 10 so I
need n value I need table expression and
here table expression will be all or all
selected order by expression order
ascending or descending and this kind of
information is so let's start with I
need top here we already have so big so
13 values but I need only 10 values out
of that all selected item brand comma
order by expression order on net and
what I want descending and right now
I'll keep it only this one what happens
here is basically the top end function
actually returns a table the moment I
put it here it start giving me error H
you get an error calculation error
measure custom table of multiple value
it's basically table so what I can do is
I can use this as a filter in the
calculate so I'll use calculate net
first argument and then we will have
this top nend and press enter this seems
to be some challenge isn't it the value
top n and Branch seems like very similar
to the grand total isn't it it doesn't
seems to be filtering top end values
either okay let me do one thing in this
visual let me remove that's the first
reason after I remove the F filter now
again there is some challenge here this
value is not same as grand total I can
understand there a top maybe some of the
top 10 values and different now because
previously the top five filter was there
this is a sum of top 10 not the top 10
and nor it is filtering it for that what
I'm going to do I can keep values inside
this one or key filters so let me show
you both of them one by one let me use
values item brand first way reduce it to
top 10 and if I remove the net it will
actually keep it top 10 only and that's
the total for that if you don't want to
use values you have an option which is
if filters can take this filter argument
and basically keep the filter and apply
the values automatically in this case
and this will to give me the same result
so in a scenario when you have the
filter and you want to have the values
impact also you can use keep filters
keep filters can work for you I got now
top 10 net by using a major I can use
top end and I can get whatever top I
want but what happens in case I need
this as a dynamic is that if I choose
one give me one if I choose two give me
two if I choose three give me three how
can I create Dynamic top n for that what
we have to do is we have to take help
from the modeling Tab and in modeling
tab we have new parameter now we have
two kind of new parameters one of them
is a numeric range and another one is
field parameter now field parameter is
we're going to discuss after some time
numeric parameter was previously also
known as what if parameter so numeric
range I'm going to create it's going to
create a new table for me using the
generate series it's going to give me
the number so I can create a series of
numeric or field I can give it a name so
name is top and number I want it to give
minimum 0 Max 20 increment by one
default is five I keep this as checked I
want to add a slicer I don't want it to
leave for later and the advantage of
this one is basically is give me a
slicer where I can enter one single
select box so let me go ahead and create
that now what is going to do is actually
it's going to create a table for me
using the generate Series has created a
table using generate series and it gives
me this parameters basically coming from
them this is the column which is coming
from that it also create by default a
major for you which you can use in your
calculations and this table is a
disconnected table so whatever values we
are have going to have we need to use
that in our measure then only they going
to have you can use that various places
but what I'm going to do is without
disturbing this slicer right now I'm
going to place this value inside our
measure in the top and in place of this
10 now I'll use that top and major which
is already been created for me the
moment I do it you will see I only have
the five values because the default
value was five how did it get it so
there is something known as whenever you
wanted to get a value which is selected
you use the functions selected value and
the selected value is going to give you
the selected value it doesn't get you
can default it so selected value
function have being used here which is
returning us this value and definitely
whenever we need we can use this
function Al selected value functions
give us the selected value in the slicer
but it only gives one value if you have
more than one value then we need a
different operation usually we use
values or something we can handle in
multiple ways basically whatever is
selected is only available whatever is
not selected if you need you need to PR
fix to get that data so now I will go
ahead and change it to top let's say one
I only got the top one value what I can
do is basically I can remove net from my
visualization I click here I'll bring in
the build a visual and you take out net
from here now I only got one value three
top three top five top 10 in this manner
my visual will now respond to the top
end values Now understand one thing that
there is one more thing which you should
do now what happens like when we use the
top end here it's do you filter and if
you there are multiple measures all
those measure will get filtered based on
the top end of one particular C now
let's say you need top end of gross but
based on net or top end of margin
percentage still based on net in that
case you're not going to change the
second part of it and the reason I'm
telling you sometime what happens is I
have the top I have the top 10 items of
this year I want value of the prior ear
based on that so there's a prior measor
I have and I need the value for that so
see my top top n is still calculating
based on that but based on that top end
I am bringing in margin percentage now
margin percentage may or may not be the
top 10 in this case let me rename this
major margin percentage and bring this
into my
visualization and I would also like to
bring in margin percent and I change the
formatting percentage for margin top 10
margin percentage now I would like to
sort this visual on margin percentage
this is not not the top 10 margin
percentage the top 10 based on net
whatever I'm going to use here is what
going to decide my top it is not the
major which is going to decide so in
this manner I can get a major which is
basically top and off some other major
so this is topend function and dynamic
top end for you so let's look at is
filtered and has one value understand
that let's create a new page and in this
new page I would like to bring in brand
and category and in both the visuals we
will add few new majors and those Majors
I'm going to create I'm not adding any
other major because we want to
understand those two new major how to
understand that measure we also need a
slicer and that slicer I'm going to
create on brand I dragged the brand and
I clicked on slicer which is coming from
build my visual at this moment I can
also take it from the insert of the Home
tab do a little bit more adjustment here
now let's first discuss is filtered so
I'll create a new mejor using is
filtered is filter me basically is it
filtered or not in what condition is
filtered work is filtered so is filtered
item brand is item brand is filtered you
simply wanted to check this condition is
item brand filtered we got this measure
is filtered let me bring it here it's
giving true true true on all the rows
and it's going to give false false false
on all the rows of category so here it
is giving all true right now there is no
value coming from slicer it is still
coming from for True when the brand is
in the context is giving false when
brand is not in the context so basic
basically the filter is filtered is true
when the brand is in the context or the
brand is in the filter it is in the
context that it is true but look the
total is false it means it is not coming
from Filter total will be dependent on
filter so let me filter one brand the
moment I filter a brand this is coming
true this is coming because of context
and this is because of filter all the
values are coming here is coming true
because of the filter context but
sometime what would happen is if I don't
have filter I don't want this filter I
want to take a decision whether the
brand has been filtered or not I want to
display a value based on whether it is
filtered or not and that filter is not
the row filtering that filtering is the
filtering which is happening on the
filter so how do I ensure that I'm only
considering is filtered is filter from
the filter contexts of visual row is
filter is filter from the filter not
filter context of visual Row for that
I'm going to tell you one solution what
you have to do is you have to create a
new measure and we going to call it it's
filtered one and you can use calculate
all selected don't use all about
selected values and let's bring in this
mejor is filtered one now you can see is
filtered is false for row and it is not
obing the context let's bring in another
visual expected is false now let's
filter any value it is filtering and now
it is giving true and that is expected
if even if I select multiple values it's
going to be true so is filtered is able
to tell us yes it is only coming true
when something is getting filtered so
the second function which we wanted to
discuss is has one value right now what
happened if you remember when I clicked
more than one I'm getting through still
but I don't want I only want let's say
currency we only want to select one
currency if one currency is selected or
one country is selected then I will show
the data in that particular currency so
if let's say we are showing data of USA
India together I have to show in one of
the currency Global Currency so one of
the currency I'll call Global Currency
and when both India and USA are selected
I'll show it in the Global Currency but
when India is selected I'll want to show
the local currency which is rupee when
only USA is selected I want to show in
USD let's say Global Currency we have
decided Euro so when both are selected
we are going to show them in Euro so in
that case I also wanted to know that one
value is selected so I want to know has
one value so let me create a new major
and check has one value so has one value
first of all has one value item brand
does item brand has one value first of
all we wanted to check so it's running
true so it means context is playing a
role and the filter is also playing a
role so the filter context because of
that is coming false here it's true here
now let me filter a brand and because of
the interaction it's going to filter all
the values are still true the grand
total is false and most of these
categories have more than one brand let
me select one brand here everything here
is true because one brand is
selected let me select one more brand
now look at the data here this is still
coming true because the row only has one
brand this is false now here category
one has two brand so it's coming fine
both brand belongs to this this is
coming coming true because only one of
the brand appears this is coming false
because more than one brand are
applicable here this is coming true
because only one brand is applicable
here what's happening depending on this
number of values availability this is
also behaving so one value or more than
one value so now we will bring in the
measure just like we have done in the
case of is filtered using the has one
value all selected so okay fine we'll
take a decision based on has one value
one and we'll use calculate comma all
selected we'll say we only want the
filter to be honored we don't want R to
be honored and let's bring in this new
measure
also now what's happening here because
two values are selected it's giving
false
everywhere so now as one value is
behaving based on the total selection so
total is one then it is true nothing
false and more than one also false
everywhere it is false so in this manner
you will be able to take decisions based
on is filtered and has one value what to
use what not to use but remember one
thing that use has one value and is
filtered only if it is most necessary
I've seen sometime people unnecessary
check is filtered and has one value we
don't have to add a condition when it is
not needed it is going to unnecessary
add a calculation to it so like in the
row we know the things are in context we
don't need to check is has one value I
know the row is going to have a value so
you don't need to check we only need to
check when we want to change our
calculation in case of grand total let's
say the grand total we can use is filter
sometime we can also use is in scope
which we learn sometime later so is
filtered has on value find out is it
selected is it in the context in powerbi
you will find us always talking about a
date table and a calendar table why date
table or a calendar table a table with A
continuous dates is so important it is
because all the powerbi time
intelligence functions require
continuous dates these functions include
date add dates MTD dates qtd total MTD
total YTD and many other functions which
require continuous States and a calendar
table or a day table can ensure
continuous States we have also need to
make sure that we mark them as a date
table that will ensure that we have
continuous dates to generate a calendar
we are primarily going to use calendar
Auto or calendar function as we move
forward we will discuss the differences
between the two to start creating the
calendar let's first start with calendar
Auto calendar Auto is a very versatile
function it can automatically generate a
calendar based on the dates available in
your powerbi schema it also provides you
a parameter using which you can set your
financial calendar so let's understand
calendar Auto in more details and to do
that I'm going to use the table View and
I'll click on the table View and go
inside the table View and here what I'm
going to do is I'll click on any of the
tabl so that I have the table tool
visible to me and inside the table tool
I have option for new table calendar
Auto is a DEX function which can give us
a table now what I'm going to do is I'm
going to click on the new table I'm
going to give this name to this table is
date
Auto and I'll use calendar Auto for
calendar Auto will take this one
argument this calendar is going to
return us so calendar Auto is going to
return as a table table of continuous
States so it was automatically taken the
start date automatically taken the end
date based on the your financial year or
your calendar year and it's going to
return the continuous dates and
continuous dates are really important
for
for doing time intelligence because most
of the time intelligence functions in
powerbi requires continuous States and
we will learn when we add the columns
also like some of the function like
start of year end of year which we will
be used to create start date and end
date would also require continuous date
calendar aut of function you only needs
one argument which is basically the
physical month and date in case you want
to give a physical month and date in my
case I don't want to give because I want
to create a standard calendar month so
it's going to do that so and what also
calendar Auto does it based on all the
dates available in the model is going to
find out the minimum date and take the
start of the year now if you want
Financial year let's say Financial year
end is third month then it will start
the calendar from April it is 12 month
it will start January from January so
based on that minimum date less than or
equal to that date is going to find out
the year start date similarly go to the
max date and maximum across all the
dates and goe find out using that date
we'll find out either a date which is
greater than or equal to that particular
end date is the year end date now if
it's is a physical year let's say you
shoot March then 31st March is going to
find out and first aprile is the start
date based on which is going to be
calculated now here we don't want to so
we can simply say
calendar so calendar Auto will give you
all the dates and you can create a
calendar using calendar AO now this is
the first way let me sort a sending and
show you what date I'm getting here this
is the first date as you know my data is
it from the October 2018 and I'm getting
a calendar which is from 1st January
2018 my data lasts till 2020 so if I do
sort descending you will see that it is
going till 31st December 2020 let me do
one thing because my data is starting in
October let's say and ending in October
again let's say if I want to start my
calendar with October Financial year
what what is my financial year and month
which is nine so what happens when I
start with nine you press enter
definitely because my data has started
after the October 2018 it's still
starting from 10th 2018 but
interestingly where does it is ending
it's ending in 2021 because remember I
do have data in October
2020 so when I have data in October 2020
so that complete Financial year has to
be taken so and that's why it has
claimed till the end of this now post
that if you want to create additional
column you can create here or you can
use a function which is known as add
columns now we will create a date table
or a calendar table using the calendar
function now for that I will go to table
View
uh previously we created using calendar
Auto unlike calendar Auto where you only
need um the month and and it
automatically identify date the calendar
function cannot do it you have to supply
the dates let me click on any of the
table and I'll get a table tool and
inside the table tool let me click on
the new
table I click on the new table I'll give
this table name as a date
table and then I can write down the
function which is calendar now the
calendar function requires two argument
the first argument is a date and the
second argument is also date start date
to end date now it means we can start
with any date we can end with any date
it will not force us to go to the start
of the year it will not force us to go
to the end of the year but usually when
we start when we create we'll take care
of these things now sometime what
happens is we can find out with the set
of dates let's say there are few dates
only which are available then with that
set of dates we can also start so I'll
give you example of that so calendar
function takes these two argument but
what does calendar function gives so
calendar functions return returns as a
table and that table is a sequence of
dates and these dates are continuous
dates the remember that we require
continuous dates for most of the time
intelligence function and that is why
having a date and calendar table is also
really important which provides us all
the possible date between the set of
dates or the continuous set of date
which is comprising of all the dates
from the minimum minimum date and the
maximum date which is needed for our
data it is really necessary to have
include all the dates and have the
continuous States now in the calendar
table we don't include the time so in
case you require time also sometime we
create a separate
timetable so calendar function taking
two arguments and returning a table of
continuous states which we would be
needing to create create our date table
having the continuous dates so let's
start with the first date now to give a
date I can use a date function now date
function requires three argument first
is year second is month and third is day
three arguments which is required so I
want to start from 2018 my data is
starting from October but I'll start
from 01 first month
01 then this is my start date again I
need another date for the end date so
end date I can give again year month so
my data is still 2020 October so I'll
use 2020 12 and
1 so I did not edit one parenthesis at
the end but Dex do take care if you are
missing at the end it do end I can click
on the submit or press enter now you can
see I got a calendar I can use sort as
sending to see what all dates I have and
sort dat sending to see what end date I
have start date and end date we are able
to know now this the first very simple
way when you can create sometime what
happens you say no no I want to add end
it where you want to end it let's say I
want to add it today my calendar should
go till today so we can use the function
today so every time we refresh the today
will change and it can end on today's
date when I'm recording this is 1st
January 2024 so it will end on 1st
January 2024 it can end on any other
date sometime you might want to end it
on last date you can use this this one
or last month's end date let's say this
is this is something different then I
want to add last month end date for that
to get the end date of a month we have a
very good function which is known as EO
month EO month function doesn't require
continuous date remember uh other
function there is a end of month
function which require continuous date
but EO month function doesn't require it
just require which months and date you
need so today is the today's date and I
need today is month end then I can use
zero let me show you
that so this is the current month ended
but minus one gives me last month ended
plus one gives me next month's ended so
I can use these kind of stuff I may also
like that you know like to start from
the start month of the minimum
date and assume right now for Simplicity
I have only two dates which is the sales
date in the sales table so I have one
sales date where I can find out the
minimum
sales date I have delivery date maybe
ideally speaking delivery date can
cannot be less than the sales date but
assume it could be then how do I take
minimum of two so for that what you can
do is minimum of minimum sales date and
comma
minimum delivery
date okay so double minimum so minimum
of sales first minimum of delivery and
for both we can take minimum so minimum
function this is another behavior of
minimum function where it can take two
arguments so typical Behavior was
minimum function will take only one
argument one column but here it can take
Min of Min okay this will start from the
minimum date probably from the middle of
some month let's go ahead and check it
out from here now what I can do this is
two heavy formula so let me go go
outside this one and see if I can create
a variable go here I'll create a
variable Vore minimum so this will give
me minimum date which is 13th October
and I can create another variable or
I can come here and write down EO
month now you will say for the start of
month why you're using EO month I'll
tell you EO there's no function like s
so month or St month EO month is a
function which which I have with me so
if I give minimum and minus one is means
it is going to give me last month's end
date but the beautiful thing with the
Dex date is if you do plus one simply
you do the plus one it adds the days so
plus any number is number of days you
want to add so I got last months 10 a
and I do plus one which is going to
start from the current month you will
see start from the 1st October 2018 in
this manner so these are the various
combinations basically which you can use
to get this now I'll tell you one very
quick combination now this is going to
give you start of the year so minus one
St month of the
date so you
subtract the month in the negative
number so multiply your month for the
date by minus one and do plus one you
will always restart of the
calendar basically what happens in the
10th month if you do minus 10 so Min -
one is 9 and Min - 10 would be last year
December and then you had plus one means
you this year January in this manner
depending on the requirements we can
create different different dates okay
now we need to go ahead and add new
columns to this calendar or date table
and then we also need to join it with
our T table so what I'm going to do
first is we are going to add the
calendar months date and then we are
going to add some Financial months so
first we are going to add calendar
months like uh start of year end of year
start of month end of month start of
quarter end of quarter all those and
then we will go and do the same thing
for financial Financial we limit ourself
to financial year and financial quarter
ET we would like to announce our
calendar table or the date table and the
first set of columns which we want to
add is basically the month name the
quarter number the year these are the
columns which want
to now to start with that I would like
to add the columns so one of the ways to
add a column is that what we have
learned so far is click on the table or
the
column and then you use this new column
from the column tools of the table tools
but that's not extendable because deck
scripts are not the script which you can
you know find out and take if you create
columns if I need to take this table to
the another file I actually need to
create those columns again or to
overcome this we can use something known
as add columns function now first of all
all we need to understand what this add
column function is ADD column functions
allows you to add the column to existing
table which takes the first argument as
a table then you can give name and the
expression expression is the expression
which you want to generate your column
it could be a calculation it could be a
static value whatever you want it could
table and the name and the expression
another thing which you should remember
this expression if it is using some
column it is limited by the table which
you have provided in this case in the
add columns I'm going to provide the
calendar and calendar is returning me
only one column date
it means all my calculations would be
dependent on date any column which I'm
adding new column which I'm adding to
this table let's say I say column let's
say month year I added a month year
column that column cannot participate in
the next column calculation only the
tables column it means I created column
one and now in the column two column one
can participate that cannot happen when
we are writing down add column script so
let's begin this Journey so add columns
the first argument of add column is a
table and then we are giving a table and
then we going to add new columns and
this is also finally going to return as
a table add columns return as a enhanced
table which will contain more
columns so and to get additional rows
I'll press shift
enter or Alt Enter now I may have to
make it little bit smaller here so that
I can show you more columns or we will
use scrolling so one pixel
smaller now First Column which I would
like to add here is ear which ear I
belongs to very simple I have a year
function which can give me year of the
date and basically because I'm talking
about calendar here so it's easy for me
only column which I have here is date I
cannot give a table name here I need to
use date so I got my year then I want a
next column so then I need to give a
comma at the the end of this or what we
can do is here is sometime this is
little bit better let me remove this
colum comma also we give the comma at
the start of the line easy to comment
such
lines month number how do I get the
month
number so we have a
function month which will give us we
take only one argument date so I got
year I got month quarter I need quarter
quarter number basically this you
instead of month you can call it as a
month
number maybe we want to use month is Mon
and quarter
number so how do I get quarter number we
have function quarter and we'll give a
date only one argument it is requires
only one argument date it gives us
quarter
number and before we go forward let's
close this add columns by giving a
parenthesis at the end so
able
name
expression name expression
name expression finally close
parenthesis this is going to give us a
new table with the inas
number we got year number month number
quarter number here we simply calling it
C I need let's say month name and month
here we create that so I pr press my
cursor shift enter shift enter shift
enter now only challenge with this is
that this will keep on moving down so we
will have lesser things to see but we'll
do so First Column double quotes I want
to give the name name is
month and here I want it in the one like
Jan Fab March for that first time I'm
using a function which is known as
format
a format functions take can take three
argument value the value could be number
value could be date format which we can
give in Double C the format There are
rules for giving this format what means
what in case of number in case of date
that you can find out on the
documentation local name sometime we use
like uh is
it us or it is Great Britain English or
something like that that can also decide
what format you want especially useful
in case of date now we go to format and
first argument is the value and here my
first argument is
date now you can go ahead and now this
give the format and the format which I
want to give is M mm 3 m means month
name like Jan Fab March and 4 m means
complete January February March close
press enter and you get here January
February March you can see below
now if I give 4 M we will give January
February
March now this is a text column and
power ba we have a problem the text
column cannot sort by its name by I can
simply call it some month column will
sort automatically we will discuss the
solution for that problem little bit
later but before I solve that problem I
want to come to the next one double I'll
give double quotes double
quotes and here I'll give month
here now month year I want the column
month
year what is the calculation I again
want to use format
function and
date I would like to give here the
format as M mm hyph y y y y 4 y
month Jan Fab March April May three
digit and 4 y means year four year and I
press enter Because my last parentheses
already there now it gives me January
February March I got my month month year
also now this is my calendar and the
next column which I need basically is
the quarter 2 TR quarter we already have
a quarter number so I'm simply calling
it as quarter and this time what I'm
going to do is the format which I need
so here what I'm going to do format
function and the first argument is date
in the second argument I would actually
like my names to be y y y I want Q to be
written but if I give Q it will give me
quarter number I'll tell you if I simply
give Q
here it give me quarter number so how do
I get a q so I can use back SL Q means
ignore if I want hyphen in between let
me use hyphen and see hyph is not a
letter which format is going to identify
so it's leave as it is to identify Q so
I use back SL Q to ignore the Q and
treat it as a normal letter q and next
second Q I leave it as is so for every Q
you let's say you want to write quarter
then let's say T and R doesn't have a
meaning then you can give and if the T
and R has a meaning then you have to
give with every letter like
this but q and R doesn't have meaning so
I can leave it as
is now the format why have knowingly
taken this format this format is a
sortable
format the previous mon format is not
sortable what do you mean by sortable
format if I give y y y y and then give
quarter number every time I put it
automatically get sorted even if it is a
text now let's go to the visual level
and understand that so let me add a new
page and in this
page let me now create a table using
month here simply drag month here and it
will create a table let me drag quarter
here and as you can see the quarter here
which is only called quarter it seems
like an sorted position q1 Q2 Q Q4 q1 Q2
but monthier is not how do I sort month
here mon is not in a sortable format in
power ba we don't have a way to tell
system that this is month here and sort
it like date no we need something known
as sort column so I'm going to create a
new column here which I'll call as month
year
sort how can we get sort the one way is
I create y y y mm using the format which
is a sortable format so y y y 4 Y and mm
is always a sort table format for month
year or I'll tell you one more way which
I want it numerical so I say Year I'll
use I'll use function year year
date multiply it by 100
plus month
of date what does that will do
if this itself is a sortable whenever
you put it will got SED but how will
this month here sort will sort month
year so for that what you have to do is
me make it a little bit smaller click on
month year column either here in the
table view or here in the data
view click on that column you will get
the column tools and the column tools
should show your column which you want
to sort go to sort by column in the
middle click down and choose the column
on which you want to sort this column
you are going to choose the column which
you are going to choose is going to sort
your column now so monthe sort follow
the Sorting of monthier sort so monthier
sort is a column which can sort my
column
correctly it is done now if I go back to
the
visualization you will see that the
columns are sorted
correctly now we would like also like to
have one more column which is year week
and week of the year and then again
we'll add year week or we can only call
it week number but I would like here to
be ear week for that what I'm going to
use is ear
function on the
date again multiplied by
100 plus there is a function week number
date requir second argument also in the
week number the second argument can be
one means starting from Sunday it can be
two means starting from Monday again we
have argument from 11 to 17 from Monday
Tuesday Wednesday and so on 17 means
starting from Sunday and 21 is for ISO
so these are some of the arguments which
you can give the similar kind of
arguments also available for week day
and some of them might not be in
documented format means you will not be
able to see that these arguments are
available but you will be able to use
and when we will do Week start date and
week end date we will let you know right
now I'll keep it two so that I'll have a
Monday Week
start let me add week days here how do I
add weekday here and then we will
discuss whether our week number is
correct or not so how do we add weekday
there's a function known as week day but
it's going to give me numeric
here I don't need 1 2 3 4 5 I actually
need the names again week day have an
argument like uh 1 and two so I'll use
format on the
date and if you give date three times it
is m o and Monday Tuesday in the short
form four it is going to give complete
so I'm going to use 3 days now DDD in
the format function to get weekday name
and the reason why I r that let me let
you know that the first week this
calendar itself start on a Monday so
starting on a Monday and if the first
week goes till Sunday it means this is
Monday Sunday week and this is week
number
one then we have week number two again
from Monday to Sunday so week number is
using Monday to Sunday week and weekday
is verifying that well very first level
of our calendar is ready let us start
adding the new column like start of
month end of month start of quarter end
of quarter start of year end of year now
all these will depend on whether your
year is a financial year or calendar
year first We'll add for calendar year
and then we'll try to create our own
Logic for the financial year we have few
functions which can do this for us but
they have a limitation how to understand
that limitation what I'm going to do is
I'm going to change this calendar
statement a little bit so let me command
this particular line and put it again
now in I will not use EO month here and
I'll tell you why I'm doing so I'll use
minimum and then I'll it till today so
let me commit this change and you will
see my calendar is now starting on
October 13th let me check where it is
ending it should end on ending on 1st
January 2024 now let's try to use the
start of the month function now start of
the month function will not work in the
add columns start of month basically I
need a date on which this month has
started and I'll give date it is not
taking it so parameters is not correct
type so it basically need table name
column name we say okay fine it's not
working here that let me go ahead and
directly add it as of now the quickest
way is to directly go and write down a
new column and the new column will be
month start start of month function so
we as you can see we have start of month
start of quarter start of year start of
month I'm using it require only one
column The Continuous dates and I'll
give the eight date table and let me
press enter now ignore the first one if
I go to the November month it is showing
me the correct start date if I go down
any date after the October month it is
showing me correct dates if I go here
also you will see that it is showing me
the correct start dates of every month
except the first month why is it that
behavior so the reason behind this one
is that card of month require continuous
stes and it cannot go beyond the
boundaries of the date which is
contained in the column which has been
supplied so what happens if the month
start date is not available it will take
the minimum date available in that table
so because of that the start of the
month is happening at the 13th of
October same way when I take start of
quarter now start of quarter again has
the same problem for the first quarter
instead of from first October which is
the quarter start it will start from
October 13 again because it doesn't find
the 1 October minimum date whatever it
find before that it's taking that if I
use start of year you will see the same
issue again no 1 January it's October
13th which is the minimum date available
continuous
state from month start to month end and
let me use the function end of end of
month what happens now very happy first
month is coming correct but let's go to
the last value January doesn't end on
first isn't it doesn't end on first it
ends on 31st January not able to find
because there's no date which is
available after that so it's going to
end there okay what happens to the end
of
quarter you will see the same issue with
the end of quarter the last date what I
can do is s descending it will come on
the top as you can see the month is
ending on the last year same way for the
year if you try again the year will also
end on the 1st January so it cannot go
beyond the date it has to stop there and
because of this reason we are unable to
use start of month end of month if we
are not using a standard calendar
specifically if the calendars are not
starting and ending on the standard
month start date and month end date then
we cannot use it if your calendar is
starting on standard month start date
and ending on standard month ended you
can use these functions without any
doubt but I need to tell you the
Alternatives what I'm going to do is I'm
going to delete these things and I'll
tell you how to create it without using
these functions now you learned these
functions only one argument these
function required other than the end of
year and end of quarter end of year and
end of quarter start of year year
function and end of year function can
take another argument which is basically
year anded which can also be supplied to
get the financial again the limitation
is if you want to create the financial
year the calendar should start from the
financial month start date and should
end on the Financial month end date
otherwise the end dates would not be
correct so what is the alternate so I'll
tell you here so let me create start of
month and new column in the add column
I'll continue to add the column in this
add column and the what is the date I
want want start of the month and we'll
use function e month now e month gives
end of month and for the row in the date
if I give zero it will give current
abundant date so what we do is we go to
last month end date which is minus one
means last month end date plus one so
two argument it takes EO month first
argument is date second argument is
which month and date so minus one means
last month and date and then I'm doing
plus one in Dex you can simply add
numbers to a date to travel number of
days you want then we press enter and
now we got the start of the month and as
you can see this is correct but let's go
start ascending and you can see though
the calendar has not started on the
first date there still getting the
correct start of the month now end of
the month is simple we know that this
there is a function which actually
actually is for there for end of the
month let me write down that one end of
month EO month which months and date I
need I need the current month end dat it
is very simple for us just give a zero
enter and we got the end dat now we have
to check it for the largest statee we
have S this ending and if as you can see
here it gives us the correct month and
date though the month and date is not
present in the calendar or the date
table or the dates which are available
in the table which is we are using here
the date column itself doesn't contain
the dates which we require before I'll
go to the quarter because quarter
require a little bit of logic I'll show
you how easily we can achieve the start
of year and end of year now start of
year I'm showing you the calendar later
on we'll come and develop the logic
shift enter shift enter start of year
how do we start the year now we will use
the same function this one only Now
understand when I subtracted one month
from October when where did you went
September If I subtract two then August
what happens so if I subtract one you
are 1 month less so if I subract nine
where would you reach you would reach
January but if I subtract 10 where would
you reach you will reach December so if
I subtract 10 then you will reach end of
the month December and then plus month
will give you January so how do I know
the month of the date so I can use month
function and there I can give date as an
argument so what I'm saying here is
basically from the date you have to go
minus one star number of months which
you had so you will reach 10 months
behind in this case for October minus
one is September minus 2 is August and
same way you will reach - 10 means last
December and plus one means you will
reach the start of the year and as you
can see we are getting the correct start
of the Year date here and let's sort
ascending and check it out we are also
getting it so start date is correct now
end date how do I reach end it now how
do I identify how many months I need to
add because months are changing January
is different February is no to reach 12
we need to reach 12 month isn't it what
would happen when we give zero October
when we give two what will be happen
November when we'll give two it would be
December December is 12 what is the
current month 10 12 - 10 is 2 we need to
reach 2 months if we are in September if
you give zero September 1 October 2
November 3 December 12 - 9 is 3 it means
if we subtract the month from the 12 we
will exactly get how many number of
month we should go ahead so what we are
going to do here is we copy paste this
one we don't need to add the plus one
now simply go ahead and say end of year
EO month 12 minus the number of months
which is is already passed me that
include the current one and we should
get end of year date so start of year we
got using the month number end of year
we are also getting using the month
number enter and let's look at the date
perfect end of year date 2018 thought
descending check what we are getting for
the 1 of January 2024 31st of December
2024 we are able to get it now we comes
to the logic of quarter quarter is not
very simple because what happens is we
have these quarter which are ending
every 3 months we are right now
preparing for the calendar it's easy for
us because they are we can use division
by three as a criteria actually even if
the month start from a common date and
the quarters then there are couple of
ways one way is
for January what we can do month is one
so I subtract - 1 month from E month
I'll read December and then I can add
plus one to get the 1 January similarly
for February u monthus 2 31st December
Plus 1 day we'll reach January for March
minus 3 and plus one day we will reach 1
January but for April the formula little
bit need to change because now I need to
only say Min - one then -2 then minus 3
they say okay fine what we can do is we
can find out their remainder by dividing
by three but the challenge with the
remainder is when we take it from
January it is fine one means one
remainder is one for February remainder
is two for March remainder is not three
the remainder is zero so we say fine we
can adjust it so we use start of qtr and
you might have to actually think about
this logic little bit I have done quite
a few video and few people uh do get
this mathem ma matical equation how I'm
changing it so just pay attention you
might have to rebuild your own Logic on
that first is very simple if mod mod is
a function which gives me remainder so
it takes a number Division and gives the
remainder so we are learning a
mathematical function mod here mod
functions give us the remainder what is
the number we need for which we we need
the month number so month of date and I
could have used this inside a variable
so let me do one thing where underscore
r equals and I'll tell you when you
inside the add function when you use
variable how to use that now if the mod
of the month from 3 equals to 0er then
three if it is becoming zero it means if
it is third month the mod is coming zero
it means it is three otherwise it should
be same as mod or it could be same as
the it should be same as mod because for
four you can't say no no it is a month
number no in case of four I need one and
if you want to avoid this calculation
twice you could have created a variable
on this first and then used it so now I
got my calculation this is this is what
is going to give me 1 2 and 0 1 2 and 0
1 2 and 0 and then what it will convert
it the if statement will convert it into
12 1231 123 shift enter tab tab just and
I'm pressing tab so that you know you're
able to understand the code the code is
aligned better now I'll so when you use
variable you need to write down written
statement and in this case also you can
do this but and I'm going to write down
in the same line so now it is very
simple for us EO month of the date Min
-1 star this remainder what we got
underscore remainder and then add the +
one add the plus one to date now let's
look are we getting the correct one this
is start of quarter for descending let's
s it ascending let's sort it ascending
October after that we got January and
this is what we are getting on the 1
January seems correct let's look at
April and then we can go and simply
check the start dates this is quarter
number so don't go by this look at here
1 January so this is 1 April that's fine
and we can look at all the quarter start
dates all quarter start date seems
correct quarter end dat now if I so what
happens for January I need to go 2
months ahead February I need to go 1
month ahead and March I don't need to go
so there
are so what we will in this Cas is we
will say let's write down the formula
for this one I erased it EO month date 3
minus the remainder and we will reach
the end of month so we don't need
anything for that let's Commit This and
let me go down you can see this is
ending on 31st December end of quarter
let's scroll a little bit down and then
this one you can see a change of date
here on this line in the January let's
look at all the quarter end dates seems
correct and not dependent on the dates
which which are available on the
calendar so now we are able to get the
month start date year start date quarter
start date month end date year end date
quarter end next most important thing is
Week start date week end date so now we
would like to add the column start of
week and end of week I'm going to do is
while we can add in this table but this
table has too many columns one of the
ways that I remove some of the columns
or I add at the start but what I'm going
to do is I'm going to add those column
in date Auto where we only have couple
of columns and and now because it's a
script we can come back and add the
columns into the date table we're going
to do at the end so start of week end of
week no standard function we have to
create it now the logic the way we have
to drive it let's say Monday is your
start of week so Monday means you to go
zero behind Tuesday means you to go one
day behind Wednesday means you to go 2
days behind Thursday means 3 days behind
Min subtract simple number subtraction
will there is a function weekday
function also which can give us for
Monday 1 Tuesday 2 so every week which
you want to start first of all you need
to have a week day for that kind kind of
start so if I want a Monday start or if
I want a Sunday start what I'm going to
do is there is are arguments which can
help you and these are other than one
and two and let's try those out today so
to start with let me first of all start
by add column and I would like to add
here a weekday okay so and not weekday
number I would like to add a weekday
name here weekday name how do we add
weekday name we have learned just few
minutes before is that we can use for
format function for that format date
again calendar Auto also gives us a date
let's use DD d d four times give us the
complete one Alt Enter Alt Enter so we
got Monday Tuesday and S ascending is
the date so this start so any Monday
week cover the first week as a full one
now let's play around with one argument
here where I want to have a new column
which is nothing but week day as a
number and week day is a number week day
date first argument column return return
type 1 2 3 try 11 though it's showing an
error but as you can see here it is
giving 1 2 3 4 5 6 7 1 2 3 4 5 6 7 so
Monday is day one let's try the argument
12 so in case of 12 Tuesday is 1 and
then
mon other than that we have 1 and two
also as an argument one means Sunday and
two means Monday and one means Sunday
start so I'll tell you the formula and
you can use those argument as you
require so let's say I need I actually
need the Monday so I can use 2 or 11 so
date it's a very simple formula date
minus weekday we'll reach a day before
not reach Monday we'll reach Sunday
because on Monday I'll subract one day
I'll reach Sunday in Tuesday I'll
subract two days I'll reach a Sunday so
we'll say okay after that just add plus
one so this is nothing but Week start
dat what we got here is Monday as Week
start date then again the next Monday is
again the week start date and you can
check what is the date on the Monday now
if you need Tuesday is the week start
dat what you need to do no change in the
formula only Chang in this parameter
just do that commit come out Week start
date becomes the Tuesday start date same
way you can work for Wednesday this is
Tuesday this is next Tuesday this is the
entire week so get it we'll keep it
Monday you can keep it 2 or 11: what is
week and date week and date is six day
ahead of the Week start date I want to
add six more so I can simply go ahead
and add plus seven here and sometime
what we is 7 + 7 minus week day both are
going to give you same result so either
you do plus 7 here or you do plus 7 here
both in same and we cannot have to
column name with the week start date you
need to week end date press enter and
you get the end date now the start date
and that's your end date you're ending
on 7th which is a Sunday then you ending
another on Sunday this is this so now
any calculation you know 11 12 13 14 15
16 17 are what we are looking at so now
you understood the calculation I can
copy this and this is why I prefer this
manner I can go to the date table just
shift enter or Alt Enter back space
backspace back space in this case and
then I simply press enter here at the
end and I have Week start date and week
dat end date also available here and as
this is not starting from 1 January so
that's why you have the weeks which are
starting from The Middle of the month as
this is starting from 13th of October
based on that our weeks are coming
here now I want to create Financial year
start and financial year end now because
my months are standard months so the
calculation for the month start date and
month end date is not going to change
but the year month calculation will
change because let's say if my year
starts on April the April is the first
month and let's consider that case only
when April is the first month so again
my date table has a lot of columns as we
have done in the p we are going to
create these here and then we'll take
them to the other scpt now let we start
with the start of start of FY let's call
it Financial year started start of fi
where do here start the year starts in 1
of April years end on 31st March any
month like January February March they
have their year started in the last year
month which are after April which is 4
to 12 the month the year started in the
same year so this is the logic which we
are going to use and for that we are
going to use an statement so what I'm
going to do is I'm going to create a
date tape date using the date function
but and remember four and one are
constant right now the only thing we are
doing is keeping a little bit of hard
coding we say month number is four and
day is one that is constant here is
something which we need to change if the
month of the date is in the row now is
less than four then the year of the date
is not starting this year it's starting
in the last year so whatever year you
have it's minus one otherwise you can
continue with the year you had because
your ear is going to start in this year
only what we are saying is the in the
year part of this one is basically that
if the month of the date is less than
four the true condition then year is in
the last year the Year start and if it
is greater than or equal to then year is
starting this year and after that we can
simply hardcode 4A 1 what we got first
uppl as our start date now this is
starting in October so it will have that
now we have to travel till 31st March
and 1st April to see is there a change
happening so these are the two rows we
are looking forward and look at the
years so the years are changing in the
month of April now end date again we
will keep very simple Logic for the end
date but here what is happening if it is
before April it's ending in the same
year after April it isend ending next
year the Year doesn't end on this year
shift enter past this end of FY and if
it is less than then it's ending this
year if it is more then it's going to
end next year plus one either it ends
this year or it ends next
year where does it end it doesn't end on
April it ends on 331st we have to do the
adjustment and then enter or commit and
we got the date of 31st March as the end
of year and if you you can scroll down
again to the same place
March look at these rows March
April end of year is
changing so we got our financial year
now to get the month number and the
quarter number the formulas which I
wanted to use need start of the year
start of F5 now the challenge with us
here is basically that this table which
the current Table of the add columns
doesn't have that because they are
calculated in this table itself we
cannot use use them so now what to do
what I'm going to do is I'm going to put
this entire table into a variable that
we call that where underscore tab equals
and then what I'm going to do is I'm
going to go down it's a variable so I
need to return something I'll return
this table return underscore tab let's
do a little bit of alignment change you
better understand that enter nothing is
changed this the same table now what
happens is this new tab which is coming
down which is in the return have all the
columns what we need and now we can use
start of fi and end of f the reference
point now it is available in that table
so if I now add add column on this tab
here at this place if I add add column
it will have these two columns start of
FY and end of FY and using that we are
going to drive out our now our month
number Financial month number and
quarter start date and quarter end date
one of the most important thing in any
data analytics or business intelligence
analytics project is time intelligence
time intelligence is critical to compare
data Against Time you want to compare
this month versus last month this month
till date versus last month till date
this month versus last year same month
this year versus last year quarter
versus quarter QQ y y week on week these
are the kind of comparison you wanted to
these comparisons are really important
to understand are we doing good or bad
powera provide you huge list of time
intelligence functions and sometime you
have more than one option to achieve one
thing now there are ways and means you
can write down your own time
intelligence function using the other
functions or you can get the value let's
say MTD using the standard MTD functions
and then you can also get that using
let's say date between or maybe using
the filter function now for everything
there is a fit for purpose it is really
important to understand all these time
intelligence functions in powerb to make
sure the time intelligence works for us
the first step is to make sure the six
step which I'm going to tell you you
ensure that these six steps are done in
your powerbi setup or your schema is
following those six step or six rules
poose that we are going to check in our
own file that yes we are right now
following these six step while we are
going to do this time intelligence
journey in powerbi there are six rules
one must follow to make sure the time
intelligence work in powerbi if you
don't follow these rules the time
intelligence May Fail or may not give
the desired results so these six points
or rules are use date table you have to
always create a date table and use it
and you have to join the date of your
fact with the date of the date table the
date table is marked as a date table now
once you mark date table as a date table
or calendar table as a date table it is
going to ensure that you have continuous
dat continuous States is really
important for all powerbi time
intelligence functions use columns from
the date table when we will use the
visualization in powerbi you must
remember that you have to use the
columns from the date table like date
month year Etc into visualization into
slicer into filter and into measure all
these places the column should come from
the date table to make sure the time
intelligence work properly the date does
not have a time stamp now your fact
table date might have a time stamp and
sometime because you have just taken the
data type as date you might not be able
to see it so the best practice is to
change the data type as date time and
then choose a format where you can see
the time and then see you don't have any
time other than 00 hours or 12:00 a.m.
you must not have any time other than 00
hours or 12 a.m if that's how your date
is looking then you can use that if
there is any other time other than 00
hours or 12:00 a.m. like 2: a.m. 2: p.m.
1:00 a.m. 1 p.m. Etc then you should
create a date column that you can do in
power query you can change the data type
as date and if you change it in power
query it will lose the Tim stamp and if
you want to do it in Dex you can create
a new column using date value once you
have ensured that your date doesn't have
a Tim stamp you can join it with the
date of the date table and because we
are going to create date table using
calendar and calendar Auto function that
is going to ensure that your date table
will not have a time stamp in the date
column you have also need to make sure
that your date table has all the dates
because if your date table doesn't have
all the dates your time intelligence may
not work correctly if you are using a
date from the date table and you are
putting any measure from the fact and it
is started showing blank in the date
column then it means you don't have all
the dates when you're using calendar
Auto function it can make sure that you
have full coverage of date coming from
various other tables but when you're
using calendar function you have to make
sure that you do the full coverage this
is another important point you should
remember avoid bidirectional join if you
have a bidirectional join your fact
table will filter the date table what do
it essentially means is if there is a
date missing in the fact table because
it is missing in the fact table or
because you have applied some filter and
now the dates are less it may actually
reduce the date in the date table which
you are using in a Time intelligence
function and once there are not and once
the and once continuous dates are not
available your time intelligence May
error out or may not work properly if
you take
care so these are the six rules and if
you take care of these six rules your
time intelligence should work
properly we want to start time
intelligence now let's make sure all the
six rules has been followed or not let
start that with the model view do we
have a date table yes we have a date
table is date table marked as a date
table to ensure that we have continuous
dates right click Mark date table Mark
as date table select a date column the
date column should should be the one
which is a primary key or which is the
main date column it may be coming from
your sources it's not necessary you need
to create it in powerbi you can create
it at the source you can create it in
power query you can create it in Dex
make sure the dates are continuous so
the validation is successful press okay
and the moment you do the first thing
which will change here is it will now be
a key it will no more be a date and
there will be no more autod date
hierarchy Auto date time intelligence is
gone is it joined with our table no it
is not joined look at again this date
sales date and if I scroll down here
sales date will have a hierarchy so we
have a sales date with which I want to
join let me drag the date of the date
table on the sales date and the
relationship is created now I need to
make sure the two things which I should
have checked before one is the date the
say date doesn't have a time stamp I
need to make sure that and second is the
date table covering all the dates now
I'll go to the table View and inside the
table view let me go to the sales table
and here I have my sales date how do I
ensure that there is no time stamp so
usually what I do for that is I change
the data type to date time and I take a
format where I can see a time stamp all
the dates should have a time stamp of
12:00 a.m. all the date in my case have
a time stamp of 12:00 a.m. any date
having time stamp other than 12:00 a.m.
it means the join will not be successful
that is there I can change it format
back to date and I can keep it in the
short format so column TOS help Us in
that now let's go ahead and check do we
have the complete set of dates now we
may have multiple tables so the one of
the ways is that you take the Min and
Max of the dates and check it out one of
the easiest way to do that is create a
page bring date or some from the date
table a bring a measure or some
aggregated column from your facts one or
more fact the moment I bring in let's
create a table visual you should not see
any null date sending s dat I'm not
seeing Al date it means all the dates
are joined and I'll tell you one example
where if the dates are not complete what
would happen so let's go to our date
table and we are using the Min date here
let me use a date which is 2019 01 01
now I have data from October 2018 but if
I make it 2019 what would happen I'll
start getting a blank so this blank
means the dates are missing or there is
a time stamp join problem there's a date
time if you see this check out those two
things now let me complete my date table
I can make it from the starting of 2018
the moment I cover all the dates you
will see I do not have blank date when
there is no empty date or blank date it
means we are fully covered you may have
more than one fact add all of them and
check it out so time intelligence setup
is correct one more thing which we need
to ensure is going to come when we
create a Time intelligence major when we
create a Time intelligence major and we
want to use it we need to ensure the
major should use the columns from the
date table or the period the visual
right now you can see the visual is
using date from the date table and the
slices and filter should also be on the
date tape that's the way when it's going
to work best which we are going to check
after our first time intelligence before
I do that once again I'll click on the
date go to the column format change its
format to date and we'll also change it
to short format so that whenever I'm
creating visualization I get little bit
of space when I'm doing some work so
let's start with time intelligence now
as part of our journey we are going to
learn MTD MTD means month till date
means from the start of the month till
the date which we have selected or the
till the date which is available in the
context qtd quarter till date from the
start of the quarter till the date we
have selected or in the context and the
quarter start date would be decided on
based on the date which you have
selected also the quarter start date
will be dependent on your financial year
start date if your financial year is not
starting from the standard quarter
months like Jan April July and October
you might have a different quarter start
date than what you have for the standard
quarter similarly year till date YTD YTD
means year till date year till date
typically we call it when we are using
from standard calendar start date so
standard calendar year start date till
date from the start of the calendar year
till date is yd but in case of a
financial year the Year may start on
let's say 1st April then it is from the
finan year start date till date so let's
try to understand these till date when
we say MTD qtd YTD what does this means
month till date quarter till date year
till date assume my date is 15th of
September 2024 so for 15th of September
2024 what is going to be my MTD my MTD
is going to be from the start of the
month which is from 1st of September
2024 to 15th of September 2024 my qtd is
going to be from the start of the
quarter which is 1st of July 2024 to
15th of September 202 4 my YTD would be
from the start of the year in this case
the calendar year which is from 1st
January 2024 to 15th of September 2024
what happens when my year start from the
1st April now again 1st April is going
to have all the standard quarters so
it's not going to change anything for
quarter same way it is standard month
start so it's not going to change
anything for the month also so MTD would
be from 1st of September 2024 to 15th of
September 2024 QD would be from 1st of
July 2024 to 15th of September 2024 YTD
would be from 1st of April 2024 to 15th
of September 2024 this is because our
financial year is starting from the 1
April it is not starting from the
calendar year so that is why the start
date of YTD has changed and sometime we
call this as fytd Financial year till
date let us start with our first time
intelligence measure and the first time
intelligence major is MTD month till
date means from start of the month till
the date which is being selected or
present in the context the date could
have been selected in the slicer or
available in the row context based on
that date it should give us the data for
that for MTD there are many ways you can
achieve it but first of all we will
learn dates MTD and total MTD functions
Tes MTD function need to be used in a
calculate function total MTD function
might not require a calculate because it
can take a measure as well as the date
to give you the total MTD there are two
fun functions and later on when we
progress when we go to quarter till date
and year till date we will only start
using one of them so the function is
total MTD and dates MTD I'll start with
total MTD which is basically a
self-sufficient function it doesn't
require calculate let me click on the
measure table and I can see the table
tool as of now and inside the table tool
I have a new major option which I'm
going to use in this case let me click
on new major and here I'm going to
create my first time intelligence major
that is MTD net and I'm going to use
total MTD total MTD requires an
expression date and filter it can have a
filter and if you need more than one
filter then you can again use calculate
on top of total MTD otherwise total MTD
doesn't require calcul what is the
expression so expression date filter
what is the expression expression is
Major dates is the sequential date where
we are going to give the date column
from the date table and filter as of now
I'll not give I'll give my major net for
which I want the MTD then I'll give date
from the date table and no requirement
of filter as of now so I'll continue
with this I created my first time
intelligence major MTD net and let me
bring in here now it is from the start
of the month now on the month of October
2018 we don't have the data which is
starting from the first date is 13th
October 2018 and that's the date from
where the aggregation of the data would
start and till the last date of the
month you will see the data is keep on
adding as you can see these two dates
are getting added on the next so we got
36 on 3 days now it is 73 3 days getting
added and it keep on increasing till 30
1 which is the last date of this month
and on the 1 November the first date of
November you see there is a reset and
this is what we call MTD start point you
start MTD from the start date of the
month so the value of the that day and
MTD would be equal but on the next day
it will start increasing so on the
second you have sum of first two days on
third you have first 3 days fourth you
have sum of first 4 days and keep on
going till the month and date and you
will see another reset happening on the
1st of December till 31st is going to
end on first there would be a reset now
MTD Works based on the date in the
context now date here in the context is
basically the date in the row there is
nothing coming from Filter context let
me bring in month here in another visual
I'll drag it into empty space sorting is
correct and let me drag in MTD major
there in this case when we use month
here the MTD major is going to give us
the last dates value and it will act
like a monthly value if you're using at
the month level the MTD will act like a
monthly value at the month level From
First to Last that's the monthly value
it's a current month the month in the
context we have not talked about the
filter as now how does it behave with
respect to filters what happens when we
apply a filter so now the case when the
date is available in the row context and
even if you apply filter let's say I
apply the November filter now we know
the other visual can also act as a
filter when we apply you can see only
November month data we can't get more
than November month data unless we
follow the tricks and the data will
start aggregating for that you may have
a date filter specific very specific
date filter on that date filter how much
data will I get on that day's data or
the MTD data so let me bring in a slicer
for the date I'll bring the date in
between convert it into a slicer and let
me go ahead and change this slicer
setting using the format which is
available on the right hand side and
slicer I would like a drop down and when
I drop down I would drop down actually
go a little bit down I would like to
select something in November so let me
select fourth November so as you can see
the MTD value is for the 4th November
till from first to Fourth even if the
date is not selected you can remove the
fourth number context okay but the date
from first second and third no is not
selected but still it is going to get
that and give you the MTD value if the
value are available in your data the
fourth number is going to give me that
value now we understand that if you
select a month the dates in the context
is going to control that we selected
more than if we select a single date
that date is going to play what happens
and both filter and slicer context are
missing so let's make sure there is no
filter context and there's no slicer
context right now now there is nothing
selected on the slicer nothing select on
the visualization and we remove the
filter and the slicer context and now we
will bring in MTD into a card visual why
we are seeing a blank what is the date
is getting for us what happens these
total MTD and even the dates MTD
function going to follow soon it takes
the last date available in the context
of what the date which is supplied here
and what is the last date available in
the date column please remember it's
only for TD functions for the previous
they take the first date if you go to
our date table the last date is today I
don't have any data for today and for
even for today's month my data ends in
2020 we are in 2024 I don't have any
data for the current month what date
range exactly it is taking for that I'm
going to give you an example and let's
try to use dates MTD let me do a little
bit of visual adjustments
here so I'm going to create my second
major time intelligence major it's again
going to be the MTD major so this time
I've clicked on a major so Major Tool is
visible and from the major tool I'm
going to create a new major and the
major is MTD net1 and this time I need
to use calculate calculate net I'm going
to use a function dates
MTD dates MTD actually required only one
argument which is dates this is also
true with the next function which we are
going to use is dates qtd definitely
dates YTD we can have two arguments it
do cover the year and date which we'll
see later only one date and the date
date which you provide it's going to
pick up the last date from that and
based on that the last date so what it
is going to do is it's going to pick up
the last date from the context now the
context could be the filter context or
could be the row context or if there is
no context available it's going to go
till the last date of the calendar dates
which you are supplying here and going
to take that out dates MTD actually
return return me a table of dates or a
sequence of dates based on the date in
the context is going to return me from
the start of the month till that date is
sequence of date it's going to come up
set of dates month up to current date
date of date and never most of the
people understand it in the context of
today today you cannot pass first of all
it needs sequence of date you can't pass
today to a date 7 and date where what is
there is defined by the context so we
given date of date what is filter
context or what is row context otherwise
what is the last date in case of MTD it
could be first date in case of previous
functions so and this function will also
help us in understanding what we are
getting so again the same results so
dates MTD and total MTD their uses is a
little bit different but they're going
to give us the same result again we are
getting the month till date data using
this one and the same behavior at the
month level there's no difference so it
gives you sequence of date from the
first date of the month till that
particular date the set of date and to
understand that what we are getting and
what we are getting why we are getting
this blank and let me bring in the other
one also as a card visual let's create a
table and see what dates we are getting
so let's click on any of the table and
create a new table and in that table we
will see what dates we have using dates
MTD date of date now because cable is
static in nature it is pre-calculated
the only thing it can do is go ahead and
get the last date because it's not going
to follow any filter context any row
context is going to get the last date in
the calendar based on that is going to
calculate that and let's go to the table
view now and check what does this table
contains for us and as you can see the
dates table contains the date of the
current month from the start date and
this is because the calendar is editing
at today now let me change my calendar
don't think that it gives from today let
me change my calendar I'm changing my
calendar and now it is no more going to
end on today let me end my calendar on
date 202 1231 again have data till
October I'm ending it the 12th month and
now let me go to the dates table again
you see the data is from December 2020
and all the dates 31 dates are available
the reason for that it taken that last
date available in the calendar and
calculated it so these are the date
applicable and because of that you get
these blank values now you understand
now you know how to play around with how
to control that so this is what we have
to continue so now we have learned MTD
let me rename this qtd total qtd are the
functions to achieve quarter till date
you have understood by now that the
total qtd function is one which might
not require calculate while dates qtd is
going to require calculate to do the
calculation let's start with qtd
functions again total qtd dates qtd two
options are available I'll go to quickly
create that so let me add a visual here
date and this time I'm going to add date
because we know it Behavior how it's
going to behave after this one so we'll
quickly create the two majors and the
two major which I'm going to create here
is qtd Majors so qtd net first of all
with total
qtd again three arguments expression
dates and filter we are going to pass
only two as of now expression is net
dates is date of dates that's all
let me also add one more major based on
the UTD net 2 and here I'm going to use
dates QD is going to give me the set of
dates date of date two majors going to
return me the same results just
implementation difference what does it
this do start from the first date of the
quarter the first date is not available
first available date of the quarter and
go till the last date of the quarter the
last date of this quarter is 31st
December and it's continuously
increasing in this direction values you
can see the daily values are increasing
where they will reset they will reset on
the first date of the quarter so you can
see the November has started till the
values are increasing let's go on 31st
December and we have 31st December and
1st January together now you can see
it's increasing till this date and post
that it is changing now to understand
this increase let's also bring in net
into the visualization and as you can
see on the first date of the quarter the
values is same as that day's value and
this is going to be true prove with
every start of the quarter not start of
the month now if I go to February there
is no more a reset at the month's start
the value is not same as the value on
that day for the second month because
it's a quarter till quarter and date it
will keep on increasing so we got now
qtd for YTD we are going to use States
YTD and total YTD total
YTD might not require the calculate
because it to have a capability to take
a measure and provides you total YTD
along with the date column
provided for financial year in both
States YTD and total YTD we can provide
a financial year end date and they can
calculate the financial year till date
values now let's bring in YTD we are
going to bring it into the same visual
for that again two majors and you will
notice one difference this time when we
calculate YTD so YTD net let me start
with total YTD total ydd again we
require expression dates filter but
there is a year and date year and date
means if your financial year is not
ending on 1231 you can give any date on
which it is ending and based on that is
going to start the year end date is only
for the reference where it year ends can
get the year starting point based on
that and can calculate your YTD based on
that so here again for the first
starting I can avoid the year and
argument and I'm going to do that and
let me calculate total YTD and that's
going to give me YTD let me bring in the
YTD using dates YTD so net
YTD net 1 equal to calculate net dates
YTD and dates YTD required dates and
year and date it's required two
argument so date of date and second
argument I'm leaving let me add it to
the visual if the visual is selected I
can simply click on that I got the YTD
value now where would the reset happen
see because we are starting in a last
quarter so we will see the reset on the
first January itself here the quarter
value and the year value same doesn't
mean that it's going to be always the
case and there is only a reset happening
at this start of the year now in the
entire year you will see the
continuously values are increasing till
the time we reach the end of 2019 and
you can see here the max value reached
here and there is a reset which is
happening on 1st January 20 so whyd get
reset on that day now because it was
asking end date it does mean that we can
change where it should reset so let's
say you want a financial year ending on
331st we can do that so let's create a
YTD for FY and we can call it FY YTD net
and I'm only going to use one function
for that as of now both the functions
can do the same job for us and here in
the dates YTD we are going to use the
second argument now is year and date and
this is not available with other TDS
month and quarter only available with
YTD function and let me add this now
let's look the value looks same but we
have to pay attention on 1st January
because on the 1st January this YTD is
not going to reset so this this is
resetting this is resetting this is not
resetting because it will reset on 1st
April when we cross the year on 31st
first March so when we cross year it is
getting a reset and the value is same as
the start of the the quarter in this
manner we can create Financial year till
date from the start of the Year till the
that particular date now let's learn how
can we get the previous month value
previous month till date and previous
month why I'm talking about two things
I'll tell you in a short file let me
duplicate this page after I duplicate
I'll remove one one major from here I
don't need two TDS one TD is sufficient
for me now I would like to bring in the
last year month till date so definitely
I need MTD function for that but other
than MTD I need to make sure that I go
one month back and to go one month back
I'm going to use a function which is
known as date add function the date add
function is going to help again date add
function require continuous set of dates
so let me go ahead and create a measure
and tell you how do I let me add a new
measure from the table tool and this
measure I want is lmtd last month till
date so I want lmtd net calculate net
that's the same thing I'm doing now here
comes the
difference dates MTD that's same but
inside the dates MDD I want the entire
dates to move a month back I'm going to
use a function date add and please
remember the understanding of date head
that date head also require continuous
for dates please watch date as dated
video on my channel for that so dates
require the first arguments is dates
date of date this the second argument is
interval how many intervals I want to go
to last month so minus one plus one for
next month interval day month quarter
year I need month here what I've done
here is basically the continuous
argument which date argument which I
passed to my MTD has been moved a month
behind it is still the continuous date
but a month behind let me press and
enter here my major is created let me
bring it inside the visualization one
here and one on the month here so I
bought the MTD in the table which I have
dates and you can see exactly after the
1 month the MTD has started and it
increasing in the similar fashion now go
down and pay attention on 30th what
value we are getting on 30th I'm getting
the value not of the last day of the
30th October 7 547 K 547 is on 30th
October not 31st when I'm using date by
date it take the 30th value but look at
here what is happening at the month
level at the month level it takes the
complete value so MTD used with a
trailing date using date ad is going to
give me the last month value when I use
the full month value and corresponding
days MTD month till date of the last
month on that date whatever date I have
on that days of the last month what was
my value it's going to give me that so
this is MTD for me now I will tell you
one more function that function is going
to give us previous meth and the
function which I'm going to use is name
itself is previous month so let me
create a new majure meure tool is open
as of now I'll click on new
measure
calculate net and the function I'm going
to use is previous month previous month
required only one argument that is date
again when we use year it will require
more than one argument you can decide
the year and date date of date I'm
supplying and I'm completing this let me
bring in this observe the difference
which we are going to get here and you
might have realized the moment I dragged
it in the visual which contains only
date is actually not the single day
value it's the complete last month even
for each date the next month while on
the month level I'm fine with having a
value which is month and date value it
is not suitable for MTD and definitely
this is not a function for MTD this is a
function for previous month it gives you
complete previous month so now you
understand how the MTD trade triling can
be done and how can we use previous
month I would like to bring in something
here now let me bring in lmtd here and
as expected it is blank let me add thee
also
here both are blank you that's expected
isn't it should be blank let me go to
the last available month is October and
if I click on October what should happen
should give me the September value isn't
it yes it is giving me value this is my
value of the SE number that's fine now
let me do one thing let me play play
around with my date calend I go to my
data in my date calendar I will go ahead
now I don't want to pass a filter or a
filter context just want to go ahead and
change this date to Uber and as you know
I have data enough now there is no
filter there is no filter context and
the date is ending at the last month
where I have the data see I have the
data for October that was the last
available data and this is my previous
month data and I'm getting a previous
month also in my visual make it a little
bit bigger overlapping as you can see
see here I'm still getting the previous
month values both with the lmtd and B
previous but look at the the card is not
getting a filter because I have not
clicked on any of the values nor I have
used my slicer so there's no filter
context there is no row filter context
there's filter context here available
with this visual which is containing
month here so there is no filter context
for the card visual there is no filter
why it is giving blank why not September
because lmtd is giving me September MTD
is giving me value why previous month is
not giving the reason for that that
previous month and all the previous
function which we are going to use
whether it is previous quarter and
previous year they use first date into
context they don't use last context and
to understand that let me give you one
example here that it is using the first
date I'm going to bring in month year as
a slicer here and in this month year
slicer I'm going to go down and select 2
months January febrary January 2019
febrary 2019 the ones which I selected
what are you expecting January to get
the December value seems like it is
getting and February to get the like it
is getting what what value what value is
this lmtd is giving me January and
previous month is giving me
de this is because in the context there
are 2 months right now and the lmtd is
picking up from the maximum available
because of MTD and previous month is
picking up the first date available
because there is no filter context only
filter is available and filter is giving
2 months you need to be really careful
if you are designing a previous month or
the last month and you're using these
function and you select a range which is
crossing a month you're not using any
context then the behavior of these
functions can change so keeping in that
mind you should create these majors and
use them appropriately
the next thing which we want to learn in
the time intelligence is week or week
for week or week the challenge with us
is basically that there is no standard
function for that we need couple of
things in our date table so let me go to
the table View and in the date table let
me tell you what we need so in the date
table we will need a date rank which we
have created as a column here and the
date rank should be the ascending Rank
and it should be dance means after one
we should get two I have created that on
week start date you can also create that
on year week YY y ww second thing which
we need is the we need a week day as a
number and the week day when we use the
weekday as a number that should follow
the same week which start date is
falling so we don't have a week day as a
number so let me add weekday as a number
here I'm going to enter here let me call
it week day number and weekday number
should follow the same weekday which
start date is following so what start
date is following I'll let you know Week
start date is following this one so same
I will follow for weekday usually for
the Monday start what do you want so two
is for Monday 11 is also for Monday so
Monday weekday number one for Monday and
I'm starting let me sort this for
sending 1st January 2018 was a Monday so
that's correct and and we have a week
rank of one for that 1st January 2018 is
a Monday and it should be first week
also both the informations are correct
so now using this we will do our time
intelligence so let me add a new page
and what I can do is directly I can
start with first we will do week over
week and then later we'll do wtd week
till date so for that from the date
table let me bring in week start date
and using that only I'm going to bring
in my week or week so what is going to
be my formula so here I'm going to take
the help from the row context so this
week is the major which I'm creating
calculate net then I'll start my filter
now in the filter I'll use all now for
this week I can use all selected
assumption is that this week would
always be present but it's Finly
possible that I select a date and I need
the complete week then that's why I need
all so in all I can give table or column
name I'm going to give table name here
because I want to ignore all the filters
whether it's a day month year quarter
and then I want to use date of date
tables week rank equals to Max of week
rank now what does that means is when we
use the max of weak rank in the context
whatever week is available or a date is
available for that is going to find out
let's say even month is available aable
then it would be the last week of that
month here is available last week and if
the there's no context available last
week available in the date table it
would be picked up so this is how this
is going to behave and it's going to
give me this week measure and let me
bring it inside the visual and convert
it into date table and you can see that
the values have started from the very
first week the first week started on 13
so the week of 8th contain the 13 only
two days of data and then we have the
week of 15th and the week of 22 for
which we have the data and I can
showcase you it with along with the date
also so let me bring in another visual
with date and this
week value will repeat for a week
because we are doing this kind of
calculation now last week calculation is
very simple we have to use this week's
calculation but when so calculate net
filter all the date means ignore all the
filters on the date we rank should be
equal to the max of weak rank but minus
one it should be minus one and because
the entire date context is available
entire date table is available we'll be
able to have the last week also last
week the only difference is this minus
one let me bring last week also here and
as you can see the last week values are
now av la so we have learned this week
and last week how do we get week till
date for week till date remember you
have to use week number don't use date
you will use the same formula as this
week with the difference copy the same
formula of this week create a new
measure Major Tool is open new measure
is available there and now we are going
to create what we call as wtd be till
date again no standard power ba function
is available so we'll filter the date
table all the dates week rank equals to
the max of weak rank means whatever is
available in the context and weekday
number equal equals to Max of weekday
number so whatever is the weekday number
it should be equal to that number that
is what we are going to have in the
filter Clause week is equal to week and
weekday number is also equal to the
weekday number but that's going to give
me the week day I need to use less than
equal to so now it is start accumulating
so all the week days we have to consider
and let me add this this will give me
wtd and you see that the two days are
adding and this was the value for the
first week then there is a reset which
is happening let me bring in net and
when I bring in net you will understand
that these two days are adding here and
this was the same value which we got for
current week also then for the next week
these values are adding till this place
and this was the value which we were
getting these values are C for the week
is getting added so we got wtd now what
we need to do for last week till date
very simple this is the same last week
formula you need so I can copy the wtd
formula actually that's much easier I
copy this wtd formula create a new
measure measure tool is available new
measure is available there paste this
formula call it as last week till date
and the only difference is only where
the weak rank is there you just say weak
rank minus one and press enter you got
last week till date and what would
happen here is when you add this to the
visualization you will see after a week
we got on 13th so on 20th you will get a
value on 21st the next accumulated value
will come and whenever there is a reset
there would be a reset Whenever there is
increase there would be in now next day
is again Monday so you will see the same
value as the week start which is coming
and so on it will keep on adding post
that so now in spite of not having a
function we able to get week till date
and this week versus last week any
custom month whether it is half year
whether the month is 28 days whether the
month is starting from 15th of a month
as long as you are able to create a weak
Rank and day of period or day of month
the same mechanism will apply for period
versus last period month versus last
month and MTD versus last month MTD or
ptd versus last ptd so till now we have
learned you know we have MTD how get to
get last month till date you have
complete month data how to get the last
month complete month data similarly we
have done for quarter year and then we
created some custom formulas for week we
have not discussed very simple thing
what happens when I want last days data
what was my data 7 days before what my
what was my data a year before or a week
year before week year means 364 days
today's Monday what was my my data same
Monday last year how can I achieve this
so for that what we are going to use we
going to use the date add function and
we are going to create certain trailing
formula the name trailing is coming
because they are behind by certain days
or days behind formula as you can see so
I already a new page and in this new
page I'll add date from the date table
and this time I don't want aggregation
above the date level means I don't want
to aggregate for TDS till date I just
want this is my net what is my net for
last day before 7 days before a year
even it could be before a month so let's
quickly create some Majors so on the
Home tab new major is visible as of now
and I'm going to click on that and let
me create last date so this is going to
be a date add which I'm going to use for
last day but we do have a previous day
function which is available so here I'm
going to use calculate net date ad and
in the date ad there are three arguments
required the first argument is date of
dat second is minus one and third one is
day so it is going to trail by a day I
got last day values are just a day
behind now let's create last week last
week is basically 7 days behind last day
last week same day which is a week
behind so it's going to be behind by 7
days so Monday to Monday Tuesday to
Tuesday Wednesday to Wednesday
comparison we and let me add this into
the visualization and as you can see the
values are a week behind so this is 20th
this was 13th same way 21st 14th a week
behind now how do I get a month behind
value simple create a new measure and
instead of day use month and minus one
minus one month behind and same last
month same day you will see on 13th of
November I'll get my value on 14th of
November I'll get my 14th of October
value I getting a month behind value
same day I can do for quarter but I
would like go for year and last year
same day so basically what happens is
every year typically we end up adding
one additional day so if it is 13th next
year it is 12th if it is not a leap year
next year it is going to be the 12th
October which is going to have the same
weekday 364 is the combination which
fits in the proper division of weeks so
365 add one additional day so because of
that same week day last year if I need
so last year same week day I'm going to
call I'm not going to call same day I'm
going to call same week day and here
instead of subtracting a year I'll
subtract minus 364 days and usually on
the non-leap year you will find it is a
day difference when the actual data
comes in in case of leap year it could
be 2 days so remember the value for the
13th of October and 14th of October and
when I go to the
2019 I will start getting values from
12th of October and the reason behind is
the day and let's bring in week day into
the picture now now let's look at what
it is Saturday what this is Sunday let's
scroll up and see what we had initially
Saturday and Sunday now you understood
why we have done that now last year same
day basically it is 13th October I need
13th October isn't it in that case I am
not going to use - 365 I'm going to
Simply use -1 year don't use 365 or 366
nothing like that just subtract one year
and we will get last year and when we
scroll down you will see the data is
actually started coming from 13th of
October Sunday every year the date will
change so this year it was Saturday next
year it was Sunday this is how it is
going to happen so this is how you
create trailing formulas now these
formulas are a day behind again sometime
what would happen like if you have too
many dates available your grand total
may actually not be a year behind so if
you don't have a year in the context
then what would happen is let's say I
have a calendar which is still 2021 so
what happen my calendar is actually
Trail let's say for minus one year
formula my calendar even get trailed by
one year when no date is in the context
I reach 2020 and I have data till 2020
so my values could be same for the
trailing as well as this one and that
you will see for the last day the grand
totals are same because I have
additional day available for the same
week day it is again same for month
definitely because we ended on October
so that is why we have a little bit less
value but if I increase my calendar
dates you will you will see these dates
are you will see if I move it by to
December or let's say October 2021 you
will see that the values of grand total
is now same and the reason behind that
that when the context is not available
or the filter context is not available
it moved the day a year behind or a
month behind or a quarter behind but
still it has covered all the dates which
are available in such cases if you're
using make sure either the context or
the filter or slicer is adding a ear to
the page or to the visualization so that
we get correct values otherwise you end
up getting incorrect values in powerbi
we have many Dex function but starting
from December 2022 we got a series of
functions which are very similar to SQL
Windows function now the reason we call
them very similar to SQL Windows
function that they do also provide us
something known as order by and
Partition by and based on that we can do
certain calcul which were previously
difficult to do and now they are very
easy if we use these functions so what
are these functions let's have a look at
it in December 2022 we got three
function offset windows and index
followed by two more functions in April
2023 those are Rank and row number all
these functions are on very similar
basis they all have order by they all
have Partition by and they also support
access and reset now what are the key
highlights of these text functions so
these Tex function as I already told you
are very similar to SQL Windows function
performing performing calculations
across related table rows based on Dex
evaluation context but unlike Windows
function these Dex function do not
return a single value but a set of row
which can be used with the functions
like calculate and sumx to compute the
values means they are not going to
return single value so we have to go
ahead and use different function like
calculate or sumx to make sure in our
measures we are able to get single value
so these function execute in Dex engine
rather than being pushed to the data
source offering improved performance
particularly when sarting by
non-continuous columns so basically what
happens is their execution happens as
the Dex engine level so they will be
able to provide you better performance
so these functions are different and
they are executed differently to give
you performance gains key highlights as
I already told you these functions use
order by Partition by access and reset
typically they are used in pair order by
and Partition by one pair access and
reset access and reset are usually used
in visual level calculations so let us
start with the offset function offset
function is one of the functions which
has been released in December 2022 and
it's very similar to Windows function
and now we're going to use that so let
me start first by creating a visual on
category and I will take along with the
category
net let me convert this into a table
visual now here I would like to know
what is the value of previous category
now based on what based on the category
sequence or based on the net sequence
okay so in this manner we can comparison
means based on the last one which and
that's where the offset comes in play
where we can actually go up and down now
offset is not a table function where it
goes for a table row it still need the
context means by which you are it needs
that row or group by for which you are
going to move up and down inside the
calculation so let me add a new measure
and this measure is I'm going to call
offset one
calculate net offset now what are the
things we require for offset Delta
plusus one what is relation this should
contain the columns for order by and
Partition by with the enhancement you
don't need to add Majors now so if you
want to use a major into the order by
you don't need to add it then you have
order by blanks most of the time we are
leaving that blanks Partition by where
you can means let's say if I want to
partition inside category or brand see
the operation should happen within a
partition we can do do that then we have
Concepts like match by and reset which
can also be used now let's start with
minus one offset and we will use all
selected now all selected and all
depending on whether the data which is
present based on that we want to take a
decision or data which is also not
present but present in the values want
to take decision based on that I would
like to take based on the data which is
present so item category order by now
order by let's first start with item
category itself isn't it that what is
the value for the last category 1 2 3 4
5 rest I don't need I don't need Val
blanks Partition by match by and resets
so let's close the offset and let's
close the net by default here order is
ascending now in powerbi those of you
who have seen rank you know that the by
default order is descending but for all
the windows function the by default
order by is ascending so let's add this
mejor offset inside our our
visualization and let me sort it on
category because that's is how I've done
it so as you can see here the net is
trailing by one one values because I
given offset one same way you can give
offset 2 3 this is minus one okay now
either I can make it plus one or I can
change the order that is one of the two
things I can do so let me do one thing
let me go here in order by and let me
use descending what would happen instead
of trail by one now it is lead by one so
Category 2 is coming in category one so
next now same thing you could have
achieved by ascending by using plus one
so I removed the descending and let me
remove the minus one also so same result
I got so in this manner offset works now
this is one way variation of offset now
let's run on the second variation of
offset where now I don't want to sort on
categorical values now this would be
really useful when we do month-on-month
comparison but let's look for the
comparison which is basically for net so
I want to travel by net my top category
I should differentiate with second top
second top with third top now comparison
is happening between the top ranks then
how do I do that so then what would be
my order by in case of this new major
which I'm going to call offset new I
don't want to do by the categories I
want to do by net major and see I have
not added the major inside my all
selected in relation it is not added and
let me use descending and let now let me
bring this inside now I need to sort it
on net to understand this so category
now why I'm getting in category 4
because I used plus one I said in
descending order plus one but in
descending out what I need minus one so
now the topper would be trailed so
second topper will get the first topper
in this value so now whether you need
second with first or first with second
you can decide now this is really
helpful the offset is going to be really
helpful in month on month comparison
quarter on quarter comparison and year
on year comparison now let me do one
thing let me bring in a new visual for
you and in this visual what I'm going to
do here is I'm going to do a little bit
of trick so what I'm going to do here is
I will bring in year I will bring in
quarter I will bring in month and I'll
bring in
net and let me instead of month number
let me bring in month
here what I want here first of all I
want month on month so how do you get
off offet of month on month very simple
challenge month on month is a text it's
not going to work easily so I would like
M and offset month on month offset how
do I get calculate net offset what is
Delta minus one what is relation all
selected now here comes the challenge
month is a text and it s order is not
correct so how do I take this so here
what I'm going to do is date table month
year I need to take month year as well
as I'll take month year sort so let's
take both of them month year and month
year sort both we have taken now we will
go and so relationship is done how do I
sort I need to sort on or order by on
month year
sort do I need to partition as of now I
don't seem I need a partitioning but we
may or
may let's bring this m offset inside the
visualization so what we see here is
basically that we're able to get this
month or month and let's not look at the
quarter and this one because quarter
offset doesn't seem like this TW first
of all I should not have got anything
here in the Q4 I'm getting something so
we are not looking but here in the month
things seems to be correct but there is
a challenge I'm not getting this one for
first month so let me change this visual
a little bit and let me duplicate this
for this so Ive duplicated it and let me
delete this first visual I don't need
but if I use here this visual I
duplicated it and let me remove ear and
quarter from here you can see that this
measure has properly worked isn't it for
every month I able to get an offset
minus one offset easily m is working
perfectly fine why not here and this is
what we call the inclusion of all the
participant in the formula so what's
happening here is basically the quarter
and year are also the participants which
are not been considered so even though
we have not done the partitioning inside
the quarter and year Auto partitioning
is happening and that is something you
might have seen in the rank function
also so now what we are going to do is
we are going to include that so we'll
say Okay include the quarter also so
date quarter and include the year also
date year and the Sorting don't need to
change because the Sorting month year is
still valid across these month year sort
we have taken month year sort it is not
month sort now what you seeing here what
we see here is okay this is fine this
was previously also happing now this is
also Happening Now across year and
quarter we are able to get M and the
month year actually only month year
visual also retaining the same so in
both cases it is working now you might
have understood how I want to get the
quarter very simple I'll keep quarter
year and change the Sorting of quarter
year now quarter Year is already in
sortable format so I don't need a
sortable quarter here here is easy but
tell me will I take three measures and
then how would I ensure the quarter is
going to be at quarter's position and
month is going to be a month position
and so what I'm going to do is I'm going
to create little bit complex measure
this time around so you understood how
offset
work and now let me take this
calculation here and I'm going to take
this use this calculation inside a new
measure which is basically po period on
period what I'm going to do is in Period
of period I'll create a switch statement
switch true and in switch true I'm going
to use is in Scope when we use is in
scope we have to remember that the one
which is at the bottom of the Hier so
let's consider this Matrix in this
Matrix visual at the bottom of the H is
month here when we look at the row
columns followed by quarter and year ear
is on the top month is on the lowest
whenever you use is in scope you should
handle the lowest one first because
understand ear is always in scope other
than grand total quarter is in always in
scope other than the year total month is
only in scope for month column so here
year is in scope here as well as here as
well as here here is only not in scope
in grand total we can decide what we
want in grand total when nothing is in
scope so now we know our Scopes so is in
scope what should be the first one month
year and the column which has been taken
in the visual is really important so
month has been taken in the visual and
at that time which formula I'm going to
use I already copied that formula so
this formula is going to work now second
is is in scope which should be second is
in scope
quarter so date quarter is in scope what
formula you need I need almost similar
formula but I need this for quarter so
let's start changing offset minus one
all selected I don't need monthier
columns quarter and year what should it
order by it should be order by quarter
see start giving the error if you're not
using so minus one is my Delta my
relationship is all selected quarter
year and year everything which is
applicable to this particular row okay
relation order by water here I don't
want partition within here I want it to
go across here and that's why I'm not
taking Partition by and that's why I'm
including the complete combination so
that it can go across so very good you
can copy this formula now now you can
take a decision whether you want to
write down is in scope ear because if
you write down is in scope ear you have
a flexibility to write it down the grand
total also but right now I don't not
much interested in handling the grand
total but this is one of the way you can
handle the grand total okay now think
about it when we are comparing month on
month quarter on quarter year and on
what I'm going to compare on the grand
to do I really want to compare something
or not that is the decision you have to
take based on that you decide and
there's nothing in the context of the
grand total there's no year there
there's no quarter here so what is going
to trail that is also an important
question okay so what we saying
calculate now ear is in the scope or gr
R is in the so assume the year is in the
scope so I only need ear I don't need
quarter I don't need month and what it
should be order by Year my year is
number which is sortable so I handled
all three conditions so what we have
done is we have used this season scope
and using this scope we have now created
a calculations which is going across
month quarter and year and three
different level it is handling in three
different manner now we need to
understand these calculations so let's
pull in this measor inside this
visualization now you can see for the
first year quarter and month there is no
value it shouldn't be because I I don't
have anything before that isn't it month
we already tested let's look at the
quarters so this value matches with this
value of 2018 here quarter matches with
quarter now when I go to Q2 the value
matches with previous quarter I to
scroll down little bit or make this
visual bigger or what I can do is I can
move up so month is removed now I can
compare year also again easily at the
year values so we're able to now compare
month on month quarter on quarter year
on year in the same visual same Matrix
visual we are able to do is in scope has
helped us offset has helped so this is
how powerful offset function is and
there could be many things which you can
do with this it makes your travel easy
across the rows based on categorical
data or a major so go ahead and try that
out one of the most interesting function
in these functions offset window index
rank and row number is window function
itself now very similar to SQL Windows
functions but window function is really
interesting it allows you to create so
many things running total rolling totals
MTD qtd YTD lot of possibilities are
there all the function offers different
kind of possibilities but Windows
function has so many things which you
can do and it is because it provides you
those two arguments where basically you
can decide the position of traveling so
let's look at this function so let me
add a new page and in this new page I
will start with month here this time
because while we can do traveling on the
categorical variable other than the time
not going to make much sense unless we
have very specific example and time is a
very good example month year and along
with that let's have net table visual
first thing is I want a rolling so how
do we do rolling we have formulas in the
past so let me tell you the first of all
rolling formula without Windows how you
let me create a new measure so let's say
I want rolling two and rolling two is
easy to understand so usually we do
rolling tool like usually calculate net
dates in period is something we use in
dates in Period what we want a date
column basically the first argument is a
date column start date number of
interval and intervals so what we do is
let's say we give have end dat here so
we start giving intervals in negative
and then inter well basically month
quarter year what you can get this is
the date in Period so what first thing I
will use is a date column so date of
date second is start date so we usually
use max of date of date means whatever
is current Max date you take that then
I'll use minus 2 because I want 2 months
rolling usually we do 12 months rolling
but 2 months is easy to understand we
can easily compare the total so this is
rolling two okay we got rolling two let
me bring in Rolling two here now as you
can understand the first one is same
because there is no previous month now
this is total of these two the second
row November then December is total of
November and December you and see the
number which is 18 68 which is very
similar to some of these and similarly
you can see because if it's more then it
would not have survived if it is too
high then it would not have been 2
months total it is more than that so now
we understand that it is only totally
for 2 months so rolling is there second
formula which Windows also easily is
cumulative now today how do we do
cumulative without using Windows so
again I'll create a new measure and give
you an example of cumulative so if I
have to do a cumulative measure let's
say cumulative sales how do I do I'll do
calculate net filter all of date so we
have to ignore everything which is
coming on the date and then we say and
the reason is I I don't want to say that
if you have taken the filter of the year
then I'll not give cumulative if you
taken filter of the date I'll not take
give you a cumulative or if you have
taken filter of month I not so that's
why we are ignoring all the filters on
the date and then we say date of date
and this works even for month quarter
end that's why we start with the basic
unit of date that I'm doing cumulative
for each date and then it will roll up
to month quarter and Year date of date
is less than equal to Max of date of
date so in the context whatever Max date
is available I will take less than equal
that so max of date of date and then we
close filter and the calculate we got a
new mejor which is cumula sales let me
bring in this let me also bring in this
inside the now in this one you see the
total is continuously increasing until
the end of time it will keep on
increasing and even if you don't have
the data because your normal measures
will stop as soon as you get blank but
this will not stop because it's still
getting the data from the past from the
beginning of the date you want to
control then you have to give additional
filter so now we understand that you
know the basic way of doing these things
before the windows function now how to
do this using window function so let me
duplicate this Visual and remove
additional stuff now again we'll start
with rolling again new major Home tab is
open we can click on new major there and
the major this time again I'm going to
create rolling two but this time the
rolling to would be created from Windows
function so let's understand this
function so first calculate net and now
I'll use the window function in the
window function let's understand the
argument from offset type of offset two
offset type of offset then we have the
normal one relation order by blanks
Partition by match by and reset from
number type absolute or relative whether
it's absolute or relative What's happen
in case of rolling rolling is basically
relative minus one to0 two rows and what
is cumulative cumulative is partially
absolute partially relative from the
absolute Z row to relative zero relative
zero is current row so what happens in
this case is the relative position is
with respect to current row so my
current row is let's say December then
November is minus1 and January is + one
so now let's start creating this
function so -1 why not Min -2 because
from -1 to 0 two only we are considering
which position relative position
relative to the current one then what is
the next one I want zero what is this
zero this is zero is also relative
relative position the current rows
relative zero position comma all
selected or all we use all because even
if the data is not present I want to
some all month year so what we'll use in
inside this one all month year but month
year cannot sort so we'll use all month
year sort this is the relation we want
then what is the next order by order by
what we can order by only only month
year sort then that is why in the
relation we have month year sort do I
need anything else no I don't need
anything else rename this one and commit
it rolling to by window function let me
drag this inside the visualization you
can see very similar results here same
rolling to results so rolling to from
Windows and rolling to from the
traditional mathod whenever we can use
Windows function we prefer the way of
calc ation is a little bit different so
it should give us the advantage now we
want to create cumulative and this
cumulative measure is going to become
base of many other measures let's see so
how do we create cumulative in case of
window so let's begin a new measure
first of all measure tool is open and
under that I have new measure and I will
now create a measure cative net using
Windows calculate net window function
from where I should start from or one
one absolute till which place I should
go to zero of relative I want to go zero
relative position what is my relation
here I can give all data I want to
include the complete date table then
order by order by and because I have
included the table it should allow me
the order by date do I need anything
else I don't think I need anything else
right now I should be able to get a
cumulative net using the window function
let me add this to visualization and as
you can see see it is also showing the
cumulative results continuously
increasing and should give me the same
total at the end so on the last month
the total is same as grand total and it
will continue even if you don't have
data so similar behavior of cumulative
net with cumulative sales from the
traditional method so both traditional
method and the window method for
cumulative giving same results now what
we are going to do interesting thing is
we'll take this cumulative method keep
on partitioning it month quarter and
year and we'll get MTD qtd and YTD very
simple just set Partition by you get MTD
qtd YTD how so let me rename and
duplicate this window one duplicate
window 2 now let's remove something
which we don't need I don't think even I
need the first visual we have learned
using time intelligence how to do MTD
qtd andt I'll only going to keep
cumulative here in the visual and let me
copy this formula using the major to new
major let me duplicate
it net MTD window function remain same 1
absolute 0o relative All Dates order by
date but now we will add after the order
by leave the blanks Partition by what I
want partition I want to partition it on
date month here so MTD function is ready
by just partitioning the cumulative
Windows code on month does it won't work
seems like month total isn't it seems
very similar to month total how do I
differentiate and to do that actually we
need to bring in one visual with the
dates at least for MTD we need dates and
I'll replace the month here by date so
in the first visual now you can see that
the data is getting added up till the
end of the month and there is a reset
which is happening at the start of the
month same way when you and another
month totaling up till the end of the
month and reset happening at start of
theth month MTD behavior let's do for
qtd copy this formula again new major
from the Major Tool and just we need to
change qtd and Partition by what quarter
it should be quarter here actually and
my quarter is actually quarter here
let's add this to visualization and now
you can see the reset is happening after
the quarter so the first month value is
same and if I look at the day level also
you will see that on the 1st January
only the reset is happen happening if I
go to first FA there is no reset for
quarter now you would have understood
ear is really simple same formula Major
Tool is open new major just go ahead and
change the name and the Partition by add
this to visualization as you can see
reset only happen once a year Windows
function giving us MTD qtd YTD running
total ruling total there could be there
could be n number number of such things
which you can do using Windows functions
so keep on exploring let's start with
the index function the index function
can be used to identify top bottom
performer top first performer second
performer by value and name so let's
begin our journey by bringing in
category in a visual along with the
category I would like to bring in net
inside this
visualization table
visual now let me create a majure which
is going to give me the top category Top
by what top by the category names or top
by the net I need it by net isn't it so
top one cat and I'm going to use the
function which is known as
index index which position first thing
is
position then relation order by blanks
Partition by if you need the within
let's say within brand what is the top
category or within the year which is the
top month match by I need the topper one
what is the relation all item
category what is next order by order by
what net but ascending or descending
topper means
descending in case of net topper means
descending I don't need to give next of
the argument so let me bring this inside
the visualization
it's giving me the name of the top
category and as you can see the top
category is Category 2 so this would
remind you of a function top n which can
also give you the top category but the
challenge with the top end function is
if you say top n 2 N is two in top and
it's going to give you two categories
not one I want the second topper how do
I get that very simple here in the index
function uh to Second category and just
change index by
two you got the second topper category 4
is the second topper you need bottom
performer use minus one or ascending you
will get it if you even put this on the
card visual you will get the
results now you may be asking why this
is repeating can we control it and I'll
tell you how to control it let's use
calculate max
of item
category comma then we will use keep
filters we don't want it to repeat so we
use keep filters on the index keep
filters on the index and the expression
will keep it as it is so this will work
as values and
filter and we will now close the key
filters and calculate and bring that in
and as you can see it can now filter the
visual if require so we can duplicate
remove the additional
items and you will see the visual is
getting filter and the reason I use this
formula was a little bit different
because I actually now want the topper
value what is the value the topper had
so I'll create another mejor and in this
mejor I want the net value of
topper and for that I'm going to replace
this Max category by net so I want to
keep the formulas almost similar and
then index is
one let's bring this inside the
visualization this is the topper value
but if you want to compare with the
topper value how much percentage you are
of the
topper then what you can do is you can
actually avoid using this keep filters
if you Avid keep filters then this value
will repeat for all the categories only
when you are inside the category View
and you can compare how much percentage
you are of category similarly if you
want to know bottom
performer very
easy either use minus one or sort by
ascending one of the two thing will give
you bottom performer so instead of top I
now want bottom performer bottom first
bottom second bottom third everything is
possible just go ahead and change the
number in the index function and you
will get it so the bottom performer
is Category 5 with the value of 615 K so
offset function makes it really easy to
find it you can use Partition by to find
is it within inside a partition and this
function opens New Opportunities while
you're dealing with this in the
visualization now let's understand rank
function you already have a rank X which
is very similar to this function but
this function is different in its
Behavior the way it is used and one of
the biggest advantage of this function
is it can be used to give a rank for a
major by considering a column also and
I'll give you that by an example so let
me first of all find out what rank we
already created so if you remember in
the past we created rank on the net and
it was created on brand let me bring
that ins inside the visualization and
let me bring in brand also this rank was
created on net so let's add net into the
visualiz thought on net so you can
understand the rank patter so how did I
get this rank so we use the rank X
function now we use the another function
for the rank which is rank function rank
net one equals to rank ties first thing
it ask for ties second thing it ask for
relation which is something which I all
or all selected item brand order by what
order by you want to give blanks in case
you have blanks Partition by in case you
want to partition the rank within
something match buy and reset these are
the standard things which we have in the
any window type of function it's not
true SQL window it's type of that what
is my ties ties is dance Dance means
even if the rank repeat the next rank
would be the continuous rank so 112 it's
not 1 13 I can use all or all selected I
let me use all selected item brand now
order by something which has been
enabled only major so you don't need to
have it part of the relation I can
simply give order by net ascending and
rank X was by default descending rank is
basically the series of function which
uses these kind of order by and
Partition by all of them is by default
ascending so we have to use order by
descending because we want the net to be
sought by descending now this function
is also better for handling ties the
reason for that is basically in the
order by I can simply use item brand now
if I use the brand name it will
immediately break the ties if I have the
same number so breaking tie is really
easy in this function fun well that was
little bit complicated in case of rank
so rank breaks T now I would like to
take another case I go to my sales table
first of all I go to my customer I bring
in customer name t date and net IND
visualization I first sort it on
customer and second s with the shift
button on sales date I want to know the
first sale of the customer so here what
I want to do is I want to rank the
customer sales States I don't want to
rank them by net I want to rank them by
sales State can I do it in rank X in the
r rank expression where we use the major
you can't use a column if you are
creating a rank major in a rank column
you can do that but not in a rank major
and that's where the rank function comes
handy unlike rank X where you can use
only a major in the expression of a
measure rank functions allows you to use
a column also how let's try that out new
measure from the Home tab and I'll
create rank customer date rank what I
need ties then something is repeat
use dance relation is really important
here and I'm going to create this
relation using summarize all selected
sales because the things are coming from
two different table customer which is a
dimension to the sales and the sales
date which is coming from the sales that
is why I need and I need definitely the
all selected or the all data and that's
that is why I'm using all selected on
the sales inside the sumarize from
customer what I need I need name what
else I need from the sales from the
sales I need the sales date
now comes the order bu in the order by
what I need I need order byy of sales
date ascending I need ascending rank
blanks I can leave empty I need
Partition by customer which is customer
name Partition by customer name I don't
need match by and reset I can leave it
and let me bring in now this measure let
me bring this inside the visualization
now as you can see as you can see we
have a rank of part the Sal State inside
each customer
this is something which is not possible
using rank X function also you can
easily break ties here by including
additional parameter to order by let's
start with the function row number now
row number function can provide you the
continuous sequence of the number or a
visualiz now for quite a some time some
of you are asking let's say I'm creating
a table Visual and in that visual I
would like to give you know sequence
number how do I give that sequence so
this function is going to enable that
I'm going to take a little bit different
example and measure so what I'm going to
do here is basically I will bring item
name from the item table and I would
like to bring from the sales table the
sales State Sal State and now I would
like to bring one major NE now here I
want to create a row number what would
be row number based on row number can be
based on any of my condition let's say I
say first item and then order by sa
State and then if really I can consider
the net or it could be based on net of
item and Sal state so we can decide the
criteria the way we wanted to do it and
based on that we can create so let's
start a measure so I'll call this as row
num and use the function row number now
let's look at the syntax of row number
first of all it is asking for a relation
then for order by lengths Partition by
match and reset so relation means it
should include the columns which are
there in the visualization which want to
consider order byy how do we order that
byy and blanks so now let's start with
so I'll use all selected because I want
the item and sales date whatever is
available in the visualization to use it
but the challenge is item and sales date
are not from the sales table so for that
I need to change this code little bit I
need to use summarize function first
summarize all selected sales I whenever
we take the central table in the star
schema we should be able to use the
related Dimension item name comma is
date this is what I need order by what
so I'll use order by let's use that
Partition by I don't need any kind of
partition I want the continuous R number
so let me add the r now you seeing the
numbers definitely not making sense to
us okay so let's sort on the net so when
I done the sort ascending and because
the sort is by default ascending you can
see you are getting the r number now
here we did not talk about TI Breakers
it did not say order by net then item
then sales dat no it's automatically
broken those ties let me do instead of
order by net can I use item item name we
do that let me sort on the item then
higher automatically breaken taken care
it's acting as a WR number now let's
take a case what happens if we forget
something is there in the visualization
let me bring in the ID inside the
visualization you start seeing a
repetition isn't it why are you seeing
the repetition now the reason for that
is that the city ID is not considered
inside the relation so let's add the
city ID also here Sal City ID whichever
City ID you taken geography Sayes and
immediately you see the row numbers are
correct again and if you forgot some
something it may not give the correct
answer so whatever is participating in
the table basically those which are
getting grouped you need to use that now
if you want this row number to reset
let's say after partition let's say you
want this row number to reset after
every name then we can use Partition by
name and let me remove the city because
otherwise there are too many items on
that and remove this city from the row
number relation also order by and now
let me use Partition by and it is item
name name I Chang my formula now we need
quickly scroll down the best way could
have been we should have used Matrix and
now you can see item 10 and item 10 you
can see a reset happening in the rank
because it's partition inside the item
so row number is allowing you now it can
give you continuous row numbers it can
give you within a partition just give
the combination and you will get it it's
automatically breaks the ties you don't
have to explicitly do it but yes if you
want to do use order by to break in a
particular order so another function set
of five functions as of now which is
offset Windows index Rank and row number
which uses these order by Partition by
very similar to Windows function of SQL
not same that has a different objective
it has different objective execution
wise they are also a little bit
different but they provide you whole lot
of flexibility to create the Maes which
are really difficult to create otherwise
let me rename
this before I could have completed the
editing of my complete code February
2024 release has arrived and in February
2024 we have got visual calculations so
we are going to have a deep dive into
the visual calculations and going to
look at the various functions available
in the visual calculations these are the
Dex function which we can use at the
visual level to understand this we have
to also look at the release notes of
visual calculations of February 2024 so
unlike other functions we have not taken
you to the release node specifically for
the visual calculation functions I'm
going to take you through the
documentation I am on the February
2024 release notes feature summary and
if you scroll little bit down you will
see all the features and one of the
features which has been released in
February 2024 is visual calculations let
we click on that and go to the feature
so let's read the release notes a new
way of doing calculations has arrived
you can now add the calculation directly
on your visual using visual calculation
which are Tex calculations remember
these are T calculation that are defined
and executed directly on visual a
calculation can refer to any data in the
visual including columns measures or
other visual calculations means you can
refer the other visual calculation also
this approach removes complexity of the
semantic model and simplify the process
of writing Dax you can use visual
calculation to complete common business
calculations such as running sum moving
average Etc visual calculations make it
easy to do calculation where previous
the very hard or almost impossible to do
so very interesting feature how do you
enable it you have to go to options and
setting options preview feature select
visual calculation and click on okay I'm
going to Showcase you that and then
there are certain examples have been
given there has been a separate blog on
the visual level calculations also on
the blog. powerbi.com and it has been
explained in detail along with all the
visual level functions the documentation
of the visual level function is also
available and it has provided great
details so let's read few part of this
documentation to understand the visual
level calculations better visual
calculations is the tax calculation that
defines and executed directly on your
visual visual calculation make it easier
to create calculation that are
previously hard to create leading to
simpler Dex and easier maintenance for
better performance example of running
sum has been given you need to Simply
use running some sales
amount visual calculation differ from
other calculation index how visual
calculation aren stored in the model
instead are stored on the visual which
means visual calculation can only refer
to what's on the visual anything in the
model must be added to the visual before
visual calculation can refer it being
visual calculation from being concerned
with the complexity of filter context
and model visual calculation combines
the Simplicity of the context from the
calculated columns with the on demand
calculation flexibility from
measure compare to measure visual
calculation can operate on aggregated
data instead of detailed level often
leading to the performance benefit when
the calculation can be achieved either
by new measure or visual calculation
later often leads to better performance
it means in case you have an option to
create a major versus a visual
calculation you can opt for visual
calculation for better performance
because it is going to work on the
aggregated data at the visual level not
at the detailed data since visual
calculations are part of the visual they
can refer to the visual structure which
leads to more flexibility there is one
more article which you can refer to
which tells the difference between
custom column power query calculated
column measure calculated table and
visual calculations again how to enable
visual level calculation and some
examples has been given the first simple
example was Sal amount minus total
product cost then there are few things
which has been explained here like you
can hide the fields from the visual
these options have been given now to you
when you open the visual level
calculation at that time you can hide
Fields so let's read that out in visual
calculation edit mode you can hide
fields from the visual like you can hide
column and table in modeling view for
example if you wanted to show The Profit
visual calculation you can hide sales
amount and total profit cost from The
View then there are using templates so
there are already existing template
which you can use which is running sum
moving average percent of total percent
of R total averages of CHS versus
previous versus next versus first versus
last what are these functions running
sum moving average running sum you might
have understood it is going to give you
running totals or what you call as
cumulative moving average calculates the
average of the set of given values in a
given window by dividing the sum of
values by the size of the window
percentage of parents calculates the
percentage of value related to its
parent uses collapse function percentage
of grand total now become very easy
calculate the percentage of value
relative to its value using the collap
Sol function averages of children you
can use expand calculates the average
value of set of values uses expand
versus previous using previous means the
preceding value next subsequent value is
next first Value First value in the
window or visual last value last value
now there is something known as AIS many
function have optional AIS parameter
which can only be used in visual
calculation X's influence how visual
calculation traversing in the visual
Matrix AIS parameter set to the first
axis in the visual by default it's by
default set to the first axis for many
visual first axis is the row which means
the visual calculations is evaluated row
by row in the visual Matrix from top to
bottom what are the different axes row
calculates vertically across rows to
perform top to bottom column calculate
horizontally across column from right to
left rows column calculate vertically
across Row from top to bottom continuing
column by left to right and column row
means calculate horizontally across
columns from left to right continuing
row by Row from top to bottom then many
functions will contain reset many
function have optional reset parameter
which is available individual
calculations only reset influence if and
when the function reset its value to
zero or switches to the different scope
while traversing the visual Matrix the
reset parameter is set to none by
default which means the visual
calculation is never restarted reset
accepts there to be multiple levels on
the access so there to be multiple level
on the access access means your bar
visual can have like access like brand
or category so that is what we means by
access similarly when you are using year
month and quarter they are your X's
you're displaying a visual there you
have year then you have quarter then you
have month then you have days so these
are your X's something on which we are
grouping the data the categorical
variable used in the visualization if
there is only one level on the axis you
can use Partition by the following list
describe only valid values of reset
parameter none highest parent lowest
parent highest parent and lowest parent
means the parent which is at highest
example has been given like if you have
year month and quarter highest parent is
year and the lowest parent is quarter it
means the the lowest most X's value is
not participating as a parent it can
also be used like values like one and
two so in this case because there are
only two so highest is one and lowest is
two so if you want to restart like when
we are doing run running sum now you
want to transfer this running sum to
let's say YTD so you can use running sum
highest parent so it will reset at the
ear level and you will get YTD AIS and
reset versus order by and Partition by
AIS reset order by and Partition by are
four functions that can be used in pair
together to influence how the
calculation is evaluated they form two
pairs that are often used together so
AIS and reset on order by and Partition
by so with AIS you can use reset and
order by you can use partition by by and
Partition by are the calculation you
might have seen in the window function
offset function index function rank
function and row number function then
this has been explained how to use this
access and reset are only available
function that can be used in visual
level calculation and can only be used
in visual level calculation as the
reference to the visual structure order
by and Partition by are the function
that can be used in calculated column
and measor and visual level calculation
and can refer to the fields while they
perform the same function they are
different in the level of abstraction
provided refering to the visual
structure more flexible than explicit
referencing Fields using order by and
Partition by see in case of exis and
reset you may not be really explicit and
we will take this example when we do
running sum that even if I change access
it can still do the running sum so let's
say if I'm having a visual at the
category and if I change it to Brand the
running sum will continue to do the
calculation and that's the benefit of
visual level calculation so let's say I
have year month quarter and day and I
use previous function so my expectation
is that when I'm looking at the day
level it should show me previous day
when I look at the month level it should
show me previous month when I look at
the quarter level it should show me
previous quarter and when I look at the
year level it should show me previous
year we have to check that at the visual
level calculation but if you use the
order by then order by is very explicit
it is Day means it is J even if you
change your visual details it is still
order by day so order by is going to
call explicit when you need explicit you
can use order by Partition by when you
don't need to be explicit you can use
XIs and reset available functions you
can use many existing Dex function in
visual level calculations since visual
level calculation can work with confin
of the visual Matrix functions are rely
on model relationship such as
relationship related and related table
aren't available these are the visual
calculations available with you collapse
collapse all expand expand all first
last moving average next previous range
running sum limitations not all visual
types are supported the following visual
types and visual properties have been
tested and found not to work with visual
level calculations or hidden Fields tree
map map shape map Azure map slicer it
means it's not going to work on slicer R
visual python visual key influencer
decomposition tree Q&A smart narrative
matrices paginated report arjs map power
app power automate small multiple visual
calculation and hidden field can only be
added and edited using powerbi desktop
while you can publish the report
containing visual level calculation to
powerbi ser you can't edit visual level
calculation or hidden field in power
service so that's not available on the
service as of now to edit it you can use
it and publish it performance of this
feature isn't representative of the end
product as of now you should not be too
much bothered about the performance part
of it reuse of visual level calculation
using copying and paste or other
mechanism isn't available so you can't
reuse them as of now you can't filter on
visual level calculation visual level
calculation can't refer to itself on the
same or different detail level
personalization of visual calcul or
hidden field isn't available and there
are many other which you can go through
this article I will be sharing the link
of this article also into the
description I have added a new page
visual calculation on this page I'm
going to add a table Visual and
start showcasing you visual calculations
to start with that I will go down and
from item I'm going to drag brand and
create a table
visual a table visual is ready and I've
sorted it on the brand time to add a new
visual calculation and the option is
available under the Home tab new
calculation let me click on that opens
the window very similar to the focus
mode window and there you have a pain
where you can give your visual level
calculation the FX pan or the formula
pain now here the right now before I
started the visual level calculation
visual level calculation is hidden I can
hide the measure if I need I can't hide
the AIS or the group wise so let me
create the first visual calculation
nothing but running
sum the function which I'm going to use
is running some and I'm going to give
net parameter I'm going to leave
everything else and not going to give
any value for
those now I can use the
commit to commit the calculation or I
can also press enter I'm going to press
enter in this case the calculation is
added to the visual and as you can see
the visual calculation which has been
performed here it is adding up
the previous value in each rows all the
previous values if you look at here you
can see all the rows is the sum of all
the previous R if you want to edit the
calculation you can click on the arrow
and you have option to edit calculation
so we have done a very simple
calculation running sum and we have
given net as an argument there let's go
back to the
report now what's the advantage I was
doing that using majes okay maybe they
are faster
done on aggregated data but is there any
other
advantage to understand that let me do
one thing let me go here on the brand
and change it to
category can you still see the running
total working fine this would not have
been the case in case I would have
created this calculation by any of the
traditional methods now I do have tested
this with field parameters and as of now
I was not able to add the field
parameter to it but the moment the field
parameter is supported it would be
really amazing because the moment I'm
changing my field in the calculation it
is still keep on working now let's use
another visual function and the function
which I want to use is collapse all
again new
calculation and I'll use the function
collapse all but that is total or gt
grand
total
cpol what all cpol required expression
and X's the expression is net and it is
suggesting me to use the running sum
also but I just wanted the net and how I
want the direction rowwise down is the
direction which I want and let me use
collaps all and as you can see it has
given me grand total now I can create
two functions from here percentage of
grand total and percentage of running
total again they are going to be the
visual level
calculations so let me create couple
more so one is percent of
total which is nothing but
divide
net by TT
now I got the percentage of total or I
can add it and multiply it by 100
100 I got percentage of total so easily
no calculation worries just simply
taking chy and use it on the measure how
simple it is now let's go ahead and do
one more which is percentage of running
total so again click on the new
calculation and here we are going to use
the percent of running total and what
I'm going to do for that is divide so we
are going to use divide and we are using
the regular Dex functions here divide is
a regular Dex function by running some
which is a visual calculation divide by
another visual calculation which is
GT completely based on visual
calculations addit calculation multiply
by 100 as of now
so let's go back to the report and
understand these so first row 22% you're
fine because percentage of total in the
first row is going to be the same in the
second row the running total will add
and I'm not doing a running total of
percentage of total I'm simply have
calculated it on running sum I could
have done it on the percentage of total
also that is another way to do it and
then another 14% getting added another
23% getting added and 100% so such a
easy to do the these calculations now we
have already seen two functions but
there are many more so we'll continue to
look at those so let's do next
calculation and next calculation which I
wanted to do is moving
average so I go and clicked on the new
calculation and let's call it as move
AVG and the function which is available
with us is moving
average in the moving average I can give
an expression expression is nothing but
net
so expression
window do I want to include the current
AIS row column blanks and where you want
to reset so window is two I only want to
do for last two I want to include the
current as of now I want to include the
current so I'll keep it otherwise you
can have the values like true and
false but let's start
with only moving average so what it is
doing right now so basically the first
value is the self the second value is
the sum of these two which is 43
something and just you can see it is
divide by two now next would be the sum
of these two which is around 36 3.6
million divide by 2 and you can see it's
1.8 million next one is going to be some
of this which is going to be around 2.9
Million divide by 2 which is 1.47
million and again this is going to be
some around 2.4 2.5 divide by 2 which is
2.22 3 so in this manner you can see we
are getting moving average let's go
back so we have got net we have got
running sum we have got GT percentage of
total moving
average and as you can see we can go and
change it the XIs to something else and
this calculation is still holds true
that's the beauty of these
calculation why why don't we learn few
more
function I would now like to experiment
with few more calculation and the
calculation which I would like to now
showcase is previous and next which is
going to give us the value of the
previous row and the next row so to
begin that Home tab new calculations
back to the visual
calculations let me call it previous
function which I'm going to use is also
previous no previous month no previous
quarter no previous
here only previous and we have
expression steps X's blank and reset and
step means I can go beyond one so I want
to compare with previous month that's
fine I want to compare previous to
previous then I can use steps and do it
I want to go further down let's say 11
month or 12 month down the line that
also I can do by using these steps it
could be month quarter year whatever you
want to use based on the requirement and
it is visual level so sometime if you
have a disconnected data and you want to
compare with the last available month
think about how much big calculation we
have to do this should resolve that out
because it's just looking at previous
it's just a visual row and what previous
of what
net anything else we want to give step
yes definitely I want to give step one
step and because we have function like
previous and next it might not allow you
the negative integer it is only the
positive integer which has been allowed
here it should would give me every time
the previous row and the first row will
not have any previous
row because there is no previous for the
first one and as expected the first one
doesn't have a previous rest all as a
previous look up here and based on these
values you are able to see the previous
values here going one
down
trailing previous well understood very
simple let's do the next calcul
next the function is very simple
next
net comma One Step done and we got the
next calculation and this time it would
be a one row ahead and as you can see
the in this case the last row will not
have it because we are going one row
ahead we are looking into future values
and there is no value for the last
row in this manner
we are able to
do previous and next calculation let's
go back to the report and check this out
and as you can see we able to see the
next and previous
calculation and as usual if I change the
AIS to
category it's not going to make any
difference I will get previous and next
of the
categories let's add couple more
calculations the calculations which we
want to do right now is basically first
and last so before I do that let me
again change the AIS
to BR need a lot of values
to look at the calculation that's how
you know only five category first and
last are just couple of steps away let's
go ahead and try that out so again hom
tab new
calculation very simple
first think about is how you're going to
do it with the regular Dex index
function it's easy but even that would
require what is the order by and you
need to mention an explicit column for
that so function is
first let's look at the arguments
expression exis blank and reset we are
only going to give one argument as of
now net and that should be sufficient
let's check that
out calculation has been added and as
expected it is just giving me the first
row value for all the rows so I can now
find out per percentage of first now
let's calculate the last value again
click on new calculation from the Home
tab name is last and the function we are
also going to use is last simple net
only one argument but it can take
expression xes blank and reset we are
only going to give one argument as of
now net and as expected it is showing
the last value
let's go back to the table and look at
it now we have quite a few calculations
as you can see we have first and last
also but we have more visual
calculations so we'll continue to
explore
those so the next function which we are
going to check out is range and it's
little bit different function and I'm
going to tell you one different
operation which you might not have seen
till now in
powerbi okay so let's jump on to the new
calculations from the Home tab and I
want to do a calculation which is range
now range can give me moving average but
I want a moving sum rolling sum and that
rolling sum I'm going to do using the
range so let me
do rolling
two and little bit different function so
that's why I'm using
calculate and I'm going to use net here
but I'll tell you it might not work so
we'll come back to that later and and
I'm going to use function
range the range function as you can see
the arguments are step include current I
want that yes AIS which is rows blanks
reset the first argument step is minus
one means one step only last one step
include current I want yes that is
true what is the next X's which is
nothing but rows but when I give these
arguments and I enter it gives me error
and now to correct that I'm going to
edit this
calculation click down the arrow edit
calculation and I'm going to do
something which you don't do I'm going
to put sum on a major it's a major and
usually we don't put some on a majure we
go ahead and use some X for that but
here I'm doing that and immediately I
get the correct calculation it means you
will be able to use some average Etc on
your measure to get those rolling the
rolling averages and your life has been
made further Easy by this let's
understand these calculation are they
correct or not first row is going to be
the same the second row is going to be
around a million the sum of these two
the third row is going to be the sum of
these two which is around 1.5 million so
let's look at the calculations the
rolling here is same here it is the two
which is last two rows but this is 1
million this is 1.5 million and
similarly it is going to be 1 2 million
it's coming from here these two on the
top and you can relate just for your
reference let me put the arrow
here so now we have got rolling and you
have done little bit different kind of
calculation and let open up a all set of
new calculations which you can do
important function
range so let's go back to the table and
before we we move to the next set of
calculation we need a different kind of
a visual a visual where we at least need
to have couple of access so let's begin
the Journey of few more special
calculations visual calculations where
we are going to get few more detailed or
few more easy calculations just by using
these visual
calculations now to explore further the
visual calculation I have added a new
page because the set of visual
calculation I want to explore now is
going to require me at least to have two
levels so let me create a matrix visual
for
that and in that I'm going to add state
and city on the
row expand
it going to add a major
net and let's start the two calculation
expand and expand all again from the
Home tab new
calculation let's look at the
calculation
expand expand and it require expression
and XIs and basically expand is going to
work at the next level in the context so
the details would come from the next
level and we have to understand that I'm
going to have expand expand all and then
I'm going to show you the differences
and then you will understand how these
calculations are performed so let's give
here average
I'm going to use average function and
I'm using it on a major net this is what
we you can do in the visual level
calculation and the next thing which I
compuls need is rows XIs is rows so
expand and you might not see the
difference but when you scroll down you
will see an average happening at the
state level and simply and at the grand
total level this number doesn't seems
like an average of cities because if you
look at the number of the Cities the
number cannot average to
2 100 K this is actually the average of
state and that's what expand does it is
average of a level
below to explain this further let's also
bring in expand
all and expand all
function also required to argument
expression where I will be doing
average of a major here again I'm doing
an average of a major net and the second
argument is X's which I'm going to use
rows and here if you see you will see a
little bit of difference in the averages
yes it is the averages of City it is the
average from the leaf level it is always
calculating it from the leaf level not
from the next level or the level below
so let me go back to the report and try
to explain you this if you look at these
calculations
look at how the averages is happening
you should be very happy to see these
averages happening at the state level
from the city level no more those
context plate defining what's below I
can easily go ahead and change it and
add another levels or replace these
levels and they will continue to work
but what's the difference in the grand
total here to understand that let me
collapse it I'll drill up one level
right
calculation here remains same but now
you can understand looking at this data
where I have a million here I have a
400k here which are pushing up my
calculations towards
the
232 as an average of the states if you
further go down you do see some bigger
values I can sort on the net so that you
understand these values little bit
better as you can see quite a few big
values are there here
I changeed sorting back to the
state so expand is doing it from the
leaf level to understand it
further let me add one more level first
of all I'm going to expand it and I'm
going to add one more level which is
brand from the
item I have added brand from the item
immediately What You observe that this
number is not changed in the expand but
the expand all number has changed and
why even even if you look at the city
level calculations those calculations
are little bit different they are not
same as what we previously had they were
same when we didn't have the brand if
you go down you will see these are
nothing but the average coming from the
Brand level and even on the level above
it will continue to be from the leaf
level so this expand all is doing the
calculation at the leaf level expand is
doing at the next level and what does
that mean for you is
basically when you see at the city level
it is average of Brands when you see at
the state level it is average of cities
when you look at the grand total level
it is average of states in this manner
these two calculation expand and expand
all works so this will help you to solve
the common problem which we wanted to do
average of sum or sum of averages very
common problem and a very simple
solution in visual calculation
now we are going to look at the two
function which is basically cpse and CPS
I already shown you cpse all ones but
the time has come that we again look
those two things together I'll go to the
new calculation and I'll first do here
collapse and collapse requires
expression x's and N it's basically give
going to give you
the grand total or the parents total is
basically going to collapse it here I
can use net
comma
rows and as you can
see here is collapse is getting its
ground
total but the cities are getting the
total of the
state so to understand that look at the
state total this is my state total the
cities are getting the state total and
if you further go down brands are going
to take the city total collapsing from
the parent to child so I'm getting the
parents calculation at the child
level so that is collapse but if I do
collapse all which is going to bring a
grand total for me so let me add a new
calculation that is colol or I can call
it as GT but let me call GT1 I can
already calculated GT not in this visual
I calculated another visual so I can
have the same name
but just use Now call appol and the call
appol is going to do it all at the final
parent level I can use net
here and I can use
rows and this is nothing but grand total
so now you can easily calculate
percentage of parent percentage of gland
total again use them back into new
calculation or you can edit the same
calculation to get it percentage of
total or percentage of Grant
total cpse and CPS help help you to get
the parent values now go back to the
reports and let's understand these
things so here we have already opened
Arizona and we have open one of the city
of Arizona and their Branch under it if
you see here this is the total of the
city and this is given at the Brand
level now when the Arizona has been
opened Arizona has a total of 471 look
at the city totals all the cities are
getting the Arizona
total when you go to the states like
Arizona you get the total the grand
total which is above one level it
collapse is collapsing one level at a
time collapse all is collaps all the
levels as you can see we are getting the
ground total here for all the rows
irrespective of whatever level we are
at we already have a quick glance at
these calculation but we do would like
to explore the reset functionality I
would like to see how would it work in
case I want to create a running total
which is not going across the leap level
but can it reset itself to ear level so
let me add another page and here I'm
going to
create a line Visual and in this line
visual I'm going to bring in from the
date table
here I'm also going to bring in quarter
and I would also like to bring
in
month and I would like to bring in a
major
net so I'm all set already with my
visual this is my visual and how it's
showcasing the values for last couple of
years and let me do a sort on the AIS so
I have my visual ready and here I want
to have a running calculation let's
first of all add a visual level
calculation from the Home tab and the
new calculation which I'm going to add
using the Home tab new calculation is
running
some
net and let's call it
RT and as you can see the moment I take
an RT RT is going up and if I go back to
the report you can see it's continuously
increasing I don't want to add another
calculation I just want to go ahead and
modify this so I click on this arrow and
use edit calculation and now I would
like to look at the other parameters of
RT so
AIS is definitely row
only blanks and I want to reset I want
to reset at what I want to reset at the
highest
parent so highest parent is here and I
want to reset there let me try that out
and what do you see immediately you see
there is a fall happening in the month
of January let's go back to the report
and understand that as you can see here
there is a reset happening
and this means now I'm getting YTD no
more I'm getting running total RT can I
get it further down to the T number two
which is quarter let's
see as you can see now it is giving me
qtd not YTD every quarter there is a
reset so look at the January look at the
April look at the July look at the
October
let's add more complication let's add
date what
happens now the reset would still happen
at the level two the level two is still
quarter so the reset is happening
quarterly still and we do it and
remember this quarter is in the middle
and that's why knowingly I have added
here two and I added one more level to
Showcase you that the reset is is not
happening month level so there are more
levels available here and it has taken
care this is the second level so 1 2 and
3 is it three or is it one let's go back
edit calculation move the level to three
and let's understand this calculation
once more and now you can see the reset
is happening at the month level the
highest level is one the second highest
is two then three four and keep on going
we are not including the current level
the current level is not part of the
parent
your parent as a year is one quarter is
two and month is three and we have given
three as of now you are seeing MTD in
this particular Trend
chart now you understand how easy these
calculations are and how easily we can
use visual level
calculations to
create those complicated calculations in
a easy manner
we are just working at the visual level
the visual row is the row the visual
level is the level and that makes our
life easy it's just like Excel we are
doing it those who likes the Excel
calculation very much and very find it
easy to do those kind of calculation
this is one step near to that I have
shown you quite a few visual
calculations in detail but there is a
quicker way to do some of these
calculations using templates so where is
those templates available for that let
me add a new page and quickly add a
table visual with item brand and
net visual is ready and now let me add
new calculation from the Home tab new
calculation which is a visual
calculation when you come to the visual
calculation look at this FX
icon when you click on this FX icon you
get the options for some templates so
without doing much of the effort you can
simply get some of the calculation the
only thing which you have to do is just
click on any of these calculation let's
say percentage of grand total and go
ahead and add the required field now I'm
going to replace it with
net the field with the net another field
also with the net and X is with
rows so we immediately get percentage of
total same way I can click on the FX
icon again and use versus first again I
need to replace the field where I can
replace it by one of my major which is
Nat which is also present in the same
visual and I'm getting percentage diff
with first same way you can utilize
running sum moving average percentage of
parent percentage of grand total average
of children's versus previous versus
next versus first and versus last so not
only you can create these calcul ations
by using the functions but you can also
use some of these templates so go ahead
and try those out visual calculations is
not limited to the set of new functions
which has came along with the visual
calculation feature some of the existing
functions can also be used in the visual
calculation while we have lot of
functions which we can use we will be
focusing on few functions which are
released some time back these functions
are index offset Rank and row number
these functions have been released
during December 2022 and April 2023 now
while all these functions may not work
in visual calculations we will try to
see how can we use them in visual
calculation and what all functions are
going to work there so in the upcoming
videos we are going to explore visual
calculations with these additional
functions which are very similar to SQL
Windows function which are index offset
rank and row number those provide us
order by and Partition by I would like
to go ahead and see whether offset index
window Rank and row number can work with
Dynamic rows means xess so we need to
check can these functions work in visual
calculation and if they work can they
work in the visual when we change AIS or
row of the visual will they continue to
work like the other visual calculations
we have learned in the past like
previous next running sum moving average
Etc and why I'm thinking these functions
can work in visual calculation is the
part of the documentation which I'm
going to Showcase you I want to perform
them at visual level without using
explicit table or relation by doing so
we will be able to create more flexible
calculation which can still work even if
we change the AIS so friend with that
objective I would like to first of all
show you the two statements which were
part of the documentation which
motivates me to experiment this so one
of the statement which we have looked
last time is this exis and reset and
order by and Partition by and they are
pairs now the second pair is the one
which is used by the five functions
which we plan to discuss and usually
these functions need explicit columns in
spite of those explicit column can we
make them little more Dynamic the second
thing is when it talk about available
function it do say you can use many
existing Dex function IND visual
calculations let's go ahead and try the
existing Dex function and see whether
they can fit in into the visual
calculation the way we wanted the next
visual calculation which we would like
to explore is using the index function
now I'll leave this page here and we'll
further go to another page and there
again I'm going to create the same
visual what we have started with is
brand and net and the function this time
I would like to use is the index
function so let me click on the visual
and the new calculation and I'm going to
call this function as
index
calculate
net index what does index function
require position relation order by
blanks Partition by match by and reset
so what we are going to do is index is
first index I want the first one based
on the relation which is nothing but
rows what's the next thing I require is
order by and here I'm going to use an
order by explicit order by order by
at
descending and as you can see I got the
first
value I can go ahead and modify this
calculation to have the second value
also so second value as you can see it
is the second
value I can go ahead and use it as a
third value also
so this is the third
topper same way I can use minus here
which is not possible if you would have
used the first and
second so if you would have used the
first function you cannot get all these
but you can get with the offset and I
can make it minus 3 which is actually
going to give me the bottom third
same way I can have another
calculation
index one where I can use
calculate
net
index and here I can use position as one
again and rows and I can leave the order
by to take the default order by and as
you can see it has taken brand one the
first position
because that's the default X's order by
let me go back to the
visualization and as you might have
expected if I change it to category it
still continue to
work so this is my third topper by
net and this is also the
categorical first Total both are same
here that's why the number is coming
same but they are doing two different
calculations
same way I can add both of them together
brand and
category and calculations will still
work so one of them would be on the
bottom
third and one of them would be based on
the
top next visual calculation which we
wanted to explore is using the offet
function so to start journey I will
bring in brand from the item dimension
and I'll also add net mejor I would like
to do visual calculations so how do we
do that from the Home
tab new calculations click on new
calculation and the function which I
plan to use is offset what offset used
to do for us we can go to the previous
position or the next position by
providing an offset just like we have
got previous here now I'm going to use
calculate net which is required with the
offset function you can opt for other
options also now I use the function
offset what does offset function require
it requires
Delta relation order by blanks Partition
by match and
reset let's go ahead and try these out
minus1 is the
Delta then relation and here I'm doing
the first change so instead of using all
selected
item brand or all item brand I'm using
row and remember we are doing a visual
calculation so getting data outside the
visual might not be possible for us the
next thing is order by and because order
by might require a explicit column I'm
as of now leaving that as is and because
it's going to pick up the default order
by or the first AIS I'm expecting it to
sort on brand and as as you can see we
are getting values which are one row
behind the same as previous but what the
difference is going to make in our life
if I use rows instead of explicit table
call or explicit relation call in the
offset function let me go ahead and
change this brand to
category and you can see the calculation
is still
working it is still giving me the
previous row value it means I am no more
dependent on what is there on my Axis so
I got rid of that it makes offset
function much more powerful than what we
have used it
previously now let me change it back to
brand and I would now like to go back
and can I run this offset on net I will
add another new calculation here and I'm
going to call it offset one again
calculate
net
offset minus
one rows in the relation as we have
given previously also and this time I'm
going to use order by and order by is
still looking for a explicit column here
or can we give one and two we have to
experiment so here I'm going to give
explicit name net and if you remember
the there has been a change done after
this function has been released that in
the order by we can use major which is
not part of relation net is not part of
the relation but we can still use it and
how do we want to use it descending
sort so I have pressed
enter but after adding additional
parenthesis and it has worked now to
understand this we need to change the
Sorting of the visual as I've sorted it
on net you can
see that now it is is trailed by
net so I'm getting previous row based on
net
sorting it is not sorted on brand or the
default
access can you do that using
previous try that out and do let me know
in the comments can you do the same
thing using previous function if not
offset is your choice let's go back to
the visual and understand these calcul a
little bit so right now the Sorting is
on net so you can see it Trail by a
row but this function first offs
set how it is working it is actually
still working but it is trailed by the
order of brand if you see brand one and
after that if you go to the brand 10 you
will see that value because the Sorting
order is like
this R 10 11 they're still working but
they're working based on their own
order the interesting thing we are able
to use
offset now I already experiment with the
Partition by which did not work for me
but let me showcase you that can we use
the last reset option so I will use
calculate net
offset minus one
one relation is
rows order by I will leave blanks I will
leave Partition by I will leave match I
will leave and reset can I give highest
parent here I'm giving highest parent
here no order by has been
used doesn't seems to have make any
difference but we need more than one
parent for such a reset isn't it so
let's bring bring in more than one
column
here so let's bring in category also
here and we would like to see the
calculation of this offset versus this
offset is it making any difference so if
you see here it is already sorted on the
brand which is the highest parent and
pose that this is 1 4 so if you look at
the first
calculation the
offset and you look look at the second
calculation of the
offset it same sounds like doing the
same job isn't it now let's add one
more do you see a change
here to do that let's first of all bring
in these two things
together so I have the offset and the
calculation
together and I don't see any difference
let me convert it into a
matrix and now you can
see the moment I have a visual like
Matrix visual where the concept of the
parent Works remember the concept of the
parent has to work and the moment I am
on a matrix visual where we have this
concept of a parent because remember all
three of them were on the same kind of
axis in the table Visual and the concept
of hery is not too much valid in case of
table visual it is more valid in case of
Matrix visual now here you will start
seeing a difference so one of the
difference which you are seeing here
this is the first value if you remember
this is my first value to this
calculation this also get carried
forward to the first calculation we are
still in the brand one when I go to the
brand 10 this is my boundary of the
brand 10 and as you can see inside the
brand 10 it is not getting the value for
for the first
category and to make it easier to
understand let me first remove the
subtotals so let me hide the
subtotals now as I've hidden the
subtotals what do you see between offset
and the calculation what is the
difference between the two so to observe
that look at the brand 10 only inside
the brand 10 inside the brand 10 what
you are seeing here is here I'm getting
both the values but only I'm getting
here one because the reset at the one
has
applied so it means if you're not able
to use Partition by you can still
use reset so you have a reset option
which can work in such scenarios so now
we have understood that how we can use
reset in offset function instead of
Partition by and if you remember we do
have the
flexibility of using numbers here 1 2
and 3
depending on what parent we wanted to
have reset we can also try to experiment
with that but I'm not going to do that
experiment as of now I'll leave it for
you to go ahead and try that out the
next visual calculation we wanted to
explore is using the rank function and
now I would like to use the next
function which is nothing but rank new
calculation rank function I'm going to
use is rank not rank X this is the new
function function came in April 2023
what I want to use is ties which is
nothing but dense and what does dense
means dance means if you are using a
rank and the rank getting duplicated
like 1 one one one then the next rank
would still be two it is not going to
skip the rank so we'll get continuous
rank what is relation
rows do I want to do I order by yes I
would like my ranks based on
net but you know that you can do it
without that
also and the ranks are based on the net
as you can see the moment I sorted it
you are getting your correct
ranks and if you want to do the rank
based on the axis you can add another
visual calculation click here and in the
visual calculation give it rank
one rank function
dance
Rose leave everything else it is based
on the AIS as you can see
here let's go back to the visualization
what's the beauty as you know we can
change
it we can add additional one till the
rank should work based on the
net we have not explicitly called it for
category you explicitly called it for
net so that is what it is going to
continue to work for the net when we do
the visual calculation now the visual
calculations are also limited to visual
so whatever data is not present in the
visual it is not going to do a ranking
for that if you are looking for that all
kind of a scenario you might not be able
to replicate that here so you are able
to use now rank also in the visual level
calculation with the visual level
arguments like row can we do a reset
here
of the rank and for that let me
duplicate this page after
renaming here let me change it to Matrix
Visual and let me add
brand disabl row sub totals and expand
it as of now as you can see the ranks
have changed their order a little bit
because the thing is the moment I sorted
it on net the net is actually sorted not
for the brand and category it is first
sorted on the top brand and then the
second top brand and then inside that
for the category and that is why you see
this rank is not working in a particular
descending order but on a table visual
it is going to work as expected and but
we would like to add a new calculation
here which is nothing
but rank three and here I would like to
use rank
ties is
T relation is
row order by
is
net order by is
net
descending I leave blanks I leave
Partition by I leave match by and I want
reset reset as right now I'll use lest
parent but in this case lowest parent
and highest parent are same so let's try
that out so it is saying reset parameter
cannot be used with the combination of
order by and Partition by because I've
used order by so it is not allowing me
to use the reset so let's go ahead and
edit this
calculation and remove the order by does
it
work yes it does work as we have learned
only the combinations can work exis and
reset order by and Partition by let's go
back to the visual and as you can see
the we are able to partition it when we
are using the default access you can now
observe that the categories are ranked
properly inside each brand so there is a
reset happening for each brand and
categories are ranked inside that so we
know that the combination is there and
that combination is applied on this
visual the row and AIS and order by and
Partition by but we don't never want it
to to call it explicit so but still it
is very good that we are able to change
it for category and brand whenever the
access is changing it's still it is
working so that kind of rank is working
for us the next visual calculation which
we would like to explore is using the
row number function now next thing which
you want to experiment with is the row
number with the row number I would like
to create a table Visual and this time
I'm going to bring in something which is
having data at much granular level so
I'm going to bring in order number
number as non- summarized and I'm going
to bring in sum of quantity I no don't
have any measure here I would like to
sort it on sum of quantity and now I
would like to build a calculation which
is row number I want to give the unique
row number here in this visual to do
that I will start a new visual
calculation and I'll call it
row num one and I'm going to use the
function row number and in this row
number function I'm going to use the
relation which is
row next thing is order by and in this
order
by I'm going to use the something which
is we have in this visual sum of
quantity see I'm not created a measure
here I'm going to use sum of quantity in
this visual calculation which is only
present as a implicit measor not an
explicit mejor defined by me with the
help of that implicit one I'm using it
and as you can see on on the first one
you are able to see the row numbers
getting from 1 2 3 4 let's go back to
the report and you can see that we do
have the row numbers here 1 2 3 4 5 6 7
8 9 10 can we create a multiple
combination and can it still work out so
let's go ahead and add City ID to the
visualization yes it is working but
order number is still giving the
uniqueness and anyway we will we'll
always get a unique combination so let
me add an item ID also
here Item ID and City ID still we are
getting the numbers and let me change
this combination now now it is based on
the combination of item ID and City ID
no more the combination is based on the
unique order number so based on the
unique combinations also it is working
and we have
not changed anything in our function the
row number function like we have not
done any explicit call here without any
explicit call of the relation it is
still working so that is what the
advantage of visual calculation the next
visual calculation which I want to try
out is on the window function and it did
not work out for me so let me showcase
you what I tried out and what did not
work for me but you can go ahead and try
and experiment and let me know in case
you are able to make it work so I went
ahead and added
brand along with net
now I will go ahead and add the new
visual calculation and this time I would
like to use window function I've done
few experiment none of them has given me
the desired success so calculate net
window as you know window require first
to argument the window position
something which we have experimented
with the range so if the window doesn't
work range is there with us to do all
these calculation we can use that
so from what from the minus one
relative position
to zero relative
position and the next thing which I
wanted to use is relation itself which I
was trying to give
rows and I don't want to give any order
by right now and try to experiment with
the window
function and it did not work as I was
expecting it to work because it is
requiring a unique context which I'm not
able to Pro here I went ahead and I said
okay let me edit the calculation let me
see if order by can help
us I used order by
net
DEC and I again committed this
calculation and it did not work out for
me so seems like for the window function
it is not working for me the other thing
which I can do is absolute to Absolute
this is something which
can work for us zero
absolute
to minus1
Absolute let's try from 1 absolute to
minus one absolute and let's see does it
work no it didn't so seems like we will
not be able to use window function as of
now in the visual level calculation
using the
rows as
X's Ive even tried the experiment by
giving here all
selected brand and item
brand so that calculation also doesn't
work for me but this is experiment for
you can you make the window function
work in the visual level calculations go
ahead and try that out but now we know
that we have made quite a few functions
working for
the visual calculation that include
offset index and rank noow number the
four functions out of the five functions
which are very similar to SQL window
function which provides us order by and
Partition by we are able to use in
visual level calculations one of the
most common function which you use very
frequently is rank now can we use rank X
in visual calculat because if we can use
rank X in the visual calculation it will
Pride a lot of flexibility when we are
going to calculate the rank so so I'm
going to go ahead and try out the rankx
function in the visual calculation and
explore how can it help us doing visual
calculation and how our ranks will
become more Dynamic when we use rank X
in the visual calculation so I'm on the
powerb file and here what I'm going to
do is I'm going to add a new page and
inside this new page I'm going to add
brand and
net make it a little bigger and convert
it into a table visual also now here I
want to add a rank so how do we use use
a rankx function and do it but this time
I don't want to use the rankx function
as a measure I want to use it as a
visual calculat let me click on the
visual that's how the visual
calculations are enabled go to the Home
tab and there I'm going to click on the
calculation new calculation is the
option to do that I'll click on the new
calculation visual calculations have
been opened now here I'm going to write
down a new calculation which is Rank and
rank I'm going to use the rank X
function rank X if you remember in the
rank X the first thing which which we
need to give is the table and that is
where I'm going to use rows expression
is basically our column where we are
going to thought third item usually we
keep empty fourth is order which is by
default descending and dies is the fifth
one which is by default so let me start
giving that so here I'm going to use
rows so I'm not going to use any like
all selected table column I'm the second
one is my net measure which I wanted to
use and third one is the values column
which I'm going to leave empty by
default it is descending but I can give
descending here and the dense because
skip is default one dense here as my
visual is already sorted on net you can
see it is showing you the rank one for
the maximum amount of net what we have
now question which you may ask is how
it's making a difference you would have
done this rank X function all selected
it would have behaved in the same manner
isn't it so let's do one thing let's try
to see if you already have a rank
function I do have a rank net which is
also on all selected item net descending
dance very similar major also I have so
I have a visual calculation I have a
major and you can see this is visual
calculation and this so while I have
both and both are giving the same but
let's we go ahead go to brand and click
on this arrow and I change it to
category the moment I change it to
category the thing which you will notice
here basically this rank got adjusted
but this is the one which is not getting
adjusted now why it is not getting
adjusted because it is talking about
item brand brand is not in the context
and that is where it all brand is not
get listed but here we are talking about
rows so here it is changed from Brand to
category and now it is able to adjust
the second case which we can test out is
basically let's convert this into a
matrix now I have category and inside
that let bring in brand inside the
category I have brand I added the brand
and I'm going to expand this Matrix
visual let's see what do you see a
difference here now here what is
happening here is this brand is 1 to n
so each brand is getting rank within the
category so there's a partitioning which
is happening but here when you see these
things this is not getting same way
partition there are different ranks and
if you see there is a one two here and
then there's a three here so remember
category 4 Brand two is at number three
and category two brand 8 and brand N9
now to understand this let me convert
this back into a table visual when I
convert it into table Visual and I sort
it on net which is right now the Sorting
you can see that it is actually sorting
it on the combination so in the second
level the Brand level when I is seeing
in The Matrix visual while the rank is
partitioning it by category this one is
not getting it partitioned now we we
have like you know rules how do we
partition and not partition in different
functions like we have rank function
where we can give Partition by and there
we can deal with but in this scenario
especially with the rank X function as
you can see now when I'm adding two it
is taking both of them as rows and you
know it is giving the rank based on that
now this is one of the challenge which
you had in the past like because if I
keep on adding how many ranks I'm going
to create and this is where you know a
visual calculations help helps us a lot
that my rank is independent of what I
have in the calculation I simply using
row and it can change based on the
visual so I don't have to specify a
particular column I get that
Independence that I can change my column
inside my visual or I can change my
group buys inside my visual and my rank
can adjust to that while in major
calculation that's not possible because
they are tied to a particular column of
field and they're going to behave in a
manner they should behave when this
column is tightly attached to that
particular measure so this is the real
benefit and now you would have
understood that you know what benefit
each one of them has now sometime I
would like to have mejor because I have
that kind of a scenario which is
basically the rank should get partition
as soon as I add something else and that
is what the case is and sometime you
know I have to explain that again and
again in many videos I've done that the
moment you add additional stuff the rank
is inside that additional column which
is not participating in the rank or get
partitioned by that other column because
we are limited by what column we have
put it into the rank X function in a
measure but that's not the case with the
visual calculation visual calculation
has been enounced in October 2024 so
let's have a look at what all
enhancements has been done into the
visual calculations in October 2024
there are few enhancements which has
been rolled out on the visual
calculation and one of them is using the
field parameters along with visual
calculations which we are going to
explore today so let's jump on the
release note look at what are the new
features which has been given for visual
calculations and we will explore them
onto the powerbi desktop I'm here on the
powerbi October 2024 feature summary and
in this feature summary one of the
feature which you will find under the
content reporting is visual calculation
update foreview once we click on that we
go down it talks about combo charts are
Now supported in theual visual
calculation now the combo chart are
supported so you can now use visual
calculation in combo chart such as line
and cluster column chart just you could
in the other chart types here is an
example of visual calculation reporting
moving average for 34s so one example
has been given for combo visual where we
can see the moving average has been
added on the line three quarters moving
average has been used on the line of
combo visual line clustered column chart
and the another feature which we are
looking forward mainly for today is
field parameters are Now supported this
month we have enabled the visual
calculation with field parameters you
can add visual calculation to the visual
containing field parameter or vice versa
field parameters can be used to quickly
switch around what's shown in the visual
for example you can create field
parameter to enable your users to decide
which attribute Dimension to show for
example field parameter called Product
attribute can be used to determine the
percentage of grand total you have the
percentage of grand total which is using
rows and you can switch the AIS using
the field parameter and it will continue
to
work another update is faster ways to
add templated visual calculation you can
now add templated visual calculation
with fewer clicks by clicking on the
button as part of new visual calculation
previously to get the visual template
you have to go to the visual calculation
and there you have the option to choose
the template from the calculation now
the template option is available
directly under the new visual
calculation under the Home tab and you
can use it from there you can also start
new calculation without template using
custom option so these are some of the
updates let me jump onto a power VA file
and showcase you these updates so I'm
here on the powerbi file this is the
file where I have already done some
visual calculations in the past also I'm
using the dark mode which is recently
released so you can see that my uis of
the powerbi are in the dark mode first
of all I'm going to add a new page in to
this UI and I will take you through the
features one by one first of all let me
add a table visual so I'm going to add a
table Visual and inside the table visual
let me bring in brand and the major net
I have a visual brand with the net and
let's say I want to add a visual
calculation how do we add a visual
calculation I to go to the Home
tab and inside the Home tab I have new
visual calculation and as you can see
the new feature which is already been
discussed that you have the access to
the template quickly you don't have to
go to the calculation and choose one of
them so let's choose percentage of grand
total as one of the calculations so
using that template we have come here
directly you can see we have percentage
of ground total and I can use net as my
major collapse all function is going to
give me the grand total net again and
xes is rows that remains Dynamic now I
got my percentage of total now you are
not seeing percentage and I'll tell you
the new feature which will enable you to
see it in the percentage format also
that came very recently few months back
let's go back now we would like to
format this percentage of total click on
this go to the format I opened the
format now inside the format go to
properties and inside the properties
data format choose the percentage of
grand total the data type is decimal the
format is percentage once you choose the
percentage format in the decimal data
type you will be able to see in the
percentage
format we have saw one more feature and
that the feature is it is supported on
combo visual so let's make this chart as
line cluster and let's try to move this
percentage of grand total from the
column of Y AIS line yis visual is now
showing percentage of total along with
the net what we can do now is we can
sort this visual on brand and observe it
again let's sort this on
brand we can observe the visual again
now we can see net as well as percentage
of grand total together now to make it
little more interesting where you can
differentiate what line is doing this is
what bar is doing let's convert this
line into percentage of running total
line so let's edit this calculation and
how do we get running total so we have
another template for running total but
we do have a function running sum on the
top I'll take running sum X is as rows
so let's divide running Su by total and
let me go back the report and let me
sort this on the brand
ascending and as you can see this is now
showing me running percentage of total
we are able to explore the second
feature also let me convert this visual
into table so we have a calculation net
we have a percentage of grand total
which is actually not percentage of
grand total which is percentage of
running total and I would also like to
add one more function offset function or
index function I'll add one more
calculation here that calculation is
last so what is there in the last so I
can use offset function calculate we
have previous here but I would like to
use offset here net comma offset minus
one relation is
rows order by is net D actually I wanted
to have specific order by and that is
why I used this offset function for last
row when I go back to the report now
this function for that I need the
Sorting on the net if you see if I do
the Sorting on the net it's giving me
the last two let's do one thing let's
duplicate this visual CU they both need
different sorting and now from the first
visual I can remove the last row from
the second visual I can remove percent
of running total sort first visual on
brand and second visual on net the
reason for this change is because one of
my visual calculation is working on the
axis another one is working on the major
sorting now what I would like to do is I
would like to make both these visuals
Dynamic by using field parameters so I
would like to change the a/ row and see
that the calculation is still holds true
for that I would now like to create
field parameter that is going to change
my categorical variable or access to do
that I will we go to modeling new
parameters Fields I'm going to create
access let me call it as access one and
here I'm going to select from item table
brand category subcategory from
geography table I'll select state and
city I will leave this option add slicer
to this page as is I would like it to
add and then I can now click on create
to create my field parameter field
parameter will add a table with a
special syntax which enables us to use
the field parameters this I have
explained in the past also now we got
the field parameter we also got a slicer
we would like to utilize it let me first
of all adjust it little
bit now we have adjusted our visual but
our visual are not following any access
isn't
it let's go ahead and change the visuals
to use access I go to the first Visual
and I will go to access drag XIs one and
remove brand I will do the same in the
second visual I'll click on the second
visual drag access and remove brand
visual is sorted on AIS or categorical
variable and second one is sorted on the
measor now let's change the access both
the visuals should change if I change
the access one I change it to category
as you can observe in the first visual
we are still getting the correct
percentage of running total it is still
rolling up to the
100% so you can observe in the second
vual that we are still getting the
correct prior with the help of field
parameters XIs has changed or the row
has changed or the categorical variable
has changed but still we are able to see
the last row value based on visual
calculation which we don't have to
change let's look at State when we look
at the state calculation again you can
see my percentage of running total is
still working as well as you can observe
that the prior calculations are still
working fine are still getting the
previous row value in spite of change in
the categorical variable /xs look at how
simple and quick calculation we have
done and those quick calculations have
not only worked with what categorical
variables or what axis or what row we
had in that visual even when we changed
it it continue to work and the last item
before we conclude for today let's have
more than one and does it continue to
work as you can see calculations are
still working and this is the beauty of
visual calculation and we can say visual
calculations are better to together with
calculation group so why don't you go
ahead and try this out so now let's dig
deep into the conditional formatting
details for doing that what I've done is
I've already created few set of visuals
where we are going to experiment with
I'll also tell you where you will not be
able to do the conditional formatting so
what do I mean by conditional formatting
so in every visual when you go to the
visual format you have a color option
now the color option under the bars in
case of bar visual in case of column
visual column in case of Matrix and
table visual you will have the colors
under same cell element various
conditional formatting options are
available table Visual and the Matrix
visual have a lot of option they have on
background font then they have datab
bars icons web URL lot of options now
let's start with first of all the
conditional formatting on a table visual
so conditional formatting has few
limitations like in case of the Matrix
visual when you click on the Matrix
Visual and you want to do conditional
formatting you go to series you will not
see anything for the rows and the
columns me you can't do conditional
formatting on R feeds and column feeds
on table visual on contary you will be
able to do almost on everything on the
visuals like bar and Etc you cannot do
it if you have more than one major or if
you have a legend in these kind of
visual the the sign is basically you see
this FX button and the moment you stop
seeing this FX button you do any action
and you don't see this FX button it
means you will not be able to do the
conditional formatting so let's say if I
drag category on the legend you will no
more see that okay so it means the
option is not available you can see the
color color for each series but you
can't do a conditional form similarly
when you use more than one major also
you will not get that option you don't
have the options for the conditional
formatting the FX is not there in case
you have a pi visual me create
one you don't have conditional
formatting options you go to the slice
you don't have the option same way if
you create a line visual you again don't
have a conditional formatting option
under the line so there is no option
under the color and at few places we
will be able to get this even without
having those options at other places
we'll not be able to get it so let's
start with the conditional formatting
and first of all I'll I'll quickly
explain you the two conditional
formattings options to you on the table
visual so in the table visual I can do
conditional formatting on any of these
but let me bring in a major so margin
major I want to do background
conditional formatting of form or data
bar or icon all are available here I can
go to the background conditional
formatting I click it you immediately
start seeing because when you click on
FX You Realize by default the gradient
conditional formatting already been
picked up in the gradient conditional
formatting you can use a major and it is
not necessary that when I use margin I
need to use margin measure I can use any
other measure then I can also I specify
when what should I do for empty values
don't summarize treat it as zero or
specific color so this option is
available in the gradient condition form
I can use the minimum maximum color
gradient and I can choose it now if it
is a reverse like discount it should be
reverse the minimum value is good
actually I can have a middle color if I
want and once I use the middle color uh
it will give me a try color gradient and
I can use any color in that manner I can
actually build in my gradient
conditional formatting it can apply to
values and total and total only right
now I'm keeping it only as values and
I'll apply gradient conditional format
the other options here are rule base and
value base which we will explore in a
while you are now getting gradient
conditional formatting the same option
would be available in all the visuals
now here in the table visual we have
more options like we have option for
background we have option for uh font
color datab bars Etc but this font and
background color so this option would be
available in in the color option of most
of the visuals now cable visual is the
only visual where you can actually
create a row conditional formatting
because if you can repeat this I can go
ahead and you know I I chose my margin
percentage I can go and repeat this on
discount percentage repeat this on net
repeat this on brand so I can actually
create a complete row conditional for
same conditions I have to repeat the
same logic I have to repeat and it is
not necessary then when I'm I'm doing
conditional formatting on Brown it is
not necessary when I do conditional
formatting on discount percentage that I
have to use discount percentage I can
still go ahead and use margin percentage
and I can still use the same logic so I
will have similar kind of colors and if
you repeat this you will get a color
draw then comes the font formatting
let's complete the different kind of
formatting and then we will go to the
rules and the field value in the font
condition formatting you actually color
the font so let me color the font this
time based on the rule values only value
gr total I want to Value usually what
happens value rule based conditional
formatting let me apply it on based on
the I'm applying it on net but I will
apply based on the margin percentage I
should be knowing what are what is the
values I have because values will change
based on the group wise now even though
I'm doing it on percentage column and
this is something you should remember
that even though I'm going to do it on
percentage kind of a column it need to
be done on number everything should be
number and it it should be between 0 and
1 so these are basically. 13.13 .14 so I
have 10% 11% 12% 133% 14% that's the max
range I have so what I can do I can say
okay it need to be red when it is
between 0
to12 okay everything should be number
now because it is strictly less than
here what I can do is I can go ahead and
say greater than and equal to again
point
.12 and then not percentage I want a
number and from there strictly less than
.14 percentage 14 percentage and this
color I can keep it as
orange so again everything is number not
percentage now let's add one more rule
again we have given the last condition
which is basically till
14% 12% to 14% strictly less than 14 so
now it could be greater than 14% .14 and
it could go till one or it can whatever
number you wanted to give the best way
is to give it at one and here like if
you have negative values the first value
you can go ahead and change to let's say
minus1 or - 100 whatever you want minus
one could also do the job so what are my
conditions now my condition is from
negative to positive 12% number
everything it's going to be red from 12
to 14% it's going to be yellow and from
14% now let's change this from 14% to
anything which is till 100% should be
green so we use green color so now this
is the color what we want let's click on
okay and see how does it apply and as
you can see it has applied the color now
the first color is not visible let's
make it little bit bold so that we can
see it so we can make the values bold if
we want like this to look at the color
so these are the condition now we have
applied and now based on that condition
the colors are coming I'm reverting back
the Bold right as of now
so this is Rule based conditional
formatting the rule which you have to
remember percentage means allocation
based and number means you have the
exact value which you are planed to use
even if your column is a percentage
column you need to use number because
you are giving a range you are giving
the exact number range and for that you
need to use numbers not percentage so we
are done with the font conditional
formatting now what is this data bar so
basically what happens when you click on
the data bar I'll keep it on net it will
add a bar The Filling of the bar if you
go to the FX the option you have is the
lowest value highest value which you can
give you can get the values or by
default it will decide by itself you
have for positive bar and negative bar
and X is color now there's no
conditional formatting further on it you
can choose left to right or right to
left also you can choose it will start
from the other direction also there's
one option if you want to only want to
show the bar you don't want to show the
number you can choose that in that case
you will only see the
bar so these kind of stuff you can do
now comes the icon conditional
formatting in case of Icon conditional
formatting you can click on FX and there
are always a rule again when you are
using the percentage base please
remember this is
allocation so allocation of net value
from 0 to 30.3% 33 to 67% and 67 to 100%
and that is why I was warning you that
we are not going to use the percentage
when it is actually percentage so here
you can have based on the percentage and
you can use different kind of icons
and you can say
okay I got conditional formatting I can
also do that on the brand one not that I
can't do it in brand I can also go ahead
and do the icon conditional formatting
on brand I can choose a major here or
actually we have a support for a text
now we can say is brand one is brand 2
is brand three and we can choose
different one okay let's choose the four
one so brand one is this so we can do on
the based on the text also brand one
brand 2 brand three brand four brand
five only we have five so will'll get
five there's no option to add here but
we can add more rules and more icons so
add let's say is brand six so we can add
more rules but let's stick with these
things and as you can see whatever
Brands we have given some icons we are
getting those icons now other than that
what you can do is you can create a
unique a measure and then can you you
can do conditional formatting on that
that is another way to of doing a
conditional form what is this web URL
condition formatting for the web URL you
need to have the URL basically so let's
see do we have a URL I actually have the
image URL but I'm trying to use that so
if you use the URL then it will start
showing you underline here you want to
use the underline so if you do the web
URL conditional formatting it will start
showing you the URLs underly URL so if
you want the underlying there is option
for URL icon and what happens when do
you use that for that let me take one
example let me open a new page and in
that page let me bring in brand and
brand URL and now let me go to this icon
value value for a moment I'll change
this image URL as web URL and now you
can see the URL here now I'll go to the
brand URL apply setting and in the icon
I'll click on the values and the moment
I switch this on you start seeing this
icon small icon and this is how you use
this URL icon so you want to show that
small icon when you have actually the
URL field you can do that but as of I'll
for a longer run I'll just revert it
I'll just shown you how to use that this
is actually a image URL and the moment I
make it image URL it will actually turn
back and then you can go ahead and play
with the size of the image you can go
ahead and say okay I want to have 250
you can have that much image one the
limit of 150 has been removed as of now
you can have much higher size of image
so now back to the conditional
formatting so now we have understand
different kind of conditional formatting
now I would like to use the Third Kind
of conditional formatting which is the
value based conditional formatting which
is the major based conditional
formatting which we can use in the field
value so let's say I want to color these
things based on category or brand say
okay we'll go rule based conditional
formatting also these days allowed text
values isn't you can do that what I want
is a little bit different so I want to
create two majors here brand color and
there is a reason why I'm creating so I
create a new major from the table tool
so let me create first major brand color
I will also create one more major which
is category color so let me again click
on new major this time from the Major
Tool and this major I already created
and let me explain you this major and
same way I've created the brand major so
I'm also creating one category color and
now let me explain you both have created
in the same manner by using the switch
true instead of switch true I could have
used switch Max of item category or Max
of or selected item category so when it
is category one I'm giving one color
when it is category two I'm giving
another color when it is category three
I'm giving blue let's say category four
yellow and category five orange so in
this manner I'm getting colors and
there's other instead of other I can
make it let's say
black there's no other category so I can
keep it anything I want it should return
color otherwise it will give error now
this is a color Mage it returns a color
you can also use the Hax code the six
digigit Hax code if you remember with
the hash sign so if you it may be hash
ff00 something like that you can also
use so right now I'm using the names now
what I'll do here is I'll go to this
brand by net visual I go to bar and
inside the FX I can go ahead I can use
the field value I can go to the major
and I can search for the brand major I
can search for brand color I can do a
condition now you can see each brand has
got its own color Okay so the color is
basically by brand and this helps us
when we want to keep the consistent
color so we'll go to this category
Visual and apply the category color to
keep it
consistent now in The Matrix visual I
have option I can have the color by
brand or by category so let's use by
brand here so we want to do the
background color
FX field value by brand
color and that's where your max is going
to play a role now
so let me use brand
color and as you can see other than the
not null values we getting color in that
particular
row and as of now the conditional
formatting value based conditional
formatting don't color the blank values
you might have to handle the value
itself to get the color now we will use
the other one and this category one now
you will ask how would you use it into
the I visual there's no option I'll tell
you the way first of all I'll convert it
into cluster column
chart or bar chart I go to the FX I go
to field value I can do the gradient
conditional formatting as well as rule
base but the easier for me as of now to
explain to you is field value I use the
color I created the colors I'm going to
convert it back remember the colors take
the values because I'm going to do this
now on this visual which is actually a
column visual which where the
conditional formatting is available so
we done it on a column visual convert it
into a pi now we are doing it on a
column visual again field value we
clicked on FX came here field value
color category
color now if you see the two visuals
have the same
colors what happens when we filter
something so let me bring a page level
filter brand one till category 4 and
category one retained those colors till
they are red and yellow and this is the
thing which we can do using this one we
we can have colors which retained it but
only challenge is across multiple
measures or with Legends it will not
work also we can't color The Matrix head
and row but how do we color line we
can't color line only we can show
additional colored marker and this is
other than the marker color switch so
what you can do here is again convert it
into a cluster column
bar go to the effects do whatever color
you want I want to do field conditional
formatting I can search the color major
and
colors and then I convert it back to the
line I get these
markers colored markers and these are
not same as the marker which we have in
the line so if I enable the marker now
you will say no no it is looking like
this let me showcase you let me make
them bigger you can see the background
the bigger markers are coming back so
they are not same as the marker what we
have they are different separate markers
but yes definitely you can show theor
you can't color the line but you can
show the colors so you've seen the
advantage of field conditional
formatting now when we have the field
conditional formatting let's say if I
need to do it in table visual I can
quickly replicate it in all the columns
and you know the same kind of
conditional formatting and I can get row
colors now I have done it on the
category and brand but it doesn't mean I
can't do it on measure I can do it on
measure and we'll take up that example
now before I do that I'll go to this cd2
and I knowingly created this because now
the colors are going to give a different
meanings to this visualization so if you
remember I suggested you instead of
using Legends use to access when I use
twox I don't have two colors now we have
because we are going to going to go to
the conditional formatting and from the
conditional formatting now this is the
first one is brand I'm going to use
field value and the brand
colors brand color I'm going to
use and you can see the different brands
have different color now you could have
used the category colors and different
categories could have colors and you can
use other table visually where you can
only have the categories now where from
where I will get the legend definitely
you can't get a legend here what you can
do is create a very small cable
Visual and this is brand isn't it so
I'll put brand
here and you can put the colors to the
brand background or font whatever you
want I'll put the background color we
value
brand and you can say these are the
color of the brand so there a color of
brand one brand 10 on all those now
definitely you make it as thin as
possible you can hide the total all
those things you can
do now in the second visual I'm going to
use it on category it's not going to
make much difference but I just wanted
to show you how different is going to
look like
you have the category color I could have
used brand color here and each brand
could have the same color so you can
create these kind of visuals using field
value conditional formatting also rules
support the name colors you can use do
do you can also use rule based
conditional formatting that supports the
color that also support text now now the
final which I going to do here is based
on a measure and for that I would like
to have a scatter visual I'm going to
create the scatter visual again so I'll
add a scatter Visual and this scatter
visual I will have on the x-axis
discount
percentage on the y axis I'm going to
have margin
percentage I will use city as my values
remember I can't use
Legend I got so many dots I'm going to
switch the
x-axis I will invert I want the lowest
values on the this side because I want
to create a fourth quadrant here which
is low discount High margin which is
green how to create the quadrant so go
down you have the lines reference
lines and here you going to add constant
lines not the average
line constant line xaxis constant line
and in the XX is constant line you have
this FX and in the FX use the measor
what you
want it switches then go to the add line
again use the type as Y axis constant
line and in the y axis constant line in
the FX now choose margin
percentage you have to use the major
because major is automatically going to
take care of the grand total because it
is a divided by B when you have the
grand total is going to do and when I
use the constant lines or when I use
these reference line they are calculated
at the grand total level now what I need
here this see these are the average line
our ba is given those this quadrant is
high margin low discount green but how
do I get this middle margin I need to
now this is still high margin but High
discount blue low discounts are red and
yellow low discount low
margin now for low margins I have two if
the discount is low I can keep it orange
if it is low margin High discount I will
keep it red so I need a measure for that
I'm going to create this measure and
I'll tell you how I'm so let me create a
new measure and I already have a script
for
that color scatter first of all for that
we need gr to so using calculate
discount percent for Discount all
selected is going to give me the grand
total or the average overall average
same way overall margin calculate margin
all selected why I'm using all selected
so because if you apply the filter still
it find the middle number with those
filters then what we are saying is if
margin is greater than the average
margin and discount is less than the
discount average discount overall
discount than green margin is still
greater but discount is also greater
blue for both lower margins if the
discount is low then yellow if the
discount is greater then red this is
what I wanted these are the four color I
wanted I have a major now which can do
that so I use switch through and created
this measure now I would like to use
this
measure so I'll go to the
markers inside the marker color I will
use FX and inside the FX field value
search for the color color skatter okay
and you can see the four colors green
blue yellow or orange if you want it and
red the four colors have come we have
got the four quadrants of different
different colors so conditional
formatting is a powerful tool to
communicate the message the message
could be done in terms of value or it
could be done in terms of categorical
values to enhance the visual experience
you can use whenever you require to make
impactful visualization so let's
understand visual interactions to
understand visual interactions what I've
done is I actually created created a few
visuals which include table visual Pi
visual map Visual and bar visual to
explain you what are the different kind
of interactions which happens between
the visuals I also added a slicer so
that you can understand it better let me
close rest of the panes and give you a
space on the page so that page has a
larger canvas available now I'll click
on any of the visual and then I can go
to format and enable the edit
interaction edit interactions allows you
to change the interactions between the
visuals what do you mean by interactions
first of of all between the visual so
let's say if I click on any of these
slices all these visuals are changing
okay why these visuals are changing
these visuals are changing because they
are interacting with this slicer if you
go to this brand visual it will only
show one value because only one value is
applicable because of its interaction
with the second brand slicer now the
moment I erase it you will again see the
values are removed now if you click on
any of the visual let's say if I click
on Category 2 you will see a different
kind of impact which is happening here
now I'll explain what is happening on
the P later but you see this is
highlight which is happening in the
brand visual actually there's a
highlight also happening in the pi
visual but because it's on the same
level only category 2 is getting
highlight now I click back and I click
on any of the brands in the P visual
what do you see here the T table visual
is getting filtered but in the pi visual
there is a highlight which is happening
again this visual is basically getting
filtered the map visual now if I go and
click again it will deselect and here if
I click on any of the city you will see
again highlight at few places and filter
at other places but is slicer getting
impacted no so visual is not changing
the slicer unless the joint is
bidirectional so visual is not going to
filter the slicer and we don't see any
interaction side with the filter pane so
even if I click on any of the filters we
don't see any interaction changes so
filters can also filter the data inside
the visualization but the interactions
with the filter cannot be changed while
it can be changed for other what do I
mean by interactions can be changed so
now I will click on let's say one slicer
and I go to edit interaction and I click
on that immediately you start seeing
these signs these signs means filter and
don't filter so whenever I click on the
slicer all other visuals we get this
filter and not filter because the
interaction with the slicer is either
you going to filter with that slicer or
you're not going to filter with that
slicer only two type of interactions can
happen every chart is a driver chart and
all other chart will become the driven
chart when you click on the edit
interactions and you try to edit the
interaction so every chart will become a
driver for edit interaction so if I
click on on this visual you will see the
Dr are you know now asking for whether
they want to get filtered or not and at
some of the visuals you are seeing three
options not two options the third
additional options which you're seeing
is the Highlight option so what happens
if this is a brand if I click on this I
can disable its interaction with this
chart I can disable its interaction with
this chart so now when I click on brand
one you see that the other visuals are
getting updated but these two visual
where I switch off the interaction they
are not interacting so let me erase this
now let me select brand 10 here in this
visual when I select brand 10 and if I
go here the brand 10 is getting filtered
into the other visual why because from
this visual when I click on this visual
the interactions are on for this one so
when this chart is driver chart there is
interaction which is still happening the
filter is which is still highlighted so
each slicer or each visual can filter
other visual unless stopped default
behavior is filter or highlight in which
case it would be default highlight I'll
let you know mean know let me erase it
let me click on any of the filter You
Don't See see any interaction happening
with the filter so see the Highlight is
still on the slicer so filter can we
cannot change interaction with the
filter we can only change with the
slicers filter is not part of
interactions now let's go ahead when I
click on category here you see that
there is a highlight which is
happening now why does this highlight is
happening because there's a method
available when I click on this chart
there is a method which is available as
highlight if I change it to filter and
if I click on any of these categories
you will see see now the visual is
getting filtered so the behavior is
filter same way when I've clicked here I
can go ahead and change this Behavior
also to filter so now this chart will
only show the category which is clicked
on this table visual so there are chart
where we can show The Fill Behavior
which include the bar chart pie chart
tree map these visuals can show The Fill
Behavior but chart like table cannot
show fill Behavior so let's say if I go
to the pie chart and when I filter the
default table can only get filtered or I
can disable filter or I can filter
there's no filpa so we cannot do it so
using the edit interaction under the
format you can change the behavior let's
quickly take one use case the use case
of dividing a page into two parts so
what I'm going to do is I'm going to
copy these two visuals from here and
I'll take them to a new page let me
paste them let me see don't syn also I
copied three let me make it two or let
me keep them three only so I got these
three visuals and let me instead of two
I got three I put them on one side now
what's happening if I select a br
everything is interacting now let me say
CR a contrl c contr v i get two sets of
visuals now even if I select brand here
it is filtering across now for this use
case let me go ahead and insert a shape
and the shape I plan to insert is a line
let me make this line bigger and thinner
and I I'll change its orientation now
let me enable the formatting and inside
the format I'll go to rotation and let
me rotate it by 90° so I got a full line
a y drawn a line here I want the left
side to only work with the left side I
want right side to work with the right
side they should not interact with each
other then how do I change this Behavior
so click on this visual now edit
interaction is already available from
the format pan we have enabled it last
time if it is not enabled go to the
format pan and enable it now disable its
interaction with all the three visuals
let me make it a little bit smaller
because it's overlapping now what would
happen here when I select brand one it
is going to filter the first two visual
not the visual on the other side so you
can see this visual is filtering this
visual is filtering but these two
visuals are not interacting and that is
the reason why they are not getting
filtered but it will not stop here I
have to do the same thing for here and
have to repeat it for all the visual so
I click on this I disable its
interaction with these visual now I
click on this Visual and I disable its
interaction with the other side I click
on the bar Visual and disable bar
visuals interaction with the right hand
side visual on the right hand side I
click on the p and I disable it
interaction with left hand side visual
click on the bar and disable its
interaction with left hand side visual
now let's check it out so if I filter
brand one here only right side is
getting filtered so I filtered on right
side right side is getting filtered when
I click on category and let me change
the impact to highlight let me click on
the pi on the left and change the impact
to highlight see left hand side
interacts with left hand side right hand
side interact with right hand side there
is no interaction between left and right
in this manner you can change the
interaction and create different kind of
interactions Behavior where you can
decide which visual is going to filter
which other
visual let's learn the feature bookmarks
bookmarks is a feature which allows you
to create snapshots and using those
snapshot you can create more interactive
power VI Pages now what happens is there
is a facility to show and hide the
visuals so if you go to view and enable
the selection pan which is right now
enabled here so you to enable the
selection Pane and for every
visualization you will get option to
show and hide and you can capture that
stage because sometime the visual is
showing sometime the visual is not
showing so you can capture such kind of
situations and using such kind of
situations you can actually create a
really interactive page what are the
uses there are many uses before field
parameter came in place this was also
used for switch AIS so basically if a
visual is on brand and I want to change
it to category so bookmarks along with
Buttons used to help in that then
sometime it helps us in creating a b
basically a slicer pan so what happens
you can have a slicer pan and that
slicer pen can show and hide so let's
take these two examples of bookmarks and
try to implement that and understand the
bookmark feature in detail what I'm
going to do is I have another page where
I have this two slices let me bring them
in now these slices are not interacting
with each other right now I'll say don't
sync so let me change the column on the
second slicer so on the second slicer
instead of the brand let me use category
so I have a visual which is on brand I
have a visual which is on category brand
and category and let me bring in one
visual also I bring a visual here I put
this visual here below now these visuals
are filtering this one let's check that
out round one
category interaction is happening now
sometime for the space requirement what
you want is I want to hide this region
or you can have it on left hand side so
how do I do that so let me first of all
create a pain kind of impression by
using a shape I put a
rectangle so let me remove the color and
everything from this one shape and Style
no fill I think we are fine with the
boundaries let me bring in the category
on top of it so let's go to the format
Tab and let's send this backward so we
will say send to back so this is now on
when to the back one
now this is here and this should again
let's bring this forward bring in front
this is also bring in front control or
shift press and right click group so all
these visuals are group so we have one
group so what can happen is I can hide
this this is hidden now this is one
stage where this is hidden this is one
of the stage I want to show so this is
the one stage which I would like to
capture and in that stage I would like
to use the bookmark
pan and this is the bookmark pain which
is already
enabled and using the pan switcher let
me bring it
in so now this stage I add a bookmark
and this bookmark let me call this
bookmark as
hide enable and what is this stage when
it is showing this this is show stage so
there are two stages hide and show so in
this stage it is hidden this stage it is
show but what happens if I select
category one I removed all the
categories in the show stage I go to
hide stage do you see this a category
still filtered so what has happened when
I created this bookmark actually the
data got saved though the filter is not
appearing so if I go to show I uncheck
it but if I go to hide and I come back
to show you again see the category one
because the category one was sa so let
me erase this category one let me erase
the filter and update this bookmark now
let me hide this so I unhide it first of
all erase erase this one now I hide it
right click and update now both the
bookmarks are saved without values but
let's say if I put Category 2 here let
me put Category 5 here and after keep
creating Category 5 in the show view I
go to the Hidden View now if you
remember I cleaned up and saved it again
now it is is still showing me everything
so can I pass the values because when I
show and hide this menu I still want the
values to pass so for that we right
click here and we say disable data we
say don't save the data same thing on
the show we go and we say don't save the
data now we go to the show go to the
category and put Category 2 come to the
hide view still Category 2 come back
show now let's choose a category where
we have lesser values like Category 5
this is the show View and we go to the
hide view we still get the category 5 it
means even if I hide my menu I will be
able to do that now what I'm going to do
is I'm I need a button here isn't it so
I give a small button for show or hide
so I want to hide or show then I need to
give a button so I will go here in the
insert and I go to button so let me add
a very small button here blank button
I'm plan to add let me move it on the
right hand side I'll go to the button
style enable the text and give it as a
name show whenever I click on this the
menu should show now I go further down I
go to the actions in the action in The
Bookmark I'll first of all type action
type is bookmark what action it should
show it should show so whenever I click
on this it should show right now it's
already showing okay so we need to do a
little bit of adjustment and then I put
another button and I put hide button on
top of the menu itself and I need to
group it so let me group this together
so merge I merge it with the group one
so when I go to height the button itself
is hidden with that if I go to the show
it is there now but this should be
renamed as hide and what action it
should do if I click it should take me
to The Bookmark hide so now let's do a
go ahead and click on this how do we
click a button in the powerb desktop
control click hide control click show
shows can we apply a filter yes category
two and we go and apply brand and filter
yes brand and filter has been applied
let's hide it till the same thing is
there click on show same thing is there
okay so we are in short this using the
not saving the data with the bookmarks
so these are the stages which are saved
and we are able to create slicer menu
which we can show under it you can
create it on left hand side sometime
what happens is when you create such
kind of menu you do adjust your visual
so BBE the visual is see this big and
when it is shown on the visual is this
big so this kind of adjustment also we
do so with this kind of adjustment you
can try that out now the Second Use case
which actually I wanted to go ahead and
do is I want to create a impression of
access slicer using the bookmarks and
button so we have used bookmarks and
button and created the menu show hide
menu now what we want is now we want the
behavior of access slicer now access
slicer bookmarks cannot work in a slicer
so what I'm going to do here is
basically I will go ahead and create
buttons for those and going to create an
impression of exess slicer and when you
learn field parameter you will find that
the new method is really easy the field
parameter method is really easy while
bookmarks can use for both access slicer
as well as major slicer for major slicer
traditionally also there are many ways
available including the calculation
group now calculation group has very
recently become part of the Microsoft
powerbi desktop without going to tabular
editor or external tool you can create
it so calculation group is another easy
way to explore that so calculation group
was previously there and major slicers
we can create with the help of
independent table that was also
available previous viously so unless a
very specific case used to come we never
used to use bookmark for major slices
but definitely for the exess slicer we
were using it so let's quickly take an
example in this example again what I
want here is basically let me bring in
this visual by category to this new page
let me duplicate this contrl C control V
now there are two visuals and what I'm
going to do here is the second visual
I'll change the second visual to Brand
so what you want is if you click on if
you click on a button you want brand if
you click on a button you want category
so if I hide this is only category
Visual and if I unhide and this this is
a brand visual so when category is
hidden it is brand Visual and when brand
is hidden we can have category visual
these are two stages and I want to cover
these two stages in two buttons so I
create a hidden brand and I can add a
bookmark and what will this bookmark be
known as this bookmark will be known as
category bookmark then I unhide the
brand and hide category what this
bookmark will be known as because brand
is visible I'll add a bookmark and that
bookmark double click and rename will be
known as brand bookmark you you can have
few more versions and you can have this
so category brand now I can ship but
definitely there would be no bookmark
pain for the users so how you're going
to enable that we are going to bring
button insert buttons there are already
bookmark button which I doesn't like
there is a navigator also bookmark
Navigator so I'll add two buttons blank
button but what typically I do is I add
the first button and then I start
editing the style and then I can easily
edit it to the second button so what is
the button Style I want I want text
first of all so let me enable and let me
call this text as brand so brand is
there and then I go to the action and
inside the action I enable the action
what action I need I need a type action
is bookmark and I want to show brand so
whenever I click on this button I want
to show brand then contrl ctrol V now
this second button is going to do the
same stuff but here the action I want is
basically category and this means that
it need to be renamed so I will go to
the button text and rename it as
category so we have brand as well as
category buttons now control and click
on brand it is brand control and click
on category it is category what is
happening the AIS is switching or the
lay legent is switching now if this
would have been the bar visuals it had
been excess switching these are P
visuals Legend shifting you want to
change the visualization type one time
it is bar one time it is table one time
it is pi again bookmarks you can use so
many such use cases can be done with the
bookmarks these are very common use
cases which you can do and bookmark can
in increase the interactivity of the
page and it can create a different
impression of the page it looks like
much more professionally handled page
when you use bookmarks
so now let's learn what is calculation
groups calculation group is a power ba
feature which will allows you to apply
common calculation across multiple
measures so you don't have to create
measure for each and everything so this
is particularly useful to simplify the
measor management but the feature allows
you more than that so if you simply
combine the majors you can create a
major slicer if you use selected value
and you then create a major let's say
for MTD qtd YTD you can create time
intelligence measure by just using
selected measures and then I don't need
to create separate measures for Cog MTD
Cog YTD Cog qtd next net YTD net qtd all
those measures I don't need to create so
what we are going to do is we going to
take an example of calculation group
where we are going to create two
calculation groups one which will
provide us time intelligence using
selected major which can take a measure
which is in the visual and give the
value for that as MTD qtd YTD and the
second calculation Group which we are
going to create its item would be same
as what we have net gross cogs margin
Etc but the objective of that would be
to give you a dynamic slicer both will
give slicer that would be equivalent of
major slicer we have also seen in field
parameters so to do that you have to go
to the model view and inside the model
view very recently in the data pane on
the right hand side we have been given
this option model semantic model and
using this semantic model you can now
create calculation groups right now if
you click you don't have any calculation
group so we are going to create a
calculation group the first calculation
group to convert measures to slicer and
second calculation group for time
intelligence so click on the calculation
groups New calculation group and this
will give you a message this change will
discourage implicit measures now you
can't use implicit measures implicit
measure means when I use a quantity
column and I say it is sum okay this
kind of stuff would be discouraged from
now and that is why you might have seen
every time I'm using something I'm
creating a major this is the something
which I know at some stage I'll need
calculation group and I'm doing it we
just discussing two use cases of
calculation group but it's much more
powerful feature it can be used at
multiple places so one of the things
which we can also use is basically to
use this in small multiples to shift the
measures that is also one of the uses so
now let me create yes this will change
this will discourage implicit measure
yes let it
discourage our first calculation group
has been
created and we are directly landed onto
a calculation item okay so we can come
here we can call it as major slicer we
I renamed it now I go to the calculation
item and there is already one item which
is created with selected Imes right now
I don't want to use selected Mees what I
simply want is I would like to create
gross gross as gross one item I added
and I'm quickly going to add few more
items
now net
net one more new calculation item
so left hand side is a name right hand
side is a definition cogs
cogs three is sufficient and this will
act as a major slicer so we can use it
as a major slicer it is just the
collection of measure now we again click
on the calculation group and it there is
a button for new calculation group we
are going to use
it new calculation group
and this would be our TI okay time
intelligence calculation group so
calculation item calculation group and
name it as TI time intelligence
calculation
group and now let's go to the
calculation item and rename it as MTD
left hand side rename and right hand
side look at the calculation
calculate selected major dates
MTD date of date this is how we created
time intelligence measures in the past
also dates MTD date of
date let's close MTD let's close
calculate we got an MTD
measure in the same manner we are going
to create two more qtd and YTD in this
calculation group now I'm using selected
major so I would need a major inside my
visualization to supply to this selected
major to get MTD qtd and YTD let's
create qtd and YTD click on the
calculation items on the right hand side
you will get this new calculation option
click on that and create
more this time we will use copy paste
and couple of
changes qtd
qtd using dates
qtd let's add one more
so we got YTD we got qtd and we got MTD
so now let's go ahead and use this so
I'll go to report View and inside the
report view I'll create a new page and
first of all I'll tell you how do I
create a major slicer so I can see this
calculation group I'll bring this
calculation item to this is showing me
three names I will change this to
slicer now I will go ahead and create
create a matrix
Visual and inside the Matrix
visual what I'm going to do here is I
will bring brand on the
row brand on the row calculation group
on the
column it will not show anything because
it need at least one major I'll go to
the majors on the
top and bring in net it doesn't mean
it's going to give only net it's going
to give me all three now I can check and
uncheck or do multi select using control
and get the measures so measor slicer
this is what you have
seen and this is same thing we are able
to achieve using calculation group now
now what we are going to do here is now
let's bring in the second one TI time
intelligence one again first of all
using the time intelligence one let me
create a
slicer so we got a slicer now here what
I'm going to do is I'm going to add this
calculation group on the
row
PI right now you don't see any
difference and I'll expand it the moment
I expand it you don't see a value and we
know time intelligence we use MTD qtd
YTD so unless there is some month where
we have the data we not get it so let's
bring in a slicer for month
here so I got a slicer and here add data
on the
date
table month
year and let's go and select a month
year where we have
data I'll select
July so as you can see I got MTD value
qtd same because in the month of July
MTD and QT saved and YTD different now
if I go to June I will get different MTD
qtd YTD and for all three of them I'm
able to get it see I have not calculated
it for cogs gross and net I just
calculated it for the selected measure
and there are three selected measure
which are coming inside this
visualization and it is able to use
those in this manner we are able to
utilize calculation groups to reduce the
measures now think about cogs gross net
three into three nine Majors I needed I
actually did not create nine Majors
three Majors were already created which
I utilized inside one calculation group
and in that manner I've done it you can
do some of those calculations under
calculation group items you don't need
to do all the calculations here as
measures so this is one example now we
will use one more
example of calculation
group where I want to use the small
multiple so if I have this brand wise
net
visual me create a brand wise net
visual what would happen here is you can
usually create a small multiple using
let's say category but I want want to
have the small multiple using measures
can I have it no because measures you
can't drag a measure here and how do we
create multiple measures can I use a
field parameter here let's try out so we
go to measor slicer we put major slicer
here it takes the major slicer does
nothing now let's drag the calculation
Group which we have created the
calculation group major slicer we put it
into the small
multiple and the moment I do it you see
cogs gross and Nets three different
visuals coming in place now let me go to
the small
multiples how many rows you need I will
need three rows how many columns only
one
column each of them is on the different
different rows cogs net gross do I need
the titles yes I need the
titles but I can go to the Y
AIS and disable this shared y axis
so now the Y AIS would be able to adjust
itself so I removed the shared y- axis
so that these values can adjust inside
the each Visual
and I will remove the y-axis title now
cogs gross and net three different
measures we are able to use using small
multiples small multiples is a feature
which allows you to have multiple visual
using the categorical variables but
calculation groups allows you to convert
measures into Dimension means into
categorical variables and then you can
use it into the places where you could
have actually used only categorical
variables and one of the example is
small multiples so these are the few use
cases of calculation groups you can
experiment with more such use cases now
let's look at the feature field
parameters field parameter features
allows you for to create access slicer
as well as major slicer before May 2022
for Access slicer we used to use
bookmarks or we used to unpivot the
table and use to create slicers for
major slicers we were using independent
table and a major and then we were also
using calculation groups now because of
availability of all these options I am
not showing you how could have you
created a major Slicer in the older
fashion but let's start this journey of
field parameters with access slicer I
added a new page and in this new page P
I would like to change the access of my
visual and let me bring in one visual
using copy paste so I have this brand
visual I'm bringing it brand and net
visual is there I I'm bringing it what's
happening right now it is displaying
brand I can go to Home tab and change
the type to column showing brand can I
change it to category go here and you
know bring the visualization pan and
from there you change it to category but
this is something which you're not going
to enable for for the end users so the
how end users will make it how do we
make this visual more Dynamic so field
parameters allows you to create Dynamic
visuals By changes both A's as well as
measures how do we create field
parameters and how do we use it so let's
start with the first thing which is XIs
slicer under the modeling T we have this
new parameter previously we only used to
have numeric parameter something we have
used in top end to make it Dynamic and
there are many other use cases the
second option which came in May 2022 is
fields and this is what we call field
par parameters let's click on that so
what your variable adjust to Fields name
is access I want to create access slicer
so I'm giving a name as access now when
you drag the fields remember when you
are dragging categorical field only drag
categorical when you are dragging Majors
only drag Majors don't mix and match
that's not the purpose here brand
category subcategory and I can drag from
across Dimension state and city also I
can
drag add slicer to the page I can click
on this if you don't add then you have
to go to to the data Pane and from there
you have to add it so let me add it and
showcase you what is happening here what
this does is it creates a new table and
this table is a little bit different
type of what you have seen till now so
if you go here on the pane you will see
one table name as XIs and this table has
this kind of a code which is previously
not known to us brand name of item brand
category name of item category
subcategory name of item subcategory
state name of geography state city name
of geography City there is order which
is 0 1 2 3 4 You Can Change you can even
change the names like brand and category
subcategory names you can also we got a
slicer now if I click on this slicer
it's not going to do any change to your
visual because we have to use it so now
what we are going to do is in this
visual net by brand first of all build
my visual and here instead of brand now
I will go ahead and use access access
and the moment I do it you still see it
on brand sorting has Chang that is
another thing you might have observed
I'll tell you what to do with this
sorting now What's Happening Here is
basically now if I click on the brand it
is brand if I click on category it is
category if I click on subcategory it is
sub category if I click on state it is
state if I click on City it is City it's
changing when I leave everything then I
get this expand icon the expand icon
will allow us to now expand drill next
icon to go to the drill Next Level drill
next icon drill down icon all these
icons are available because now there
are five levels which are available so
if I expand it you will be able to see
those levels okay but if you just wanted
to keep it for the purpose of slicing
the axis you can make this as single
select if you have multi select you can
also select more than one so now this is
access slicer one of the problem with
the access slicer and for which you need
a solution so if you go and sort it on
brand let's say now it is sorted on
brand okay brand 110 but if I go to
category it's not sorted on category if
I go to City it's not sorted on City
okay a a s l it started sorting on the
major so to overcome this what you have
to do is you have to take help of a
major and this is the trick to make it
work so axis sorting is not happening
properly because axis is changing the
moment axis changes it lose the sorting
and it start sorting it on major so if I
go to category then I go to category
then I again go here and I say sort on
category so now you go to Brand it is
sorted on brand you go to category it is
sorted again on net it is losing how do
we correct it let create one major so
the new major which I'm creating now
what happens is first of all we need to
understand how do we get the selected
value because getting the selected value
of field parameter is not easy so we
will use sort AIS but in the S AIS first
of all I'll let you know the way to find
out what is selected so where underscore
cell equals to selected value X's XIs if
I use this and if I try to return this
and let's use it on the visual card
visual does it work we go here and we
try to bring it it actually doesn't work
now to overcome what we do is in instead
of AIS we use AIS sort selected value
and then what I'm going to do is Max x
filter XIs XIs do order equals to
selected value then give me AIS access
and now let me return this so now you're
getting category I'm only talking about
the case when you do single select if
you do multi select we have to do few
little different things but getting this
category is not sufficient for sorting
so what we have to do is to create a
major switch switch uncore cell so what
happens if the cell is brand you will
say Max of item brand remember item
brand is already on AIS what happen when
brand is brand I take a Max of it what
value it is going to give me brand only
that brand brand one is brand one brand
10 is brand 10 brand two is brand two
all those and in this manner I need to
add all of them so brand category
subcategories state and city for all of
them we need to add so let me quickly go
ahead and modify these
category so what I have done here is
brand I Max of item brand categories Max
of item category subcategories Max of
item subcategory State Max of geography
State I have created a major like this
now I'll tell you one trick go to this
visual go to its visualization pane
scroll down and in the tool tip go and
add this major sort AIS now when you go
to three dots it will show you one more
option to sort that is sort access click
on that okay now you go to Brand
category subcategory state city all are
descending sort if you might have
observed let's go here click on this
visualization sort it is descending
right now ascending sorted on a state
sorted on a subcategories 1 10 11 12 13
14 16 and then we go 2 3 4 5 6 7 8 this
is how it sorts category 1 2 3 4 5 brand
110 11 12 13 no if you want to change
this sort like you'll say no no this
brand doesn't see seems one we do have a
brand ID let's do that okay and
subcategory also we have ID isn't it
category our five but we can use ID now
let's try what happens if I do this so
I'm now using the numeric equivalent
measure of that one so categories 1 2 3
4 5 subcategories now you see 1 2 3 4 5
6 7 8 9 10 11 12 13 14 brand is 1 2 3 4
5 6 7 8 9 10 11 12 13 14 so what has
happened is we have not even set as sort
column here itself we are able to do
this and now this sort AIS doesn't
matter because it's going to give some
value which we are returning something
else so what's happening here is we are
able to sort it correct access sort is
it done we also talked about that it
gives the flexibility to change the
major and how do we change the major
major is still fixed it is only net not
coded major here for that we will create
another slicer using the field parameter
and that we will call as major slicer so
we will again go to modeling new
parameter fields and in the field this
time we will call it major Majors is a
reserve or major table I already used so
I'm going to call it as a major slicer
when you do that please make sure that
you are only taking measures don't try
to bring in columns which are not
summarized it's not going to work
great what happen sometime you say oh I
take the quantity column here now
quantity column is not summarized not
aggregated is going to create a problem
here that's why I'm only taking measures
here I've taken all the measures add
slicer to this page yes I want to add a
slicer click on create again a new table
would be created with the name as major
slicer and a slicer would also be added
to the
page we got a table major slicer with a
similar kind of code again if you now
want to rename some of these you can
rename into this table you can call it
net sales if you like press enter it
will become net sales but still keep on
working on that now again this is not
going to change anything unless we go
ahead and add it into the y axis we go
to this visual we bring in the pan the
build visual Pane and there we now go to
the major slicer and from major slicer
we bring in the field immediately the
things have shifted margin s taes by
City cogs cogs by City discount by City
And one of the things which you might
have observed when you were actually
using that major slicer the traditional
major slicer with disconnected table it
has a lot of problem with changing the
different type of measure now it's a
percentage measure immediately it
adjusted to the percentage exis normal
measure I go to brand category all X is
getting adjusted pretty quickly on
different kind of data types so now you
have fully flexible visual which you can
change based on the slices you want to
add two you want to you can add two or
add three you can do that or if you want
you can have all of them you can make it
as a single select you can create two of
them and have one of them online and one
of them as bars you can create combo
visuals so in this manner field
parameters allows you to create flexible
visuals and these visuals can be really
interactive where you can change the AES
as well as measures so add this
flexibility as per the need in your
powerbi reports and dashboard to get a
really Dynamic experience now let's look
at the feature drill through so drill
through is the feature which allows you
to drill from one page to another page
by passing the filters drill through
feature is also controlled for what you
can pass from one page to another page
means you have the controls and also you
have to decide on which Fields you will
allow drill through so let's go to one
of the page here and let me copy this
visual to start
with on this the page one let me call it
as main M1 and let me create another
page where I have the visual I'll again
go back to this particular one and I'll
bring in D1 which is detailed one this
visual now this visual I copy paste the
category wise net visual is there I'm
copy pasting this Visual and converting
it into table Visual and in this visual
I will also add
brand okay so when we drill from the
first visual we will be able to know
what brand we have filtered also let me
select both these visuals and create a
page D2 and also paste these visuals and
in this D2
page let me have three
visuals and in this visual I'm going to
add one more stuff let me add State
here so when I go to the first page let
me add a bar visual here
also on the first page category separate
bar is if I right click on any of the
visual you don't see any option for
drill
through if I click here I also don't see
any option okay now go to the D1 page
and inside D1 page at the page level
go to the page information and Page type
you can use drill through the moment you
enable the drill through now this is the
newer version of power Behavior it
happens like this if you are on a little
bit older version actually under the
visualization pan itself you will get
drill through option you can use that
now how you want to drill through I say
okay only I want to drill through from
Brand so whenever there is a brand
available I want to drill through so I
go to item and I pick up brand I can
pick up category or whatever I want now
how does it going to make a difference
if I go to page M1 or any of the pages
for the sake wherever I have brand if I
right click I will now see option drill
through D1 but if I go to the category I
still don't see now as of now you can't
restrict this feature mean once you
enable you can't say it's enabled for
this page and that page so now what
happens is you are in any of the page
let's say whenever you have brand and
this happens for single value because
what ideally you can do with the control
you can select two values and then you
can right click then you don't see it
with the control and click we can select
more than one value if you have only one
value selected like brand 13 is selected
and you say drill through D1 the values
get filtered and you can see only brand
13 here you can see the categories
related to Brand 1 if you further right
click here though there is a brand we
can't further drill from category which
we can't drill okay when you drill
through you will automatically get this
button back button on the page where you
have drill through and you can click on
this control click on the desktop stop
click on the powerbi service you can
come back once you come back you can go
to another brand and again you say drill
through and D1 that will get filtered
and again come back so we are able to
drill through now from D1 to D2 I again
further want it to drill on the D2 I
click on the empty space on my
page I go and make it s Del through and
this time what I want here basically is
let people drill from category Whenever
there is a category in the visual people
can drill
so what would happen from M1 now from
this visual I can drill through to D2
now here in the drill one I only get D1
I go to D1 now in D1 all both the
visuals have category so either from
here I can drill through now here it is
not showing me brand 8 but brand 8 is
there and if I go to D2 now brand 8 do
got filtered out so brand 8 is also
filtered it means anything which is
filtered by some mean will carry on that
filter to the subsequent page of the
drill through now let's go back here and
we can further go back on the first page
I'll go to D2 now from where these
filters
are you go to the filter pane you will
start seeing these filters on this page
you can remove these filters if you want
so these are the Dr through filter which
are now sometime you don't want to pass
everything so now what I want is when
I'm coming to this page I don't want to
pass the brand filter then how can I do
that so you disable this keep all
filters now before everything getting
passed whether the brand was there on
the drill through list or not everything
whether it was available in the list or
not it was getting passed the moment you
switch off this PE all filters now only
you can drill through using category and
category will only pass all other values
will not pass so you have to add
everything you want to pass you want to
pass City you have to add it you want to
pass State you have to add it you want
to pass brand even you have to add it
now how different it is now let's go to
D1 and here we say brand it and Category
2 now right click here drill through
D2 what happens here only category 2 has
been drilled through there is no drill
of brand8 in this manner you can control
what you want to drill through also so
you can do multi-level drill you can
control what you want to drill through
drill through feature helps you for
creating Pages which can take
information from other page there is
something known as drill through button
also so you can go and insert a
button you can name it go to button
style in the text you can name it as
let's say drill now when you go down in
the action you can use action to drill
through and important thing to note not
only you can select a page let's say I
can select a page you can have FX
function what does this FX function does
it depending on a condition you can
change a page what does that mean so let
first test this button and then let me
tell you how to use that conditional one
so click on one of them you will get
this button enabled if you control click
to it is disabled only one of them then
control click on the button on desktop
and click on the powerbi service will
take you to the drill page so we said
okay go to page D1 what I want is for
some of them I want to go to D1 and some
of them I want to go to D2 can I do that
yes I should be able to do
that now if I right now go there is a
restriction D1 and D2 on the brand and
category okay so now let me go ahead and
do one thing let me create a
major so I go ahead and create a major
and in this one what I'll do is
let's use it like this if is
filtered item
brand then we go to
D1 as we go to
D2 so if item brand is filtered then I
go to D1 else I go to D2 if it is
filtered or not we want to check that
let's let me call this major as drill
page let me go to the button
and in the drill
FX I'll call the drill page
button I'm saying I'm going to decide
the
page so text is going to show us D1 or
D2 and in the action
also in the action I'm again going to
choose a page drill page D1 and
D2 so I click on the brand the brand I
filter on brand single brand is filtered
now brand is filtered if I click control
click I go to D1 press the back button
come back I click on category it is D2
control
click this time I went to D2 so I
checked if it is filtered then I go to
one page if it is not filtered I go to
another
page okay come back now the first time
it is showing D2 because we what we have
said in our major drill major is
that if it is not filter show2 we can
further improve upon this one you can
say
switch
true is filtered item Rand then
D1 is filtered comma is filtered item
category
D2
else
select value you say display select
value now it is saying select value let
make it a little bit bigger so what we
have done here is in the text next we
have used the same mejor so which is
giving the message and in the action
also we have used the same one right now
there is no action anyway it is disabled
now I when I click it got enabled and I
can go to
D2 come back so in this manner you can
use Dynamic drill through button you can
control the text of the button you can
also control where it should land you in
this manner you will be able to use
drill through and you will also be able
to control Pages where it goes and the
values it pass now let's discuss tool
tip page or report tool tip page so what
happens typically whenever you go to any
visualization let me go to a page where
I already have some visualization you
get this default tool if I go here I
also get a default tool you can add few
measures here but sometime what happens
is you want more interactive kind of
stuff what I want is basically this
category Pi should be shown when on the
tool tip of this BR how do I do that so
for that what you need is basically a
tool tip page so add a new p page click
on the empty space and in that one you
can go and Define a page as tool tip
page when you define a tool tip Page by
default it takes the tool tip page size
and it you get a small page so if you go
to the canvas setting you will see it's
a tool tie page you can change the size
if required as of now I'll keep of the
same size what we can do is we can add a
visual here so I can add let's say Pi
visual we give the complete space you
can add whatever kind of visual you want
now in this visual let me add few items
so build a visual enable build a visual
so I'll go to Legend add item
category and then I'll go to values
major base net okay we can do some font
adjustment and all those as per
requirement so we have little bit
smaller or something or I can go ahead
and on this Visual and I can say I don't
need a title I can go to Legend and text
size and I can reduce the text size okay
and similarly I can go to detail labels
and values and I can reduce the size
okay because on tool tip we will be
having a smaller one so we can reduce
that so we able to adjust this visual
now if I go to a page let say I go back
to that first page in this page how do I
bring that tool tip page our tool tip
page was enabled so click on this Visual
and when you get to the format go to the
properties tool tip should have been
enabled so enable the tool tip and here
by default it is report page and auto
here now you can select a tool tip page
once you select a tool tip page on this
particular visual you will be able to
see that and look this is changing based
on the information okay now if you go
here there is no change if you go here
there's no change because we are not use
the tool tip page there now we have used
tool tip page here so it will give me
tool tip now let's go to another page I
go to a page where in this visual I have
both brand and category let me clear
this off so now what happens in this
page let me on this table visual I'll
add tool tip I'll switch it on page page
one is a tool tip page now it will only
give category because the visual is on
category and the category is in the
visual it will pass that I don't want to
pass category one thing I'll do is first
of all let me call it as tp1 tool tip 1
so I rename it I go to this page and I
want to do certain changes so very
carefully I need to click on the page
properties the canva property and here I
have option keep all filters I uncheck
this now what should get pass to this
page all things which you want to pass I
don't want to pass category here I can
give all other things which it should
pass so I can give a brand here I can
even give a city and state whatever I
want to pass so State Should pass City
should pass all the things which I want
on this page to pass I can give here so
these things will pass to this page now
if I go to this D1 page and I click here
you will see multiple categories the
brand is getting pass but the category
is not getting passed very good now
let's test it on other things I go to
this interaction page I do have this
page where I have cities I go to the
properties I go to report page and I
enable tp1 for this and you can see with
the cities the categories are changing
it means the cities the are getting
passed it's getting passed and brand is
getting passed but category is not
getting passed in this manner you can
create a tool tip page now while adding
the tool tip page you should be really
careful the moment you go on the
something it will start showing this
tool tip so sometime the user go and
want to read a value it will create a
hindrance so very carefully add tool tip
page because it suddenly pops up a big
value and user may not be able to pay
attention to the detail when the mouse
is moving so as per the need add it on
the required visuals let's quickly have
a look at the AI visuals so I'll add a
new page and inside that new page I will
add the first AI visual which I want to
discuss with this Q influencer now in
the key influencer I need analyze and
then I need to explain it by something
things so so in the ly let me add
brand and in the explain by let me add a
major margin
percentage it goes ahead and analyze and
the filter is there on the brand one
right now so margin percentage goes up
by 0 2% the likelihood brand being brand
one increase by this is the likelihood
the brand one going inre you can change
it to let's say brand 10 and it's going
to generate the ideas for that same way
you can also add discount percentage
here
net and it will keep on generating the
key influencers for those this is one of
the AI visuals now the next AI visual is
decomposition tree now decomposition
tree expands you to do the root cause
kind of analysis and here what you can
do in the analyze by let's add a few
things in the analyze by let me add
major I would like to add let's say net
sales and then in the explain by let me
add item brand category subcategory
geography City now here what I can do is
I can go to this plus button and I can
say you know I want to see the high
values or the low values or I just
wanted to see Next Step by let's say
category it shows me how my category
division is there then I want to say
okay how my categories are doing like
say by high
values okay I get the subcategories the
next level in the next one I can say
okay what is the low values of the brand
inside that one the these are the low
values of the brand in this one so in
this manner you can go ahead and you
know keep on expanding and find out more
details so let's try this let me
duplicate this page remove this let me
try to use M percentage measure here so
I'm going to create M percentage measure
here I'm going to Simply use M
percentage which is nothing but divide
MTD net minus lmtd comma denom minator
which is again
lmtd we make it as a percentage column
let me use this measure here now
definitely M need a month filter it
can't work without that because I don't
have data in the last available month so
I'll put a filter for the month here
here let's use December so now the
change percentage are coming so category
so we are having negative here so we now
would like to analyze with this negative
how this is performing where it is there
again we see it's doing
good let me remove these levels me
remove this so Category 3 is doing
negative let me go to the low values of
Category 3 where I'm losing so I'm
losing in these this is a 100% I'm
losing okay so let me go ahead and check
the category one remove the this one let
me see in category one where I'm losing
very small what are the low values uh
here I'm losing
93% so what I'm losing
here okay so these are the brand where
I'm losing so in this brand what are the
subcategories where I'm what I have so
only one subcategory now we know M we
are not doing good so what is that
causing this m not doing good so you can
do a root cause analysis using this
visualization next visual which I want
to explain is Q&A visual really
interesting visual it creates questions
for you and you can ask so I can and it
is already suggested one of the things
which I wanted to create top customers
by net I say okay give me top customers
by net sales it has given me top 10
customers by net sales and the good
thing which you can do with this visual
is not only you can ask the questions
you can actually go ahead and convert
this into a regular visual so here you
have a sign here turn this into a
standard visual it creates a visual for
me I add another one and I'll ask
another question or top five Brands by
margin percent top five Brands by margin
person and we got it we can convert this
into a visual there are few settings
here person SN names review question
teach Q&A and suggest you can go and
Define additional synonymes like net I
wanted to call sales I would definitely
go ahead and somewhere mentioned that
net is nothing but sales whenever I use
sales use net so here if I go down you
can see it's already the net is
basically sales so sales is used for net
already it's no name if not I can add it
so in this manner you can modify the
setup for Q&A and can make it more
effective and you can leave it for your
end users to ask questions and get the
answers other than that there are a
couple of interesting visuals like Power
app in case you are using power app you
will be able to embed and you will be
able to write back you will be able to
start a power automate flow using the
power automate for that you need to have
power automate you can also embed page
native report inside your powerbi
desktop report or powerbi report and
also publish it and then you will have
the page inated report also part of this
so these are the various kind of
visualization other than the normal
visualization which are aailable which
you can use you want to use a custom
visual you can click on the get more
visual make sure you are signed in and
your organization has allowed that and
one of the very common custom visual
which I use is the text filter again it
is from Microsoft Corporation and let's
add it now the good thing with this
visual is the text visual is that this
visual you can search let me add to it
so basically I don't need to go and say
New York I can search new it's filtered
now what all cities have come let me
showcase you using another visual where
I create a table visual so these are the
three cities which I got or where I use
or all these cities I use or so this is
the way you can use text there are other
few visuals and one of the interesting
visual which you can also try out is
basically play access Visual so play
access Visual is another good one which
you can try out let me add this this is
by some third party not from Microsoft
but what you can do is you can put this
play access Visual I can put month year
on
this and in this visual I would also
like to have a visual level filter that
whatever month year I want I only want
those month here where net is not blank
only those months and what I'm going to
do here is I'm going to create a visual
on which I will use margin
percentage on brands or I can use
cities so my Brand's margin percentage
will keep on moving in a direction let's
see let me play this how does it behave
and the reason for this behavior is
right now the interaction is highlight
and let me change this interaction I
click on the visual and I go to format
edit interaction and I change it to
filter one more thing I do is I go to
the column and under the FX I go and
write down a rule the margin which is
basically from minus one number to zero
as a number it should be red plus
greater than
zero number to one as a number should be
green it will give you a little bit more
variety right now everything is green
now let's play
around every month is showing the brand
how they're behaving and you can start
seeing the negative values now so how
each brand is changing now you can see
that so in this manner you can use the
AI visuals and custom visual as per your
requirement let's learn about the card
visual so let me go to a new page and in
this this page I will add this new card
visual now this new card visual came
very recently in 2023 it has feature of
card visual along with some Advanced
feature like you can add images you can
have multiple Majors inside the card
visual so let me make it little bit
bigger and I will start adding content
to it so let me add net gross discount
and calls on that so I can add these
different kind of measures here so this
is one simple way now it has lots of
formatting properties let me click on
the format and inside that size and
style is common title is if you want to
add a title you can add as usual we have
seen we have title and then we have
subtitle then we have divider I don't
think we require a title unless we want
to give it I don't want to give some
Title Here let me disable that shape yes
the it is rectangular shape I like
rounded rectangular shape so I'll do
that but yes I can change the rounding
or I can use some custom style custom
style means I need to decide what I want
for each and every corner I don't want
to do that but I just want to decrease
it so I will decrease the rounded then
comes the layout what kind of layout you
need single row multi row grid and
sometime you might not want single rows
so you can have a grid and once you give
grid it can ask you how many rows and
columns I need I can let's say two rows
and two columns just right now for the
testing purpose let's do that then the
next is go to call out values inside the
call out values if you switch it off you
will stop seeing the values so and on
which series you want to take a decision
you can take a decision of font color
the conditional formatting all those
decisions can be taken on based on the
values you can want to align them
centrally right align left align display
unit Auto or none you want to display
completely then you can say none then
decimal places I can set up to zero I
don't want any decimal places if there
is no value then what should I show na
or blank I can do that then comes the
label which is on I can switch off the
label and I will not see any names there
right now I'm seeing the names so this
one name I want to make these name
Bolder I can do that I can want to do
conditional formatting on the name I can
do I want them above or below so the
names could be below like this it was
above previously I likeed this one if
they are bigger you can use text strap
and align Baseline if you want to align
to the Baseline on and off then comes
the reference label reference label for
what net for cogs or what let's try to
add a reference label for net we have
lot of reference label so we have MTD
net lmtd net let me add net MTD net so
first of all let me add a slicer here on
the page for month here let me select a
particular month now I have certain set
of values now let me go ahead and add
some reference labels so for net I
wanted to add a reference label let me
try to add MTD major and as you can see
I'm able to see the MTD I can enable the
title so that I see the MTD value now I
can also enable details details will
give me one more major I can have here
let me add m m measure I can add here in
the details now to add this measure what
you have to do basically is here when
you have added this MTD you have to go
ahead and select this MTD and then when
you come down you will be able to add a
major a without that you can't add
unless you selected now this value is
something which is you know you might
not be able to format it here so what I
need to do is I need to create a
formatted major for this one so I'll go
and create a new major I'll call it m
icon and let me first do without icon so
format M percentage comma hash do 0% I
want that and let me use M icon now here
if you want to use M then you can go and
use the display basically none so now
let me replace this with M icon so I'm
able to see the percentage change here
and or I can change it to percent so it
is showing the percentage I was using
the one decimal place so it was showing
that much so this is now 9% now in case
you need some icon so then what we can
do is we can use certain uni a
characters let me bring in a uni a
character for you and modify this mejor
I had a previous code which I want to
bring it here I want to append icon so
so I'll use M perent to string now
there's a change percentage for which I
have identified few uni a I'm going to
use this m percentage there so if it is
greater than zero I'm using a particular
kind of uni if it is less than zero I'm
using a particular kind of enar so let
me see what happens now I'll commit this
UniCare gives us small small icons which
we can use it's giving me these kind of
icons now I want to change the color
also isn't it based on my M chain
percentage I can go to the font color
and I can click on FX and I'll use the
rule based color I'll use M percentage
if M percentage is less than minimum to
less than zero it's red plus M
percentage is greater than Zer or equal
to Zer and less than Max we can write
down Max here then I want to show it a
green here and let's click on okay it's
red because it's coming negative I can
change few months and check it out here
it is positive negative so you can see
and similar manner I can add a few more
additional details here to make it
little bit more attractive one thing
which I observed if your reference
labels are giving blank value the
properties might go away seems like uh
there is a null value handling issue now
let's go further down you have option
for background on or off so if you don't
need the background color you can do it
and then there are certain properties
which may be applicable at the all level
so if you select all the labels and you
come down then you have few properties
which you can basically it's always on
that but you can use the transparency
stylish solid width is 1 pixel ignore
padding all those things you can you can
change then background you can change
the background color you don't want the
gray color you can have some other color
now one more thing you can do is you can
add images now again images are
individual to the major so for
particular major you can have add a
image you can browse the image and can
add it or you can go ahead and add a
image from the URL so let me add a image
from the desktop
I have some images let me just take one
of these image nothing represent new but
let's take one of them this is a real
big image so fit we can decide let's say
use a fit or we'll use a fill and then
we can go and decide the
size I use 150 pixel side but it's
reducing my font and giving the problem
so let me use 100 100 pixel is perfectly
suitable so same way for others I can
also give icons so this new card visual
offers you lot of flexibility lot of
options which you can use and make it
really engaging and using this you can
add lot of value to your visualization
and powerbi is continuously improving on
these kind of visualization whether it
is new card visual or new slicer so you
can go ahead and try these out inside
your Microsoft powerbi report pages and
create really give a new level of look
and fee to your
pages new card visual was released
sometime back and in November 2024 small
multiples for new card visual has been
released these features allow you to
have small multiples for the new card
visual this feature is in preview as of
now and let's look at the details of
this
feature so let's have a quick look at
what we plan to discuss in this video
first of all we will go ahead and look
at the release notes of November 2024 to
understand what is small multiples for
new card visual then we will go ahead
onto the power ba dtop and we will
enable the new card visual under options
and setting and options then we will
explore small multiples on the new car
Visual and finally we will play around
with various settings available for the
new card visual small multiples
so let me jump onto the release notes of
November
2024 so I am here on the November 2024
powerbi feature summary and in this
feature summary when you scroll little
bit down you will find the feature which
is small multiple for new card visual
review Once you click on that you will
find the details about that with this
month's update we are announcing the
card visual with a new version that
retains all the familiar features and
update while adding the advanced
functionality and improved user
experience with all multiple this
feature is currently preview and the new
card visual offering is an excellent
opportunity to experience the
capabilities of the feature small
multiples are a series of similar card
ties displayed together in Grid format
each representing a category or
dimension of data allowing for
easyr comparison and analyzing multiple
feeds you will be able to use the small
multiples means the cards will Repeat
based on categorical variable which you
will to provide the newly feature in has
the data organization visual Clarity and
performance making it easier analyze and
present data fact to try it navigate to
options and setting options preview
features new card visual and make sure
it is enabled that is something which we
have enabled in the past and the car
visual has arrived if you are not using
the new car visual you have to enable
that another advantage of new small
multiples feature is extensive
customization it offers including small
multiple layout and choose from single
column single row or grid and customize
the number of small multiple r or column
displayed Advanced formatting option
featur such as font styes color coding
and traditional format borders and grid
lines the enable individual controls for
border and grid lines permits the
customization of style fit and
transparency overflow style options
include continuous scrw or pagination to
smoothly navigate through the multiple
card without overwhelming the visual
space headers toose from the horizontal
or vertical orientation top or left
position customizable alignment F color
transparency padding plus background
color and image these are the few of the
features which we going to explore into
the powerbi so this is the summary of
the notes now time has come that we jump
onto the powerbi
desktop on the power ba desktop first of
all let me showcase you my schema under
the data model view it contains my usual
sales model which contain a central
sales f
joined with item Dimension customer
Dimension geography Dimension and dat
table all the joins are one too many and
mostly single directional me go back to
the report View and add a page to start
today's demo but before I start today's
demo I would like to tell you the
setting to enable the new card visual in
case you have not enabled it previously
ly file options and setting
options and in the options under the
preview features inside the preview
feature I have already enabled new card
visual in case you are doing it for very
first time it was uncheck press on okay
and continue in my case I can press on
cancel and continue when you press okay
you might have to close and open your
file again in case it is asking for that
back onto the power VA page and let's
call this new page as C
is on this page I'm going to add a new
card visual so first of all I'll open
the build visual P from my right hand
side where I have see all the panes and
from here I'm going to add a new card
visual or in this card visual I can add
multiple measures but I want to add one
measure to start with I have added the
one major and as you can see the net
value is displayed on the new card
visual I will go ahead and add brand
onto the small multiples and you can see
option of small multiple has also been
provided into the new car visual as I
add that you observe that my new car
visual is showing brand but because of
the space limitation it's not showing it
properly time has come to provide this V
visual more
space make it little bigger now you're
able to see the brand and the net it's
only showing the three rows as of now
and we are going to adjust it using the
new format properties which we have got
for small multiples let's click on the
format and you have got two properties
here small multiples layout and a small
multiples header first of all let's look
at the layout so single column layout
let right right now we can continue with
that and we use five multiple for
displaying the multiples when the reason
I'm not showing 10 because I would like
to show you the scrolling as well as the
vertical headers here it's single column
I could have gone for single row which
will look like something like this I
need to do width adjustment in that case
and I can make it a little smaller if I
want like that that's the G or I could
have made it as a grid once I made it a
grid so the values like this brand one
brand 10 Brand 11 brand 12 brand 13 I
can choose the layouts like how many
rows and columns I
want I can make it a 4x4 matrix by
choosing four rows and four
columns now depending on the values and
the font size you can make it little
different so let's go back to the single
column layout keep it five we have the
borders you can see I can add the
additional bord if I add the Border I
can change the color or I can change the
width Etc if I add the Border I can CH
the width and if I start changing the
WID we'll be able to see the B grid
lines in case you want grid lines go use
grid lights pay attention
here you don't use gr grid lines what
happens overflow AG inated
orous scrw so let me change it to
continuous scrw now you can see on and
if I make it paginated you see small
icon here and then scroll down and you
can scroll up using the pagination
pagination could be vertical and
horizontal that what you can do the
background in case you want to change
the background I'm not interested in
changing the background as of now and
the shape shape could be a little bit
rounded Corners here you can observe the
rounded Corners now it is column wise
with single measure so I can reduce the
width Cas we add more measure we have to
increase the width according to that so
these are the properties which I have
inside the small multiples and the
various stuff which I can change out I
can make the single column single row or
grid layout and I can play around with
when I go to the small multiple headers
I have you know whether I want the this
for one series or for all the series as
of now I wanted to do the changes for
all the serieses so let's me go ahead
and change the orientation to orient
ation to vertical and this is something
you were asking for long now that we
need to display it vertically you have
option in the small multiple header for
the
orientation position is left or top
right now it is left and I when I make
it top you will stop seeing the data and
this top position will for suited if you
go to let's say the single Row the top
position is more suitable for the single
row rather than the single column option
depending on the requirement we can play
around with the single row single column
as well as left and top it is just
basically based on the need what suits
most for your
requirement it doesn't look so good so
let's change it back to the five and
let's go down and make it from the top
to left there are scenarios where single
row will look better than the single
column when you have lot of values it
may be little better to have the single
row along with the left this is giving a
different look and feel and if you want
you can continue with that but let me
make it little smaller we'll go down and
change the position to the top now for
the top display I have to again do
little bit of visual size adjustment
vertical orientation let me change the
number of small multiple from 5 to 8 is
not the most suitable UI for what I'm
displaying right now but I just wanted
to Showcase you the properties let me
play around little bit and go back to
the single column View and back on the
single column left
layout now on the headers what we can
also do is do the change of the color so
background is on off I can have a
background color and the background
color a little lighter color I can
choose a background color or I can
choose a background
image one can play around with the call
out value enable and disable that to
disable the values also we can play
around with the label if you have only
one major you might not want to display
the label but yes if uh I have more than
one value if I add other major which is
gross along with net
now in such case I would definitely like
to have a label I'm having gross and net
now so I need to go ahead and change the
layout position to single Row in this
case now this is the layout position of
the card you have a multiple card visual
this is not the layout position of small
multiple this is only layout which we
get with the card Visual and we can
change it when we use more than one
measure to display it correctly can
choose between the style card and table
and when I choose card you will see the
small differences of individual card
display in
this you can try out the various
properties and the option which has been
provided with this small multiple option
of new car visual powerbi is putting lot
of effort these days to enhance your
visual experience so keep a eye on every
month's update what powerbi has stored
for you in the future why don't you go
ahead and try this
out now time has come that we understand
what is power query so power query you
can say is one of the PowerHouse in
Microsoft powerbi power query is the
data transformation and data preparation
engine so basically when you talk about
you know how do I manipulate the data
how I do I going to make it into shape
we talk about that you know in power ba
we need to have a star
schema then if it is not in a star
schema how do we transform and put it
into a star sign if our data is not
clean how we are going to make it clean
and going to put it into a format where
powerb can understand it easily or the
Dax engine can work better so that is
where the role of power query comes in
everything which you are bringing in
into the powerbi is typically coming in
via the power query layer so we have the
power query layer post that the what
transform data we got from the power
query layer that comes to the models on
those models we create relationship
create Dex measures and then create
visualizations power query comes with a
graphical interface for getting data
from the sources and a power query
editor for applying the transformation
so you will see that you know it has a
UI interface basically which is going to
help you to do various operations so
those operations are pretty easy but for
everything what you are seeing there
there is a basically code behind that
which you can open into the advanced
editor and can check it out because the
engine is available in many products and
services the destination where the data
will be stored depends on where the
power query was used basically power
query is not only use in powerbi in case
of Microsoft fabric we have data flow
Gen 2 in case of Azor we have Azor data
flow there is a data flow in the powerbi
service also so there are different
places where you know you can have a
destination like Microsoft fabric power
data flow Gen 2 which is also using
power query to provide a destination
option to you using power query you can
perform the EXT transform and load ETL
process for data so basically in powerbi
if you wanted to do ETL it's natively
power VI ETL then you have to use power
query so let's talk a little bit about
power query experience the power query
user experience is provided through
Power query editor user interface the
goal of it this interface is to help you
apply transformation you need simply by
interacting with the user friendly set
of ribbons menus buttons and other
interactive components so you have set
of menus like home transform data custom
column Etc using that you can do tons of
operations all these operations are
pretty intuitive they have been given a
name by which you can understand them
and there are step which perform quite a
few complex operations like when you go
to pyot data or unpivot data they are
performing real complex operations but
for you it's just one click power query
experience you will get it two Place
definitely one is you are getting in
powerbi desktop another one you are
getting powerb online so powerb online
you will found the integration such as
powerb data flows Microsoft fabric data
flow Gen 2 Microsoft Power Platform data
flows AZ data factory rangling data
flows and many more that provides the
experience through the online web pages
these are online experiences and as you
know your favorite power query for
desktop found integration such as power
query for Excel and powerb desktop so
both in Excel and powerb desktop we do
have the power query
experience what power query use
internally so power query use a language
which is known as M language which is
basically for the transformation so the
power query engine uses scripting
language behind the scenes for all power
query transformation the power query
formula language it's known as m m
language is data transformation language
of power query and anything that happens
in the query is ultimately written in m
so basically if you're doing a operation
pyot Operation so there is some function
of M which is getting execute and then
you getting that so what will happen
when you open the Advan editor you will
be able to find out the code so right
now at this stage we'll not discuss is
what is inside this Advanced editor as
you become the advanced power VI
developer you will be able to see that
code inside that one and in our beginner
series we have discussed quite a few
functions all the power query functions
which you can use has been discussed in
the beginner series all the table
function the list function all these has
been discussed in detail there so please
go ahead and also watch that series
means once you are a little bit
comfortable with this one there are
quite a few videos in the beginner
series which you will be able to watch
so let's move ahead if you want to do
Advanced transformation using power
query engine you can use Advanced Editor
to access the script of the power query
and modify it as you want as I said you
know Advanced editor is there and we do
manually write down the script if needed
you can modify the script as per our
requirement is all we can do it it is
not only the graphical user interface
which is going to do everything for us
if user interface function and the
transformation won't perform the exact
changes you need use the advanced editor
or the M language to fine-tune your
functions and transformation we can go
ahead and you know change these things
and sometime we solve the complex
problem at that time we realize okay
it's really difficult if I simply try to
combine some steps so we go ahead and
you know write down manually the power
query code and so now what we are going
to do we going to go ahead ahead and
look at basic operations of power VI
which you must know as a beginner and
then from there you can pick up and can
do more and more complex transformation
you can combine transformation and solve
some problems you can go ahead and write
down you know nested functions of M
language and you know create your own
Solutions around it let's understand
data transformation and which is also
known as power query so what happens is
when we start data loading especially in
the import mode in the powerbi the data
when it get imported the first place
where it LS it is into the data
transformation mode but what happens is
most of the time we just simply load the
data so we are not aware that the data
was actually passed through the power
query layer or the data transformation
layer power query transformation or the
transform data layer is really strong
and we can do a lot to improve the
quality of the data it is kind of a ETL
data quality improvement data
transformation engine so let's begin by
using the power query typical way to
reach power query is transform data so
when you do this you will reach power
query layer but when you load a new data
also you can instead of loading the data
you can use transform data and in that
manner you can also reach to power query
and we will use the same method for this
part of the video what we are going to
do is we are going to use this file pyot
data. XLS which is again available on my
GitHub account and you'll get a link
right click on the raw copy link and go
to Power query click on get
data web
give the URL click on
okay you got a popup there are quite a
few things which are available in this
file and what I'm going to do is I will
take most of these things and instead of
load now I will use transform data
transform data will take me to the power
query module and power query module
which can be used to transform data also
sometime when you have huge amount of
data you don't want to load it directly
you can come to this module and reduce
it the data not in final shape just like
the data we have loaded right now you
can come to this place transform it and
then start loading it you have option
here for close and apply which you can
use once you done with the
transformation apply stay here and
continue close and apply means close and
the changes would be apply and you can
go ahead and analyze that various tabs
and the most important tabs which you're
going to use for the transformation is
Home tab the tons of transformation
available here then the transform tab
this include lot of transformation add
columns not only you can add The Columns
but other than that there are
transformation which can be done while
adding the column you can do that then
inside the view you have the column
quality column distribution column
profile if you are now looking at the
data you might be seeing that you know
it is showing the column distribution
right now distribution means how many
distinct value you have and how many
unique value you have might ask what is
the difference between distinct and
unique distinct means how many distinct
value I have like a b c d nine values I
have distinct values then what's the
difference between distinct and unique
the dis distinct value which are non-
repetitive if you look at the second
column it is saying there are only two
values which are basically non
repetitive so if you see 78 it is
actually repeating okay if you look at
56 it is actually repeating so one of
the value distinct value is 56 but it is
repeating if you look at 90 it is one of
the values which is disting but
repeating 80 and 45 are the values which
are the distinct which will become part
of the distinct values but they are not
repeating so that's how unique and
distinct are different then you can also
add column quality column qualities give
you valid error and empty so the data
which I have is empty but if you have a
data like this one you have the empty
rows 25% of rows are empty for this
particular column then then comes the
column profile now column profiling is
pretty strong it provides you a lot of
information like count error empty
distinct unique empty string min max and
if you have a number column let's go to
a table where you have a number column
also so here in this one we a number
column so in the case of number column
it will also give you min max average
standard deviation odd even so so many
things it will tell you so if you want
to know more about your data then you
can use column profiling column quality
and column distribution Under The View
tab now you learned about these column
profiling column distribution let's also
pay attention to the panes on the left
hand side we have pain where all the
queries has been given on the right hand
side all the steps have been given
whatever you are doing here here every
step is getting captured other than this
observation of profile so how this data
came in what was the source the Excel
kind of a source we had then how the
navigation has happened you selected a
sheet fail sheet then promoted the
headers the headers have been promote
change type type has changed now any
transformation you do any column you add
other than the rename queries everything
is getting tracked and what would happen
all these steps you can look what was
previous stage what is the current stage
and these can be reverted middle steps
can also be deleted provided the next
two step can adjust to each other
otherwise it they will give error so
everything what you're doing is
trackable here unlike Dex where you
create a formula you know the formula
but you don't know whether you created a
formula a before or formula B before you
don't know but here anything you do you
do rename you do transformation like we
are going to do pivot data unpivot data
merg data append data everything will
get tracked here so it is not process
where you are not aware of the steps
every step will be captured and will be
shown to you now let's look at this data
the pyot data is it in the final shape
and ready to be analyzed no it is not
the data is basically pivoted in the
Excel somebody has moved the subjects on
the columns and this is a pivoted data
and to make this data more suitable for
analysis we have to unpivot it so we
have to go to transform data and there
we have option for for unpivot unpivot
columns unpivot other columns means
other than what you have selected like
right now I can do unpivot other columns
I selected name I can unpivot other
columns unpivot selected column unpivot
columns First Step can decide whether it
need to do other two unpivot selected
columns whatever I select let's say if I
select from here to here math to English
then I will have to go and say unpivot
selected columns when do I use other
columns or when do I use selected column
what happens if you have something known
as month on the top it is possible that
number of months are going to increase
so you will get more months in the
columns in such cases select the name
kind of the column or the fixed
categorical column and use unpivot other
columns now you may come back and say no
no no the column which need to unpivot
remain same but the attributes may
increase so with the name I can get age
tomorrow I can get some other property
the subjects are going to remain
consistent in such case we will use
unpivot only selected column so here
we'll click on the name and use unpivot
other column once I unpivot it it is
going to give me attribute and value
column and these attribute and the value
columns are the one which has made my
data now more suitable for analysis what
I can do here is basically in the last
step of unpivot other columns I can go
ahead and change the name to subject and
marks but don't do this in all the power
query steps unless you understand that
you can change them
let's have a look at this data is there
something wrong with this data now this
data you can work with but there's
something wrong actually the majors
which I have they should be the columns
but they are on the rows so sales and
the margin both editable this is margin
number not percentage they're actually
in the rows instead of column and that's
the problem with this data so basically
this data is something which is already
unpotted and I want to pyot it and to
correct this data what I'm going to do
is I'm going to select m and value I'll
go to transform and I'll use this pivot
data option I click on the pivot data it
will ask what is the value column which
is the column you want to Aggregate and
then what is the kind of aggregation now
here I have one value which is doubled
up so if you don't have any value which
is doubling up you can use don't
aggregate but there is one value which
is doubled up and that's why I wanted to
First select don't agregate and want it
to show you that is going to show me an
error for that so if I use don't
aggregate it will going to show me error
because there are two values for this
particular combination so it says this
it's getting a list so what I'm going to
do here is I can go to the gear icon
here at the last there is a gear icon I
can click on that I can go to the
Advance option and instead of don't
aggregate I can use some or you can
delete this step and edit again let me
do the sum and now I'm getting the
correct pivoted table the data was UN
pivoted from The Source I pivoted it I
can use now close and apply to use this
data but we'll continue to do more
transformation
what's wrong with this data quite a few
things the header is not placed
correctly there are full blank rows and
sometime what happen you are bringing in
Excel data you may get full empty rows
at the end somebody might have traveled
through that Excel sheet created those
empty rows so how do we remove those
completely empty rows the problem
doesn't end here in this data I see
complete duplicate rows the rows are
completely duplicated so I want to
remove by data doesn't have complete
duplicate rows that's kind of data I
want it to have and these are few
transformation which I need so let's
start doing these transformation so
First Transformation I want to do is I
want to make the first row as the header
under the Home tab we option use first
row as header let's do this
transformation promoted headers
transformation has been done along with
the change type now the second
transformation which I need want to
remove the blank rows so under the Home
tab we have remove rows and keep rows
this time we are going to use remove
rows under the remove rows you have
removed top row remove bottom rows you
can give the number of rows you want to
remove sometime what happens you have a
report where some additional stuff is
there and then you are using that you
might have additional R than the top
there is a report where bottom something
is written you don't want so remove the
top and the bottom rows remove alternate
rows remove duplicates which is the next
step you want to do remove blank rows
the step which you want to do right now
and remove errors if there are some
error rows let's remove those so remove
blank rows completely blank rows we are
going to remove and it removed the blank
rows now the next thing which so now
there are no blank rows now I want to
remove the complete duplicate but when
you are doing this operation you need to
be little bit careful because if you
select a column and try to do that
operation it is going to be little bit
different than the operation which you
want to do using the complete table so
here because my rows are exactly
duplicate what I need to do here is
basically click on this so that no no
rows is selected and then go to remove
rows and use remove duplicates look at
what it is done table do distinct remove
blank rows this is the step I want when
I want to remove complete blank rows but
let me go to another one here if you see
in this row I have 9 90 duplicate there
are few null values if you go here
remove rows and use remove duplicate you
see what has happened just taken a
column name the duplicates are not the
row duplicate it is the particular
columns duplicate which has been so you
know the difference between two the
column would be column duplicate it may
happen that there are no row duplicates
but when you delete it on the column the
duplicates get removed so the column
duplicates because of that the complete
row got deleted so be careful about that
I don't need that right now and the
beauty with power query is remove the
step back at the previous position
so now what's wrong with this table
actually there's nothing wrong this is
perfect table but there is something
which you want to learn it's not the
best example of the table what we can
have here I want to learn something
known as in the transformation fill up
and fill down in the maths if you see
after 90 I don't have any marks and what
I wanted to do is sometime you have what
happens in Excel you create those five
kind of a table 90 is repeating so only
one 190 will come now I want to do the
fill down so it should fill in the 90 so
under the transform tab you have this
fill fill down so 90 will repeat now in
the case of physics there's only upward
movement means there are blank rows and
then we have a number so here I will use
fill up under the transform tab again
fill up now in this column I could do
any of these operation in this I can
also do any of these operation so fill
up and fill down it takes the value on
the top if there is anything which is
blank it's going to replace those value
with the last available value and very
useful transformation very difficult to
do otherwise but Power query made it
easy so this kind of transformation is
something which enables you to improve
your data quality they available inside
the power
query now let's come to this table and
in this table we wanted to learn the
feature of replace value now first of
all this table is not in the proper
shape so what I'm going to do here is
now instead of going to those options I
click CLI on this table icon and there
are options here and the one of the
option which is there is use first row
is header and I'm going to use that now
I want to learn replace values and the
objective is twofold how do we replace
null values how do we replace any other
value and how do we replace some value
with the null value so we have this
replace value option on the right click
we have replace value but it is going to
replace in this particular column only
what I can do is I can select multiple
columns also with the shift and under
the transform tab I also have replace
values or right click replace values so
you can go go to replace values what I
want to replace here in both the columns
what I want to replace there is a value
called known as GG I want to replace
this value with a b c it's available in
both the columns if observe that here
and here now there are Advanced options
match the entire cell content replace
using special characters so I can use
the first option now but I don't want to
use let it replace so you will see there
was Triple G here and because there was
a triple G here and it replaced the only
2 G's you can go to the back previous
stab and see this is Triple G where only
two G's were replaced the first match
was get
how do we replace the null values or how
do we replace something with a null Val
if you see here this column also have
null values this column also have null
value click on both of these column with
shift replace values and for null you
have to write down Nu L and then you can
replace it with the value na but if this
null is n l null text then I'll tell you
the one quick fix for that so once you
do this fix and you can see the null
values are replaced with na now if this
null is a string you can do the same
step and come back here and put this
null into double quotes you will see the
formula here and this is the step in
that step you can go ahead and replace
if I do here right now this will not
find any null value not replace it the
null text value go ahead and change this
now what I would like to do here is this
hyphone I want to replace this value I
clicked on that and I say I want to
replace this value with what I want to
replace this with n null replace with
null click okay so it's again giving
replace table do replace value in the
last step see every time it use the last
step Hyun with null replacer do replace
values item category column only in that
particular column we have done it but if
you look at the previous steps you find
that it has been executed on multiple
columns you can give n number of columns
and then you can execute on that so this
is replace value for
you so what is wrong with this data the
data itself is transposed so the rows
are on the column The Columns are on the
rows the date should have been in the
rows they are in columns the major sales
and margin should have been the columns
there in the rows so we need to
transpose this so click on this table
icon so that nothing is selected supp
that go to transform Tab and use the
option
transpose the data will get transposed
but still it is not correct or the final
shape of the data the first row contains
the header and to overcome that you will
go to the Home tab and inside the Home
tab on the right hand side you have an
option use first row as header also when
you click on the down arrow you have the
reverse option also use headers as first
row sometime it may happen that you
bring in the data and you don't have
headers it may create the first row as
header we want to revert it so as of now
I'm going to use the use first row as
header so the first row which I have the
row number one should become the header
and this is add an additional
transformation for promote data and
after the promote data powerb do try to
change the data type to correct your
data types automatically and as you can
see in this step it has automatically
detected the correct data type so this
is the additional step which has been
added and because of this step you now
have the correct data type and you have
the correct format
Also let's now learn the operation merge
which is basically the operation merge
what it does it it can join the two
tables you can use any kind of joint
like inner joint left join right join
and anti joints also I'll explain you
what those are and can combine two
tables so I have couple of tables which
I want to merge basically and the merge
is basically the you matches the rows
and then you merge it's not up and one
below each other that's not the merge
here so merge here is basically you join
them so what you call in the SQL joining
two tables using the joins here actually
we going to create a new table or new
query when we join them in the power
query you usually call it query when we
join and execute so I basically have two
tables here the first table is master
table it's not true Master it has couple
of duplicates and I have knowingly kept
those duplicate that what impact
duplicates can have pay attention to the
category IDs which we have 1 2 3 and 5
the second table which I have is the
detailed table along with which I want
to merge this pay attention to the
category IDs 1 2 3 and four so five is
there which is not here and four is here
which is not there and I have kept it
for a purpose and category ID 1 is
repeating here or couple of rows
category ID 2 is repeating but not going
to play such a major role because it is
expected in the detail it is repeating
but the one is repeating in the master
also so now let's start our journey we
can click on any of these tables I'll
start by clicking on Master go to the
Home tab and use merge queries I will
use this down arrow because it giv me
two options merge queries and merge
queries as new if I use merge query it
the data would be merged in this current
table but I would like to use merge
queries as new this will allow me to
create new tables and I'll keep on
explaining you different kind of joints
merge queries as new master table we got
it let's click on detail table how do we
join click on category ID and go and
click on cat ID if you have multiple
columns assume you have then Control
Plus click will give you the options so
here again Control Plus click you want
to remove again control and click so I
only want to do one so I'm doing only on
one column but you can do it on multiple
columns the first join I want to do is
inner join and what does the inner join
do only matching columns whatever rows
are matching it is going to do that once
after selecting this I'll click on after
selecting this I'll click on okay it is
showing how much is matching and
definitely not everything is going to
match because we have some missing IDs
on both sides so let me click on okay
and as you can see it has given me a
table and right away in the table table
first is going to be complete and table
two we need to expand but you can see
the missing id5 here let me expand and
see does it make it any difference so
when I expand it it ask me what all you
want right now I can choose to get
everything and also I'll uncheck this
because this is going to prefix the
table name otherwise so I'll uncheck
this use original column name as prefix
so I got this data now if you see here
observe this the cat ID one is now four
rows two from the header and two from
the detail so it became four cartisian
product is happening 2x two so that is
why we our master table should never
have duplicate we could have done remove
duplicate before this now this is inner
join and because of the inner join we
have lost four and five four in the
details and five in the header now let's
go back and let me rename this table
first of all double click or right click
rename inner join as you might have
observed that this has not added a step
it means this thing cannot be reverted
now let's go back to the master again
follow the same flow merge queries merge
queries as new master table is already
there select the detail table category
ID cat ID and this time we are going to
do left joint what does left joint means
all from the first and matching from the
second so whatever is matching and if
there are multiple rows getting
generated because of that it will
generate that but whatever is left out
which is not joined if it is part of the
table one it will bring that and all
those corresponding value from the table
two would be null for that so that's
left joint from you all from the first
and matching from the second it is
showing how much match you're going to
get and let me click on okay now again
we get the first table columns and
expansion for details I'll expand it and
let me click on okay it has unchecked
that because last time I unchecked so it
will remain unchecked and let me click
on okay now and as you can see we got
category ID five from the header for
which we don't have any corresponding
data in details but because of the left
join it is coming in let's rename this
table as left join right click rename
left join let's go back again to the
master table merge queries merge queries
as new master table let's take the
detail table category ID cat ID the join
and right join right join means all from
second so the missing ID so the
additional ID four is going to come now
but we will miss five because five is on
the left hand side but what we are
saying all the matching things will come
from the details plus additionally
whatever the details contain that will
also come let me click on okay now this
time you start seeing a null row already
it means there's something which is
coming for which we don't have a value
in the left hand side of the table table
on the top is here in the left I expand
the details using this expand icon I'll
include all the column just press okay
and as you can see we have one row where
we have category ID 4 which was not
present in our table the master table
let me rename this right join let's do
the journey again merge queries merge
queries as new master table detail table
category ID cat ID and this time we'll
use full join from both matching will
match and whatever is not going to match
from both the tables is going to come
and again it showing what is matching
what is not matching let's click on okay
you see a blank row you see category
five also expand once you expand you can
get all the column in and you will see
now both the rows one from the left side
having blank because category ID 4 only
exist in second table one having Blanks
on the right hand side no blank on the
left because Category 5 does not exist
in the detail table so this is full
outer joint for you or full joint for
you let's rename this as full joint
double click rename let's continue to
now two interesting kind of joins click
on master table merge query down arrow
merge query as new master details
category ID cat ID and the most
interesting join which we could use is
left ENT and right ENT let me use left
ENT this time row on only from first
something which exist in the table one
or the table on the left hand side which
is not present in the right hand side
table is typically category id5 which is
not matching is going to come that two
for the left table so non-matching rows
is come if you remember we have
something known as except or minus set
operation something which is present in
the table one or table a and not present
in table two or table B so you will see
we are having the category 5 row is
coming in and we know there's not going
to be any match data in the details but
anyway we can expand and check it out
actually after this join there is no
benefit of expanding but to understand
this we have expanded it so this is left
ENT now let's go back to the master
again and try the last join we wanted to
have in the Marge queries Marge queries
as new and we are going to try write ENT
with the detail table so master in
detail category ID cat ID right and join
only the rows available at the right
table the bottom table here in this case
whatever is only available in this table
which is not matching with the master
table is going to come here let's click
on okay it shows one row with a blank
and when we expand the detail we will
see category ID 4 coming in here and
there is no data on the left for that so
the row which is not having a matching
data which is on the right hand side is
coming here and that is right anti joint
for you let's
rename you can use these Marge to
combine the tables in powerbi we prefer
start star schema and sometime you may
come across a situation where the tables
are not in Star schema in such cases you
can use power query to create star
schema if required sometime you may want
to duplicate the tables to do that
because in the star schema facts are
self-sufficient so let's say you have a
header table header act as a dimension
as well as it need to be merged with the
detailed table in such cases you can
duplicate the table and use it so how do
we duplicate click on any of the table
let's say I have this detailed table I
want to duplicate it right click
duplicate don't use reference it going
to reference that so you can call it as
detail 2 it's getting duplicated and
then you can do your Marge
operations we had this detailed table
and we duplicated and created another
detail table to let me go ahead and add
one more column here how do we add a
column we can simply add some formula or
I can split it or to add a column or I
can duplicate it so you can right click
and duplicate a column and let me call
it as a name Tool and why am I'm doing
this I want to show you something known
as operation upend Operation now upend
operation is typically you want to Union
the data you want to combine that so the
operation which is upend here is kind of
a union all mean it's just going to
append the rules second is unlike the
SQL Union or the Dex Union where you
need the same size of the table or the
same number of columns in the table it's
not necessary and that is why when I had
a detail and detailed I just
additionally added a column in the click
on any of the column click on any of the
table and then go to append again you
have two options upend queries and upend
queries as new so what I want to do here
is basically I want to use the append
queries as
new so let me use append queries as new
now detail is the first table if you
have three or more you can use this
particular UI for two tables you can use
this UI first table and you can select
the second table and the second table
which I wanted to select is basically
the details table details table and
details two table let's click on
okay and as you can see that the both
the tables are appended one after
another one they just comb just
combining the tables with all the
possible column there's no deletion of
duplicate here and definitely I have now
created a new additional column so it's
not going to delete any duplicates as
you know we have removed duplicate
option in case we wanted to do a union
all kind of operation we can do that now
in this case you can see that the
additional column do have come which is
part of only one table and the rows are
blank for the table for which it was not
available and the other table where it
was available it has come now post
this if you want to delete duplicate now
the delete duplicate can happen based on
ID column or based on the complete table
now here I would like to delete the
duplicate based on the ID column I can
click on the ID column I can go to
remove rows and remove duplicates so I'm
trying to do kind of a union operation
in the SQL world where you actually
don't have duplicates now in this case
definitely it has taken a decision to
take some set of columns from the of the
tables when there are multiple values
available so in this case this has taken
the name to where the null values are
there you can append you can remove
duplicates and create a union or Union
all kind of a scenario based on the
requirement let's learn how to create a
custom column in power query and for
that what I'm going to do is I'm going
to add the same file here the sales file
which we have used and the reason for
that is basically because I want to show
you the same formula which we created
there so let me go to the github.com and
in GitHub this is the file which we are
using say data used in video right click
on the raw copy link come back to the
powerb and now I'll tell you directly
from the power query under the Home tab
if you click on the new source you will
be able to add new sources from here go
to new sources click on web which is
available directly into the menu give
the URL click on
okay and I load only the sales
here and now you don't see the button of
load data and transform data this is
only okay button because when we opened
it from Power query it's going to put us
back onto the transform data mode only
because it has put us into the transform
data mode it is not asking for the
option whether you want to load the data
or transform the data so we have to
transform the data sometime we may get
this kind of error you can simply
refresh now if you remember we created
few columns there so same column we
wanted to create here we will take one
or two example of such columns and also
create some different kind of new custom
column so once you are on the table you
can go to add columns and inside the add
column you have column from example
custom column invoke function
conditional column index column now the
first of let's learn index column what
is the index column sometimes what
happens you are bringing in a table and
you don't have row numbers and row
number is required sometime because I
want to create it as a dimension means I
I went ahead and I remove the duplicate
and I created a dimension I need a
unique number then how do I do that I
can add index column sometime you
require row number just because in a
visual you want to display and power
always summarized so you need one unsm
column so in that case you can add index
column so you can add index column from
zero or from one or you can even modify
it so I added an index column it is a
unique rule number column for me I can
decide from where it should start how
much increment it should have so if I
want let's say two to increment I can
make it two what would happen here is it
will become odd numbers I want to start
it from let's say three I can make it
three and it will start from
three these changes I can do let me make
it one and one now this is one type of
custom column let's go ahead and add
another kind of custom column which is
basically custom column B what I want to
gross what is my definition of gross is
quantity multiply by price now here uh
we have no option to select the data
type but in the power query online
version the data flows we are getting
that option to select the data types
here we don't have so let's click on
okay and you will see it doesn't take a
data type here so what I can do is
whatever data type I want I can give
that as a last argument so be on that
step put a comma and use type let's say
I want in 64 or decimal so here I can
give type number on numeric and let's
try this out and it has become the
number data type so in this manner if
you remember the type you can give the
type otherwise you have to use the
option here you click on this number
column or ABC what was written and you
choose the data type and it will add a
step for that to avoid the step I simply
written type number because I remember
that it can be added like a number same
way you can add another custom column
for cogs and that is nothing but
quantity multiply by cost now you can if
you use this here you click on this
number column or ABC what was written
and you choose the data type see it add
additional step but that is why just to
avoid this additional step I had this
script I can remove
this and go ahead and put a comma and
put the third argument which is not
available
here now the new column which you
created you can again use them in
creation of columns like discount amount
you can go here and create discount
amount you can use the column which is
previously created which is nothing but
gross multiplied by discount percentage
divide by 100 if you remember
the discount percentage is absolute and
that is why we need to divide it by 100
again I can change the data type now if
you want to create a conditional column
you have option here to create a
conditional column so you can click on
that and you can write down a
conditional script so if let's say sales
date equals or less than equal to or is
after we say before what date we say
okay it is before 2019
let's go by
years now go by month Double Arrow take
years is before 1 January 2019 then one
else zero so Data before 2019 and after
2019 so you can create a conditional
column so it will give you values and
what all values we have if you they are
not loading we can click on load so we
have both one and zero values depending
on the dates we will have value it will
always load a sample side of hous and
rows and based on that it will do the
column profiling here at the end if you
see but if you want all the rows you can
actually click here and you can use on
entire data set it is especially useful
when you go to the view and you do this
column distribution column profiling
then you can use that now again I can
change the data type but right now I'm
leaving that now I can add this column
manually also actually I can go to the
custom column and I can write down the
condition of my choice so let's say test
if quantity equals to one then unit one
else many so I'm saying if quantity is
equal to one then one else many this
kind of condition I can give and I can
have multiple if else to create complex
conditions so one and many one and many
usually I have quantity one two and
three so I'll get one and many for many
for two and three I'll get in this
manner you can create quite a few custom
columns now some cases you have this
additional column which you can create
you can add a column um so you want to
measure a length let's say you want to
measure the length of this column but I
don't want to use a transformation I
don't want to change this column I want
a new column you can go to extract and
say length so it will actually give you
the length of this column same way other
operation on length like first character
last character range text before delimer
text after delimer text between delim so
what happens in all such cases it will
actually go ahead and add a new column
so instead of transforming the current
column sometimes you don't want to
transform the current column you
actually want the information in the
next column so this is really helpful
here same way for parsing if you have a
XML or Json column you can par and other
one you can like format like I want this
upper case or lower case but I don't
want to transform this column I want a
new column so I can go ahead and use
this so this will add a new column just
for an example let me use this lower
case and this time instead of making
this test as lower case it actually
created a new column lower case in this
manner you can add custom columns in
power query so most of the column where
you require multiplication kind of a
stuff you can add them in power query
conditional column you can add them in
power query other transformation which
are needed at row level you can pretty
much do all such columns in power query
there are formulas which can only be
done on the aggregated data for that we
cannot use this one they are better
suited on measure so there is a option
of colum by example you can create a new
column by example how that I'm going to
give you one example now there could be
more us is have little complex data also
you can use it what I'm going to do is
I'm going to go to this text operation
table and in this text operation table
I'll go to a column is my column key to
I'll right click on that and then there
is option add column from exam now I'll
click on this option add column from
examples and here it is asking example
let's say I put one one what does it it
identify it that I am asking for text
before delimiters and based on that it
is creating everything like text before
delimiter let me go ahead and replace
this with 333 now what is happening it
now identified that I need text after
delimiter after which delimer it is
identifying that I need it after the
third delimer and that is why you are
see in the second row it is using
33355 now the same manner you go and
type 222 what it will realize is that I
need Tex between Eliminator hyon and hyp
creating the next also it is creating to
and one to one Etc in this manner it is
identifying that I need X between
delimiter and it is creating data like
that now let me click on it would be
added as a new column and then you can
look at the formula this formula which
has been Tex between has been used hyph
and H So based on the example I try to
do that operation and based on that
operation you will now get taex before
delimiter or Tex after delimiter or
there could be any other operations
which has been identified we done here
these are the various way in which you
can create a new column in power query
and once once you are done with those
columns from the home you can go and
click on close and apply or simply apply
and those columns would be added at part
of your query which will be known as a
table when we visualization part the
next operation which we wanted to learn
is under the transform and that
operation is basically Group by now the
group by operation is something which
can create a group col basically you
have a complete table and group a data
at a particular level use this group by
so basically summarized table or
aggregated tables if you you can take
help from group by now you have
summarize in tax which can do the
similar job there are other functions
also like summarize callums the job grp
by can also do the job so now here in
power query we are going to use group so
what I'm going to do is I'm going I'm
going to click on the sales table and
after that I'm going to click on group
buy once I click on the group buy it
gives me two option basic and advanc in
basic it is asking for one group buy and
it is only asking one column now what I
can do here is basically I can go to the
Advance the advance I can add grouping
of my own choice so I can say Okay I
want to group this data let's say a city
and then here in the count columns I can
give a name of the column where the
count has been written here then I can
choose the operation sum average median
min max count rows count District all
rows Etc we start with a simple example
we'll say we want to sum here and what I
would like to sum I want to sum actually
quantity here now here I'll say sum uty
so this is the first kind of aggregation
I want to create now I would like to add
another then I can go ahead and do it
let's say I want average price now
average price is not the best thing to
have it here but let's go ahead and do
that so we say average and then we'll
use so you got a aggregated table now or
grouped by table now which is now giving
you g ID sum of quantity and average
price now you can see the code here
table. Group by at what it is
doing so C ID it is grouped on that and
based on that we have list. sum which is
used on the some of quantity has been
done and a of price I can click on the
setting icon back again here and I
reached back to the setting again and
what I can do here is I can say add
grouping and in this add grouping I can
let's say I add item ID I want two group
by is not one group I want aggregated
table which is based on city ID and Item
ID and how I'm getting my data based on
the city ID and Item ID in this manner I
can get it now there is one more option
which is there and that would be helpful
when you are going to do something like
you know sub index or sub rank that kind
of operation that would be helpful and
for that what you have to do let's go
back to the setting again now here in
the ad grouping let me remove this and
here I instead of some operation I'll
say all rules I can give it any name
whichever I want Let Me Call It All Pro
only when you go here so City ID and
item id the data is grouped and what
happens is is going to have a table here
so now there is a table which is at the
city ID and item id level and if you add
a column here let's say add index here
in this table and now we have to write
down the formula to do that not going to
be that I simply go ahead and write it
here add index for that we have to use
the M language and using the M language
we have to create a custom column and
there we in this table itself the table
which is inside we have to add a index
column and then you have to expand it
back again you can expand this table to
get all the data so you will expand and
then you'll get the complete sales table
again and then you will get the sub
index these kind of operations I have
explained on the channel so you can
check that out so in this manner you can
group all the rows and then you can do
operation inside the group to data so
this is Group by for you we I have shown
you a few options but there are further
more options which you can explore out
to create aggregated or what we call
summarized
tables we will come across a scenario in
power query where we would actually like
to split a column we have quite a few
option to split a column so we can split
by D limiter we can split by number of
character we can split by position lower
case upper case digit non-digit
non-digit and digit now I come up with
this one data where I'm going to show
you split by Del limiter but this data
is really interesting because it's
nquire double split and you will not
realize unless I do it so for first of
all even before I use do use first row
as header I need to split this data okay
because name and ranks are two different
column but I need to split this data and
how do I need to split it I need to use
under the Home tab split column and buy
delimiter and space is my dmit it is
automatically identified for each
occurrence in this case it is the left
most occurrence or that's the only
occurrence but you can decide if you
have more than one occurrence leftmost
or rightmost or each occurrence and then
you can go to the advance and decide
whether you want columns or rows in this
case I want two columns and that's
correct it has automatically identified
that but in case you want to check you
go ahead and check that out in case of
rows there's no limitation it can split
and give any number of rows but
definitely columns we have to specify
let's press okay now we got the two
columns so now at this stage I can use
first row as header so the moment I do
first row as header you might have
realized that this change type has
changed the game for us it actually has
detected it as integer and removal of
comma that's what we don't want so what
we have to do is we have to go to this
step transform columns either we remove
it or go and copy this type text and in
the rank also you use type text so that
it remains as a text now it is a text
now we can continue to use it now the
rank column is something which we
further wanted to split we again go to
split column split by D limiter and this
time for each occurrences of the D
limiter it has correctly detected that
in the advance option I'm going to use
rows no more columns I want multiple
rows for that I don't want columns this
time and in the rows it is not going to
ask you how many rows create that many
rows which is required columns the
number is limited and let's press on
okay and now the data is in the shape
where we can use it for analysis we've
taken a case where we actually applied
the same function twice in two different
Manner and get the data into the shape
now there are other ways to split also
and for that what I've done is I have
this table text operation which you can
use I can show you some of those
operations so let's say you click on
this key one and you can say split by
number of characters I can split I can
get the ear first four are ear so by
number of characters I can say once far
as left I only want the first four
characters and rest I want into the
second column I don't want the
repetition number of columns here is
going to be two because I only want once
if it repeatedly you need to tell how
many columns I only wanted once I'll go
ahead and press I'll select once as far
left as possible the left hand side and
multiple columns and there going to be
two columns this time so we are able to
split and take out the ear from this one
so this is split by number of character
now then there is a split by position so
split by position position from 0 to 6
so power query start with indexing start
with zero and then there are Advanced
option columns or rows you say okay fine
0 to 6 let's split that so now you got
another split based on that and now this
change data type on the First Column we
don't need actually we need type text
only and because of that only it's not
showing what value we actually got this
is the value we actually got then you
have the upper case lower case and all
those combination I will just show you
one of them so this is uppercase and
lower case so you can go and split by
column by lower case to uppercase or
uppercase to lower case so let's execute
one of them lower case to upper case so
when the things change from lower case
to upper case at that time we will split
so this was lower case and post that
there was an upper case so it got split
there is upper case and after that
there's a lower case there's nothing got
split this is these were three were
lower case and after that we got upper
case so it got splitted similarly digit
and no digit split you can go ahead and
use by non-digit and digit or by digit
and non-digit so let me use one of them
let's use the second option non-digit to
digit so you will only see split where
first there was a non-digit and then
digit in this manner there are multiple
things which we can do there are next
set of operations basically here we have
lower case upper case capitalize the
word trim clean add prefix add suffix
now let me go to this table and I'll go
to column two and let me try to now to
understand this format options now very
easy to understand this lowercase and
uppercase you click on any any of the
column you go here and say lower case I
go to this column everything is already
in uppercase so I can go here and say
format capitalize each word so first
letter would be Capital now this is all
in lower if you see here the the column
name the first row is in the lower case
I can go and click on the format and
uppercase it will do an uppercase now
let me use first row as header and then
do other operations now I can go here
again and under the transform format I
can use add prefix it will add a prefix
to the column let me add Hy and in case
I want to add a suffix I can go to the
format and I can add a suffix also let
me add at theate here and it's not doing
that operation on the null value please
remember that now what is this clean and
trim trim you might have understand what
what is this clean to understand the
clean let me go to the Home tab and
create one enter data script and here
let me and a shift enter enter enter a
SP b space c d d d enter enter enter B A
FG now next one I'll go here and space
space space a space space space next one
I'll space space space b c v VC and then
here no space b and space space space
space and let me say let me rename this
now and edit I got some data you can see
the values here lying here and there now
there is cleaning required so first
operation which I want to do here is
basically I'll go to transform format
and I'll do clean operation the clean
operation removes the non-printable
character especially the the enter you
can see now the data has come into the
one row but it has not removed the white
spaces before and after it they are
still white spaces like here if you go B
and do have white spaces okay vbb do
have white spaces in the beginning now
I'll go on this column and I'll use the
format trim operation and once I do the
trim it removes the white spaces from
left and right and I'll get the trimmed
version of this one now you see there's
no nothing before and after it's only B
and only vbb so these are the operation
which allow ows you to improve the data
quality so the transformation the data
quality improvement all these can be
done after that you have some operations
to take out the date part and all those
if you go to this date time table and
you want to take out the time only it
will give you time only you want to take
out the date only you will get the date
only you want to take out part of the
day year month quarter you will get
those also you can extract the date
Parts again these kind of transformation
you can do here so these are the various
kind of transformation you can do in
power query once you are done with all
your transformation or maybe don't
always wait for all the transformation
to happen you should keep on doing this
in between you should keep on applying
the changes so that it doesn't take too
much of time at the end to do it but
right now the time has come that I'll
you use close and apply and once I do
close and apply what it's going to do is
all the tables is going to process again
the complete data will be loaded and
processed again and that is something
which power query does it basically
actually go to load the data model and
go to process by each step by step and
go to do it and it has processed
everything now the tables are now
available for analysis and if you go to
the table view you will see the data
into the final shape so if you go to the
pyot table or unpivot table you will not
see the data in the initial shape what
you had you see the data into the final
shape so power query helps us in
creating transformed cleaned data data
which can be used for data analysis so
the next set of transformation which we
actually wanted to learn is basically
how to do multiple unpivot or double
unpivot here what happens is you don't
have a single column which is repeating
actually there are more than one column
which are repeating so let's say there
is a set A1 A2 then there is a set B1 B2
then there is a set C1 C2 but that is
the set which is repeating it is not
that I have A1 A2 A3 A4 A5 A6 and I just
want I that such scenario how we are
going to unpivot that is what we have to
learn so let's look into this example
and see how can we do double and pyot or
multiple and pyot so let me showcase you
my data which I'm plan to use for today
uh so I have added this to the P data
file and I will been loading this file
to the GitHub so here as you can see I
have item on My First Column and then I
have state and value combination
in the column so I have state one value
one state two value two state three
value three state four value four state
5 value five this is the combination
which I have now this is not a simple
unpivot user case where I have the stage
and I simply unpivot it and then I can
use the data so this require a special
treatment or maybe I first unpivot the
data and then P it so let's go ahead and
see how we convert this data into the
best suitable data for data analytics or
for powerbi so I have already open
powerbi and let me jump out of the that
and I'll say get data and inside the get
data I'll bring my Exel sheet and that
Excel sheet is nothing other than pyot
data and you will be getting this on my
GitHub account
and here you see that I got this unpivot
pyot data so just take this sheet
unpivot pyot data sheet and that instead
of loading use transform data why would
use transform data because this data is
not in a shape where we wanted to use so
why to load and then go to the transform
data and do the transformation why don't
we directly go to the transform data so
so I'll click on the transform data at
the bottom of the popup and it will
directly take me me to Power
query let me bring in power query window
on this screen so the power query window
has opened and now we have this data in
front of us so what action we wanted to
do so first of all I'll select item and
I'll go to transform and inside the
transform I'll use unpivot columns and
I'll see unpivot other columns once I do
you can see I have state value in rows
but I don't want like this the best way
is state
as a column and value as a column now to
do that I need to do a next step in the
next step I would use one more
transformation and the transformation
which I plan to use is split column and
in the split
column split column is again available
under the transform tab I want to use
split by dor in this case you may have
little bit complex case so you have to
find out how you would plan to split
that and here I'll click on the advance
option and I'll say I want to split into
two columns that's the most appropriate
for this
data for each occurrence yes or sometime
may you may have to use leftmost
delimiter so first delimiter which it
gets on that and you have to say okay
now what you see here is state number
has been separated out now you can give
it as a separate name there but that we
will do later but you can click on now
attribute and
value and you you can go to P what
column again under the transform
data and which column is the value
column yes value column is the value
column Advance option what I wanted to
do is I'll say don't agregate but I
would prefer to do max if required so
you can take a count
here and once you load this data instead
of list count you click on
the the bar where we are seeing this
formula you send this. Max and now you
can see State and value we could we
could have used to aggregate but in case
don't aggregate doesn't work you can use
max like this so I got State I got value
and this could be state number or type
let me call it type now this data is in
a proper shape for analysis now so this
is how you deal with the data where you
think it require multiple
unpivot now what we would like to do
here is we like to understand how can we
do cross join in power query now you
have seen an example where we have
actually done cross join in Dex now how
do we do cross join in our query because
there's no function cross join if you
remember we had merge which can do
different kind of join like Left Right
full and full is not cross join and then
we have and joins also but how do we do
cross joint cross join means every row
of a table will get populated against
every row of another table one has three
rows and table two has three rows end up
getting nine rows so this is what the
cross join is and we would like to
understand how can we do that in our
query so let me take you through powerbi
and let me explain you the function the
cross joint function which is there in
the DXs and then the question is how do
we do that in power query so let me do
one thing is basically in
powerbi desktop I'm going to use enter
data which is under the Home
tab and I'm going to create two
tables and in the table one let me have
that say number I'm going to have some
numbers let's say 1
2 3 and four and let me call it D1 the
table D1 I'm renaming it and I'm going
to say
load very a simple table once this table
get loaded we will load another
table so now let me add another table
now the table which I'm going to add is
basically having the let's say text so
let me call it
value and let me add value let's say
a b
and see only three values and let me
call this table as D2 and let me a load
very simple stuff two tables having one
one
column now I go to the table View and
I'll show you these tables so D1 as 1 2
3 4 D2 as a BC now how do we do a cross
joint so in the Dax in we go to the
table tools when we click on any of the
table we'll get the table tool and in
the table tool you have new table click
on the new table
and say cross the name left hand side is
the name and then we have function cross
join we can give tables so I give D1
comma D2 two tables and I just press
enter now what you see is uh 1 2 3 4 A A
A A 1 3 4 bb bb 1 3 4 c c c c now I want
same thing in power query how do I do
that so I go to my report view or I
could have done from there also and I go
to transform data which is in the middle
of the Home
tab and there I have another option
transform data which will take me to
Power
query let me bring in the power query
window
here now how do I do it in power query
so if you remember we have something
known as merge queries under the Home
tab of power query on the right but here
when you go to the merge queries
you don't have any option for cutan and
even if you do full outer join it's not
going to serve a purpose especially
there is no joint column here so how do
I do that but to do that what I can do
is I can take any one of these
table and go ahead and create a new
column add column I call it custom
column and let me call it tab two and
let me simply give here D2
D2 is a
table so it starts showing me the
table my once I get a table in a column
it start giving me an expand
icon I'll expand
this and it ask what all column I say I
will say value column I need and I'll
uncheck this use original column name as
prefix
then we press okay now as you can see
the moment I expand it gives me AB C ABC
ABC ABC because I done it with D1 that's
how it's going to happen so for Value
one A B C or then if you see for a it is
1
2 3 and four anyways I I could have done
the same thing in D2 it would have given
me uh a 1 2 3 4 b 1 2 3 4 c 1 2 3 4 so
this is how you do a cartisian product
across join in power query so when I was
trying to save this it given me some
error so what I've done is basically I
change it to Value one the reason it is
giving error because D1 and D2 we are
again using in the cross joint they the
value column and so because of that it
was giving errors in power query it is
possible to do much more complex
operation than what we have done so far
right now what we are doing is we are
combining certain set of operation and
try to achieve the complex operation but
once we are able ble to understand all
the complex M function we can do much
more powerful operations than what we
have done so far so let's understand
basics of M for now m is a case
sensitive language what do you mean by
case sensitive language in case
sensitivity what happens let's say you
write down sales and in one of the sales
you write down S capital that is
different from the sales where s is
small as m is case sensitive so your
column names with the title case or
small case or upper case are different
from each other same is true for the
tables so when you are using them into
your formulas or into your calculation
you need to take care of them what is
the process of working on M language
what is the syntax every language has a
syntax let's say you are working with C
or Java in case of C you create a main
function where you write down the code
in case of java you start with a class
and then you have the main function so
every language has a particular kind of
syntax so what is the syntax we have for
m to create an M query in the query
editor you have to follow these basic
process first is create a series of
query formula steps that start with let
statement so let is the first statement
each step is defined by a variable name
so every step you will have a variable
name and L variable can be included by
space using hash character as HH double
codes step name so basically what
happens if you don't have the space in
your variable names it could be simply a
name but if you want to give a space
then you have to use has hash and in the
double codes you to give the name with
the space so let's say my name of the
step is rename columns so I'll give hash
double code rename space columns this is
how I will give the variable name if it
requires space a formula step can be a
custom formula please note that the
power query formula language is case
sensitive so power for query formula
language is case sensitive it means if
you write down let's say rename column r
capital c capital is different from R
small and C Small in case of M query
each formula steps buil upon a previous
step by referring the step by its
variable name so what happens when you
look at the code which is automatically
generated by power query you will find
that each step is referring to the
previous step that is not necessary when
we start the coding I'll showcase you
that it is not necessary you refer it to
the immediate step you can do some
calculation and post that you can also
refer it but typically what happens in
power query when we are autogenerating
most of the steps are generating tables
and the table in the step one is getting
referred by the step two and so on
finally what we do is we output a query
formula step using the instatement so
basically you will give a variable name
finally after the in generally the last
step in used in the final data set
result so what happens whatever is the
last step you actually try to return the
result of the last step however it is
not compulsory but in a logical flow
that would actually happen so let's take
an example code in this example code you
can see the code start with the let
statement and in the next line you have
variable name equals to expression means
you are assigning the expression to the
variable name in the next one you have
hash variable name equal to expression
two which you are assigning to a
variable name which is basically having
the space and finally you end up
returning the variable name here see we
are not returning the last step we are
returning a step before so that is also
possible just like every other language
we have the data types here we call it
primitive values A Primitive value is a
single part value such as number logical
text or null a null can be used to
indicate the absence of any data me if
the value is not present that's what we
call null so let's say binary is
something like 0 0 and something like
that date is your all your dates date
and time date along with the time date
time zone it will also include date time
as well as time zone duration now
duration is not same as time duration
will have Day hours minutes and seconds
then you have logical which is true and
false null means you have null value
number you can have 1 2 3 4 or you can
have decimal numbers text you can have
ABC or any kind of text which you want
text can have numbers also and then time
and time is different from dur time will
have only time for of 24 hours it will
not have the day component which
duration
has in power query we can use functions
a function is a value that when invol
with argument produces a new value means
you have to give the argument and when
you invoke it it will produce a new
value functions are written by listing
the functions parameter in the
parenthesis so in the parenthesis you
have to give the parameters followed by
goes to symbol means this equal to an
arrow is known as goes to symbol
followed by the expression defining the
function for example to create a
function called my function that has two
parameter and perform a calculation on
parameter 1 plus parameter 2 so this is
an example which has been given so first
statement is let my function equals to
the parameters parameter 1 and parameter
2 you can have more than two parameters
that's not limitation that's just an
example and then the goes by or the
arrow symbol then you have in the
parenthesis parameter 1 plus parameter
two means we are first adding them and
then dividing it by two so this function
is going to return the combined half
value if when we invoke it and then in
my function you are returning the value
which
is finally returned by my
function we have some structure data
values that include list record table
and some additional structure Now list
is something which is uh like a column
so basically a set of values is known as
list so a table column is also
considered as a list record is a record
which where we have a column name and a
value column name and a value it's
basically like a row so you can consider
a table row as a record and a table
column fully qualified table column name
is considered as a list now there are
differences we cannot always use the
same term but this is just an example
what we will do when we actually go
ahead and do the coding we will use the
table column as a list also and we'll do
the list operation on that so these are
the few data types which are really
important and there are tons of
operations around list record text
number and dates and if you are able to
practice those functions you will be
able to solve many complex Logics and
most of these functions are already
discussed on my YouTu YouTube channel so
you can take advantage of that in this
series and video we are going to
consider some of them so that you can
create foundation for using other
functions let's jump on to the new Power
ba file I already opened a new power v
file and how do we reach power query so
we click on the transform data and under
that we again have the transform data
and from there we will reach the power
query once we open the power query you
will find nothing is there it is empty
what we have to do is we have to add a
new source for that we are going to use
the new source option under the Home tab
and from there we will go to blank query
and add a blank query what happens when
you create the blank query it creates it
with default steps and we have to modify
those default step how do we reach there
reach either you can use right click
Advance editor or there is an advanc
editor option in the Home tab also I
will use the right click advanc editor
Let me open that now here in the source
let's say I can write down an integer
one then we click on done now you can
see it is returning one every time you
return return anything other than table
it gives you an option to convert that
to a table if it is not a list it can
give you convert to a list or to a table
but the list it will only give you
convert to a table it is returning right
now one which is of number data type
every time you do an operation based on
that operation's return type it is going
to return that particular data type I
can go here Advance editor again and I
can make it let's say double
codes a b c and if I return now now it
is rning a string and the moment I
return the string I have different
option like format it identifies the
written type and based on that it gives
the different options to us same way we
can perform some operation right click
go to advance editor and this and it is
not necessar the name need to be source
so let's create a variable a = to 1
comma next line B = to 2 comma e = to a
+ b and let's return return C let me
click on done to close the Advan editor
and get the results just like any other
programming language I'm getting the
results of C which is a plus b equals to
3 same way again we can go ahead right
click advance editer and we can modify
it let's say to multiply this but for
multiplication let's take little bit
different numbers let's take a is equal
to 3 balal to a mtip by B and let's
click on the done and we are getting the
expected result 6
it is not that we can do the operations
on number only we can do it on text also
so let's go back again using the Advan
editor let's change these two strings
now hey I'm going to give in double
codes Microsoft without space second one
we'll call this power B turn on let's
try to add them so a m% base m% B let's
written P so C is appending Microsoft
and power B in the space click on the
done and let's check the result the
result is Microsoft powerbi and it is a
text and we are getting option to edit
the text in this manner you can do some
basic operation so let's name this right
now as q1 query one I can double click
or rename right click or rename these
are various options are there and as you
see every step has been given here
applied steps and these steps can be
deleted or added between steps can be
added as per right let's understand in
more detail what all steps we have
created so let's go back to the Advance
editor again and in advanced editor you
can see in the step one we have assigned
a value step two we assigned a value and
step three we appended this value and
finally in the end we have given back
that value so how we have done it let
variable and the data variable and the
data variable and the operation and then
finally in the in we have the variable
which we plan to return so this is what
we have done let variable variable
operation and R and then finally press
done now let's go ahead and try more
stuff so what I would like to now here
is let me try to create list so for list
let's start again by creating a new
query we go to the open
tab we'll take a blank query right click
and want editor let me create a list
list is something where we give data
into the angular brackets now it's a
list of mix 1 2 3 a that's a mixed list
I wanted to create I to return the same
but you can see list of mix which have
created create one more list go back to
the tab new source BL
query again right click
adance and let's create list of
numbers so Source equals to list of
numbers how do we give a list in the
angular bracket if you give the comma
separated value that is list if you are
giving numbers read of double code if
you want to give the text then you have
to give them in double code we creating
a list angular brackets when we use it
creates a list press on done and let's
return this we got a list 1 2 3 again
now this time if you look at here you
have option as it is a list there is
only one option two table there is no
option to list here let's take one more
example this time we are going to create
a list of list again new source lank
query right click Advance editor and
here inside the angular bracket what I'm
doing is angular bracket 1 2 3 angular
bracket 4 5 6 and then again angular
bracket list of list I'm creating click
on done and you can see there's a list
if you click on that look at below you
will get the data and this do allow you
to expand so once you convert it into a
table this will allow you to expand the
list and further do more operations
let's create list of text also new
source land query right click Advance
editor in the envelope brackets a b c e
e fi and let's click on now we got a
list of text now we would like to create
something which is little bit more
interesting we want to create a how do
we create a record let's go go to the
Home tab new source blank query let's
right click andan enter now in the
square bracket we to write down the
record the square bracket you can write
down the record and the record what you
name of the column and the value name of
the column and the value name of the and
the value this is how you write down in
the square bracket now there is no
currently here give square bracket click
on done how you going to record Now
record when we convert to a table it
let's take example here actually
converts it into like four record we
have to actually ask whoose it now who
knows
it and this is the step which is
automatically added and let's look at
here advanc editor and now you will
understand that you know how the
previous step is refer this was the
previous step and when we convert it to
the table here if you look record to
table this step has been referred here
we have referring source is refering to
the source of the last step and then in
is referring to the last step name this
is how we refer steps in subsequent
steps now let's take one more example
and this time what we are going to
create is list of record new sports
blank query right click Advanced editor
here now square ones are the records and
comma separated list of Records inside
the angular bracket creating the list
click on done you got records you can
see your records here let's convert it
into two table okay you select the
option then you can see you got two
records and now you can expand the
record expand the record and you will
get a table like this in this manner
these are the steps so now remember
these functions are automatically added
by menu let me show you those into the
advanced editor but you can also
manually write down these steps if you
know the function like table from list
table from expand record you will be
able to write down all these and in the
beginner tutorial series I covered most
of these then go ahead and try that out
now everywhere you see the reference of
the last
step returning the last step in this
manner the entire flow is happening now
let's take an example how do we create a
table now there are multiple ways to
create table table from record table
from list but let's take one of the
example when you wanted to create table
and the function which we are going to
use is Hash table the new source blank
query right click Advance editor and
here we are going to write down hash
table now after the hash table what is
the syntax you need to give first a list
a list which will contain the column
names and then you get need give a list
of lists which will contain your each
row the list then list of list the two
arguments one is list and then list of
list these are the two argument hash
table requires putting his hash table
into the SCE and we are rning click on
done and you will get your table and you
got a table directly we got a table
let's try one more example this example
again we are going to use hash table but
with a little bit different again blank
query new source blank query right click
editor here in the hash table first we
say type table then we give a record the
record contains the data type also now
here previously we have not mentioned
the data type here we are mentioning
order ID is number customer ID is number
item is text price is number and then
giving list of list so the only thing is
first argument we have changed and the
first argument we giving type table we
are telling the record where we are
telling the column name and the data
type and then we are giving list of list
let's click on that again you got the
table let me add one more query here
land query in this query let's take an
example of list of Records so new source
blank query right click Advance editor
The Source equals to
list and inside the list we have records
so list of Records what we are trying
and inside the record as usual the
column name the value column name and
value let's click on done we got list of
Records we can convert this into table
will expand the records and can get our
full
table now we will look at example where
we wanted to create table from Recon so
let's create one more query home new
sources L query right click Advan editor
and so here what we are doing is in the
source we are getting table from records
this is the function and inside this
function we are giving a list of Records
that's what we have to give every list
has records every record has columns and
the values different data type and
different names can be there then
another record then one more record we
can have as many records as we want then
you click on that now you have learned
how can we create numbers text list
records table table from records table
from list and so many things now we have
to learn few more things for few things
you cannot simply write down a value let
let's take an example of date how are
you going to write down dates let's add
a blank query and right click advance
editor for some of those we have
shortcut hash functions like for date we
have hash
date you seen hash table we have hash
date here
2024 0101 click on
done you got a date similarly right
click Advance editor you can date time
are you going have six argument 14 Z
click on
done you have date time and you can see
check the data type it is showing now
date
time and then it is giving option for
date separation time separation now
let's create duration
also new
query right click Advance editor as
duration and these are all small
typically it is case sensitive and you
will always find the functions names are
in title case like table do record and
all those but here is all small when it
is coming with hash hash table hash date
hash date time hash duration and
duration you can give first day then
hour minutes
seconds click on done and you got a
duration now you before to create a list
of duration or list of time you can
right click do Advance editor if angular
bracket and in the angular bracket one
of that click on done get the list of
duration we can create table from it
these are some of the basic functions
and operation you must remember
now before I tell you little bit more
about some of the functions which could
be really useful I would like to import
one file again and show you what are the
steps which file creates and again for
that I'm going to take out our favorite
file T data used in videos by bringing
this file we would like to understand
what all steps is going to create I'll
bring in the sales data us video again
so new source B give the URL click on
okay and we don't need to bring in all
the sheet can bring in one sheet let's
bring in customer click on
okay and there was no load button or
transform button this time because we
are in power query so we are going to
each here only we are not interested in
what is coming here on the table view we
are more interested in right click
Advance editor and what is happening
here is basically there is a let this is
the first step where we are getting the
Excel sheet now from the Excel sheet
these ports we are getting the
data of sheet customer sheet item
customer kinda sheet data so we are
getting the sheets data after that
promote header and look for what promote
header is refering it is referring to
the customer sheet what customer sheet
is referring is refering to for the
function which has been used on for then
we have change type change type if you
see it is referring to the promoted
address which is the last and finally
the page type is the one which is
getting R in this matter what is
happening is basically each step you
getting a data and next step is that
transformation to the next level what we
think in such cases that every time it
is referring to the last step but if
that is not completely true sometime it
may happen just like we have done in our
older example that it can refer to the
previous step or previous to previous
step we might have a couple of step and
after that the output will be used in
another step so those combinations are
also possible most of the time what
happens it is T table at the each step
so what we think is it is table in the
first step it is table which is carrying
on the next step next step it is table
and then further more table table is
referring to the last step which is
table and again giving us table but that
is not completely true just like any
other programming language we can have
steps which can have different kind of
variables and those can be combined to
create a result T and because finally we
want a table for analysis that is why
most of our power query final output
would be a table now there are functions
where we will be able to Loop the
function funs which will allow you to
Loop through each row of the table there
are functions which allow you to Loop
through the each element of the list and
using those functions you will be able
to create Loops or able to process row
by row data so just like any other
programming language we have lot of
things which we can use here but in this
series and video we'll might not be able
to cover everything but we'll try to
give you a overview which would help you
to use other functions let's also
understand what are Power query
functions
so to understand that let's go back to
the file which we are right now already
in progress and in this file what I'm
going to do here is I'm going to go to
the Home tab new query blank query and
inside that blank query let me create a
function let me do go ahead and do right
click Advance editor you want to create
a simple function function which is
going to do is my function or I can give
it as any name I don't need Source in
that case I need to return this my
function so let me call it addition FN
addition function what addition function
equals to the parameters X and Y and
what the operation they should do X and
Y are actually summing up this can do
any other complex operation now let's
return return this addition function
done let's rename this query also now if
you want to test you can give here let's
say three and four and those invoke and
it will give you answer as s and it has
actually created a new query if you see
when you use invoke right click advance
and return it has actually created Force
addition function this is the query name
please remember if your query name is
different from your function name you
have to use the query name query name
not the function name so whenever you're
creating the function make sure your
function name and query name is same so
that you don't get confused with two so
addition function T comma 4 and integ
instead of I go ahead and doing that it
has created that so in could have done
that bland query tested it or you can
use this function now in any other query
which you are doing so in this this
manner you can create functions which
you can actually use in your other
operations so let's take one more
example of the function go to BL tab
Force blank query and in this blank
query advanc editor let's use source as
a function equals to a comma
B goes to a m per p m per B so if you
remember what we have written in the
past and let's call this aend function
aend a Capital fnend function let's
create an append function c contr v WR
append in the in now we got an append
function we name this query as a pan
function let's give a as Microsoft b as
power B let's use it the Microsoft
powerbi it has it has created a query
for us and which is giving us the result
in this manner you can create power
query function which can do some complex
transformation and or solve some kind of
operation and you can you call those
functions into other queries this is a
brief overview of power query functions
power query offers you tons of functions
which you can use to improve your
transformation these functions include
list function table function record
function text function number function
Etc now it is not possible to cover all
of these functions in this series and
video so what I'm I'm going to do is I'm
going to cover some of these functions
uh in this particular video I will cover
some basic list function which can help
you understand how to perform list
operation and based on that you can go
ahead and perform more operations by
looking at the documentation of
different
functions most of these functions are
covered on my channels in the beginner
tutorial series you can go ahead and
learn from there
every function is fit for a purpose and
if you are able to learn most of these
functions you will be able to perform
many transformation with
ease let's jump back to the powerbi and
the first thing which I would like to do
here in power ba file is I would like to
click on close and apply and once that
is done means the data is loaded I will
save this file and once this file is
saved we will go back to the power query
and start doing some list
Transformations data loading is done now
time has come that we save this file let
me click on the save icon on the left
top give this file name as N2
n14 and click on the save button to save
this file so let's go back to the power
query using transform data transform
data and here now we will try to learn
some list operations Home tab new source
blank query right click on the new query
open Advance editor and in advance
editor we are going to create a list
inside the angular brackets let me
create list of numbers by giving 1 2
5 6 7 3 and 4 don't want to give it in
the order so that later on I can
showcase you list. sort let's click on
done I got a list what I can do is I can
open this Advanced editor again here on
this step or on the next step I can do
this list
dot there are so many operations this
dot I have sum I have count I have min
max all those functions are there let me
use list. sort to sort this
list first let's try list. sort and in
this function I have to give list only
one argument it takes that's a list list
is something which we have in the
envelope bracket let's click on done and
as you can see the list is sorted in a
proper order now instead of going back
here I'm seeing the list I can use list.
sum and you will see I get a sum now it
is wring a number it's not no more a
list similarly I can try list dot Max
here will give me maximum of the is
7even in Max you Dy Min list do Min Min
function you come
here the list. Min it is list IFA as any
comparison criteria all those arguments
you can give we will get the minimum
value from the list that is one so we
are getting one so if we have something
known as count also we can use count
list. count let's see what all
argumented need the list argument and it
will return return us seven now let's go
ahead and add one more list item so that
it gives us eight and we are able to
differentiate between the Max and the
count now we are interested in couple
more operations and those operations are
one which will allow us to Loop through
the list and do additional operations
let we add blank query for that new
source blank
query right click open Advance editor
and we are now going to learn the
function list. number list. number needs
three argument first argument is
basically start so from where you want
to start so I want to start with one how
many numbers you need 100 and increment
by which is I want one in this case so
it will give me 1 to 100 numbers so this
is a continuous number series in case
you want a odd number series what you
can do is you can increment by two and
it will become a odd number series and
it is going to give you 100 number it is
Count total numbers you need not like
your generate Series where 1 to 100 is
start and end limit this is not the
limit this is the count now in case you
want even number series then you can
start with two for odd number series you
can start with one let's start with the
first argument two comma 100 100 numbers
I need and then increment by two and
this will give me now even number series
a list of 100 even num starting from two
there are more such functions so let's
go to the new source blank query
rightclick Advan editor and here we are
going to now use list. dates it can
generate list of dates that will help us
to create calendar but we do have the
functions like list. dat time we do have
list. duration that can give us
continuous duration but at this time we
will focus at list. dates so list. dates
would require three arguments the first
argument is date for that I'm going to
use shortcut hash date it again required
three argument here which is 2022 month
01 and day 01 comma the count of dates I
need 365 dates almost for an Year and
that the duration again I'll use the
shortcut function hex duration and in
the duration the first argument is day
and because I require a date table I'll
use one then hour minutes and second I'm
going to use zero and I'll click on done
and this will give me a series of dates
which will help me in creating the date
table so I am now getting continuous
dates to create a date table we also
have another powerful function list.
generate which we can also use so let's
start again with a new query Home tab
new source blank query right click Advan
editor and here we are going to use the
powerful function list. generate list
dot
generate and it requires three arguments
and all three are functions the initial
function the condition function and the
next function so what is the first
argument the first argument is a
function without any parameters goes by
means the arrow and the value which I
want to give to this function is a
static value of t to start with the next
argument is condition and the condition
is each underscore greater than zero
here generate is creating a loop and
each is giving us each value to compare
and take a decision third argument is
increased and how we will give it each
underscore minus one means from each row
supp the one one value it will give us
reducing
list so generate function generate a
list of values using provided function
the initial function generates the
starting candidate value which is then
tested by the condition if the candidate
value is approved then it's returned as
a part of the resulting list and the
next candidate value is generating by
passing the newly approved value to the
next so we have a initial value of 10
tested every time for greater than zero
and every value is reduced for minus1 to
generate a list of values and let me
click on done and now we are getting
values from 10 to 1 decreasing by one in
each row if you want a increasing number
list you can start with one and say
underscore less than 100 and then we can
change the increment by + one each
underscore + one here the underscore
represent the value in each time we are
calculating it each time we are looping
that value is the underscore value where
we are adding the one we got a list of
number using list. generate function
this time so we have understood few list
functions we have tons of list function
that include list. sum mean Max count
contains contains all distinct date date
time duration intersect distinct last
last 10 matches all there are so many
functions which we can discuss but it is
not possible to discuss all of them as
part of this video or series what you
can do is you can watch beginner
tutorial series on the channel and can
take advantage of all of these functions
discussed there there are other power
query functions which deal with date
number text table record
Etc let us learn some text function in
power query and to do that let's go back
to the the same file again the file N2
n14 and I have already opened power
query in that in that file we have
created the list of dates using the list
functions which I've explained in the
previous video already what I'm going to
do is first of all let me call it as
dates list
and now let me convert this into a table
to convert this into a table will
automatically add a step and that step
is nothing but list from table
this is the table function which use
source which is basically a list
splitter. split by nothing null null
extra values or error these are the
things which has to be provided table
from list power query function help us
to convert a list into table with
required arguments this list has been
converted into a table let me rename
this as dat also let me change data type
by clicking on the left top of the
column where ABC is written and change
it to date you can observe that the data
type is date now to start this journey
first of all I'll convert this date into
the text and we will use some text part
functions to get different parts of the
date we have text function which are
text.art text. middle and text. end to
take out different parts from a text so
let's start this journey by creat
creating a new column using the custom
column so add column new custom column
and let's create a text date column to
achieve this we are going to use the
function date. to text so that function
will convert the date into a text date
and the first argument which we supposed
to give is the date column comma and the
second argument is the format which we
are going to give into the double quotes
y y y y four times double M that would
be in the capital and DD in the small so
this is the format we supposed to give
our query is case sensitive so check out
the documentation when to give capital
letter and when to give small letters in
the format click on okay and check the
data so let's scroll down into the data
and check it out let's scroll down to
another month and check yes this format
is correct so the format which we have
used here is 4 y in the small 2 m in the
capital and 2D in the small and this has
worked for this use case data type is
any as of now and we need to change it
now to change what I'm going to do is
this add column function itself I will
go and give the third argument so comma
the third argument needs a type so here
I'm going to give text Dot type so it's
going to give the text data type and
once I give this argument I will press
enter this argument has corrected the
data type in the same manner you can
give number. type or in 64. type to
correct your data type as per the need
for the required column we will start
the process of converting this text into
date for that we will require a date
function and we will also require the
test function to take out the start
middle and the end part we might also
require conversion of text into integer
click on ADD column custom column to
create a new column and I'm going to
call this new column as date one so let
me replace the name with the date one in
this one I'll use hash date function
first of all which takes three argument
year month and
day first argument is here for that we
need the first four characters so for
that we are going to use the function
text Dot start now the first argument in
this function we need to give the text
date so we will give text date as the
first argument comma we need four
characters so we need to give four and
then we can close the parenthesis so the
next argument which we are going to use
is text. middle and in the text. middle
we need three argument so the first
argument which we need to use in the
text. middle is the text date then we
need the starting point which is five in
our case the four characters of ear and
hyphen and then the the next character
to start because it start from zero so
five we need two characters of month so
two close parenthesis comma need day in
the last argument so the function we are
going to use here is text Dot and to get
the last two character in the string so
the first argument here is going to be
the text date and then we need two
characters from the end so we are going
to give two and then we will close the
parenthesis and then we got the date now
we can click on okay to check it out it
is giving error the reason it is giving
error is because we need the three
arguments as whole number or integers
but all the three arguments what we have
given are the text so what we need to do
is we need to convert this text into the
number the start the middle and the end
for that we have function number from
text let's use the function number from
text on all the three arguments I have
knowingly given as space after the
parenthesis because when we try to
select the function sometime it replaces
the existing function if you don't give
the space so this function number from
text we need to use on all the three
arguments to convert them into the
number so that the date function can use
them once we completed our formula you
can see that we got all the dates
correctly now the dates are displayed
currently my format is the US date
formats and based on that format the
dates are displayed in case you are
using the UK or Australia format you
will get the date into that default
format are some of the basic text
function which we have used here but
there are lot many text function and I
have covered quite a few of them on my
channel in different videos which you
can go ahead and explore some of the
functions which were available at part
of the menus are also available as
function so that we can do complex
transformation by using those individual
functions and we will continue to
explore these functions in different
different
videos we have created a date table
index in the past now time has come that
we create the date table in power query
we have learned some of the power query
function and time to learn some new
functions to create the date table our
Dex power query table is pretty
comprehensive and we can create such a
comprehensive table using power query
also or even more comprehensive by using
additional functions so let's begin our
journey of creating the date table in
power query I'm going to jump on the
existing file which we have created and
to n and14 I'll go to the transform data
which will open the power query module I
would like to add a new query so I'll go
to Home tab new query blank query and
this will add a blank query I would now
like to rename this so right click and
rename is one option double click and
you will go inside the query and you can
rename it I will rename it as date table
and press enter and let me open the
advanced editor now first of all we will
Define two dates because we wanted to
have a calendar between two dates but
the function which we plan to use list.
dates does not take two date arguments
it take a date argument and number of
days so we need to learn how do we take
the difference between two dates to
provide to this particular function so
first let's start with the start date
start date as a variable equals to a
value this is how you define a variable
here so start date equals to Hash date
hash date function requires three
argument the first argument it require
is year second is month third is day so
first argument I'm going to give is 20
2018 which is year 01 is the month 01 is
the day close parenthesis give a comma
and go to next line to start new
variable now let's define underscore end
dat equals to HH date
2012 is the year comma 12 month comma 31
as a day the next step is to get the
list of dates for that we are going to
use list. dates function so let's define
variable underscore date equals to list.
dates now list. dates function requires
three argument first argument is the
start date second argument is Count
means number of days third argument is
Step means how many days it should jump
between each list
items I am going to give the start date
as the first argument which we have
created some time back so the first
argument is underscore St start date for
the second argument we need number of
days the count and that can come from
the difference of end date minus start
date which is pretty easy in power query
but that's returns as duration not dat
so let me Define a new variable
underscore diff which will contain the
difference of these two dates so
underscore diff equals to underscore and
date minus underscore start date and
this will return me the difference
between two days in duration now I need
to use a function duration. days to get
the days out of this duration now I will
get number of days between these two
dates using this function plus one to
cover up the subtraction difference to
get the exact days back to the list of
dates let's give the second argument
which is underscore diff number of days
or count third argument is the step
which is required in duration so we are
going to use a function hash duration
which can provide us the duration so
function hash duration require four
argument the first argument is day and
that is what is most important for us so
one day 0 hours 0 minutes and 0 seconds
and now we are done this is the last
step in our course so copy this and
return it using the in so inore date is
going to return return the list of dates
let's click on the create to complete
this query now we got the required list
of date we can scroll and check it out
all the dates are available here we can
sort it descending to see what is the
end date which we wanted but every time
we do anything it adds an step as we
don't need this step app I'm going to
remove it by pressing on the cross
button let's convert this list into the
table so right click Advan editor and
then we will enter here underscore date
table was the last step it was giving
error means last step was not closed so
now let's use table from list
function what I've done is actually
copied it from the last one so table
from list now last step is dates list of
dates which I need list of dates then
splitter do split by nothing that's
because we don't want to split null null
extra values. error there the argument
which need the main argument is list and
then splitter. split by nothing there is
a way we need to split this list we want
to give that we can use but here we
don't want to by anything we are giving
other two arguments we are giving
nothing and then exra value error and
let's return this now if I still return
the date it will not convert it into a
table let date table click on create few
things we have to change so first of all
using the left top Corner change the
data type to date so data type of this
column should be date so let's convert
that into date now double click inside
the column to rename it rename it to
date date table required many columns
which I'm going to add now one by one to
do that we can use the add colum tab
inside the add column we have custom
column that I'm going to use again and
again to add new columns whenever I need
a new column in this table so let me add
the First Column by clicking on custom
column the column I want to add is start
of month means I want to get the first
date of the month we have a function
available for that the function is date
do start of month and this function
start of month require only one argument
that is date and based on that it can
give us the start date of the month one
argument is needed to give us the start
of the month or the first date of the
month let's press okay so we got a new
column start of month which is giving us
the first date of the month we need to
correct the data type of this so we can
add the third argument to the add column
and there we can use date. type it
requires a type to convert it into the
correct type and let's press enter to
get the correct data type let's quickly
add one more column and the column this
time I would like to add is end of month
I want to get the last date of the month
very simple function date dot end of
month which requires only one argument
that is date which I'm going to provide
it close the parenthesis and now I can
get end of month date let's press okay
to get it the data type of this column
is also not correct and as you know we
need to add the third argument let me
copy it from the previous column and add
it as the third argument comma date.
type to get the correct data type so
data type is corrected time has come to
add more columns add the new column and
the new column is start of quarter means
the first date of quarter is what we
need here so function we are going to
use is date dot start of quarter very
simple function it also required only
one argument at that argument is date so
we'll provide the date argument close
the parenthesis and this function will
going to give us the start of the
quarter date click on done to get the
new column the new column is the start
of the quarter date and now I would like
to add one more column and the column
will be end of quarter means the last
date of quarter let's quickly add a new
column end of qtr means end of quarter
and we are going to use a function date
do and of quarter again this function
require only one argument and that
argument is date so let's provide the
date argument and click on okay to get
the new column so now let's look at the
data look at the very first row we are
getting the start of the month and end
of the month start of the quarter and
end of the quarter for that particular
given date we scroll down go to another
month we are getting different start of
the month and end of the month but as of
now we are getting the same quarter
start date and same quarter end date if
we scroll down further till the April
month we will be able to see a different
start of the quarter and end of the
quarter so for the two dayses you can
compare the quarter is also changing
let's go ahead and add start start of
year and end of year so first I'm going
to add start of year and the function
I'm going to use for that is date dot
start of year unlike the Dex function
which can take a second argument for the
financial start date the date do start
of year function only takes one argument
that is date and it always give you the
calender year start date it doesn't take
the second argument let's press okay to
get the new column you can scroll and
validate the different ears which you
have got but the easier way is the click
on the down arrow and see all the values
you can use press cancel to come out
let's add one more column and this time
we are going to add end of year the
function which I'm going use here is
date do end of year so date do start off
here I copied I'm going to change it to
end again this function also take only
one argument
it doesn't take end of year
argument so let's press okay to complete
what end of year you can just click on
the values and use load more all the end
of
year uh for financial year we have to
write down a manual code so can write
down final code so I will tell you how
to write down FY start want a financial
year that starts in April what does that
mean that means that if the date of the
month is less than four than the year is
started in the last year otherwise the
year has started in the current year and
I'm going to use all these things inside
the hash J function so in the first
argument I will have the logic for the
year the second argument would be month
which is four and the third argument day
which is one this means any date between
1st April and 31st March of the next
year will have the same start date of
first April of this year so let's start
coding the formula with if now after if
we don't record parenthesis date the
month I want a financial year which
start from April so if it is less than
four it means the year was started in
the last year then my year started in
the last year isn't it so date do year
of date only one argument it takes is
minus one as the date of year is the
date of year so if it is four months and
above it is the same year where the year
started only year logic how would I
convert this into date for that I'm
going to use the hash date function in
hash date the first argument is here
which we already sorted out form of four
fora one and we copy this and click on
okay now you got the year which is
starting Financial year how do you get
the end it almost similar formula go to
the custom column and
FY and date of the same formula but the
thing here is here if it is less than
four it is ending in the same year but
if it is greater than four or greater
than or equal to 4 + 1 it is going to
end in the next year and that is not 41
it is 331 so it is going to end in the
next year if it is 4 month or onwards if
it's April which is my start of year I'm
going get my financial year end in the
next year March before April whatever
months are there they are ending in the
this year only March of this year let's
click on okay to get the new column time
to focus on we columns we will create
start of week and for that we also have
a function let's start with a new column
start of week and we are going to use a
date function date do start of week it
takes two argument the first argument it
takes is a date column and the second
argument is how do you want to start
your week zero means Sunday one means
Monday and so on
click on okay to add the column so you
got the Sunday as the starting point
let's do Monday because first January
2018 is a Monday and when we go give one
it's for a Monday start I would like to
add another column and this colum should
provide me a week day number so let's
add a column and this column I'm going
to rename as day of week I'm going to
use the function date. day of week week
and this function can take up to two
argument the first argument it take is a
date as of now let me create this column
with only one argument so it is giving
me the values one means Monday and zero
means Sunday if needed I can go ahead
and change this by providing the
additional argument into this function
so it wrs as zero as Sunday one as
Monday and if you don't want you can
actually go ahead and change it by
providing another argument but I think
we have find it with that but what we
can do is we can gave the names also so
there is a function to get the name also
we'll go to add columns custom column
just create the column weekday name this
column is going to return us weekday
name the function which we are going to
use is date dot day of week name and day
of week name function takes one argument
that is date and using this argument it
is going to return the weekday name so
let's click on okay and now we are
getting the weekday name like Monday
Tuesday Wednesday and as you can see 1st
January 2018 is starting from Monday
same way end of week is also very simple
so let's add a new custom column for end
of week add column custom column and
let's rename this column as end of week
and the function which we are going to
use for this is date dot end of week and
this function can also take two argument
the first argument is date comma the
second argument is one means the week
will start on Monday and end on Sunday
so it is ending on the Sunday the 7th
January this means we have having a week
from Monday to Sunday this was little
difficult in Dex sometime back but now
we have arguments which is making it
simple index
also now we are all sorted on the start
dates and end date of month quarter and
year as well as week time has come that
we start creating the formatted column
and I'm going to start with a column
which is going to give me month year in
the text format so month year
and I'm going to use date dot two text
function and it can take two arguments
the first argument is date and the
second argument is the format and here
the format is going to be mmm in capital
3M and then 4 y y y y y this is going to
give me a format like J hyphen
2018 so let me click on okay and we got
January February March April this will
lot sort because as we know we need a
sort column if you have a month year in
a format gen from March it doesn't
understand that so we always need
sortable format so we'll go to the
custom column again we month year sort
also so month year sort how do we get
that now we need date do year we'll get
the year of the date we multiply it by
100 to that we add date dot month again
this one takes one argument that is date
and it's going to provide me the month
number this combination is going to
create a sortable month year which can
be used as a sort column for the month
year name which is in text format the
same manner you can also add the quarter
details using the functions available
for the quarter in power query so you
have seen you know how easy it is also
in power query if you know these date
functions you can simply go ahead and
create it table now there are many other
things which are available in date
functions like is current day is current
month is current quarter and those can
help you in creating this quarter this
month this year those help you to create
the columns which help you in defaulting
the current month qur quarter and
current year into the slicer now you
have learned some basic date functions
using which you can create the date
table but the date function does not
stop top here power query provides you a
lot of date functions which you can use
to enrich your date table and do many
other operations which are required I
have discussed quite few of them on my
channel in different different videos so
you can go ahead and watch those videos
and enhance your skills around the date
functions and solve many other power
query problems using the date functions
we had a lot of formulas with deck and
one of the things which we have
discussed in the past is there are
scenarios where you will not be able to
achieve few things using the connected
table especially when you want to go
beyond the boundary of what you have
selected what happens in case of power
ba what you selected becomes your
boundary these if you have filtered
something from slicer or filter that's
your boundary and you are not able to go
beyond that boundary within that
boundary you can get all the value so
let's say if I select a month I can't
get 12 months as a trend I can get
within the same month the 12 month value
but I can't get a TR of a 12 month so
how to handle that now to handle that we
have something known as disconnected
table now the disconnected table can
give you a solution and also the table
with the inactive joint can also give
you a solution so there are two ways you
can achieve this problem one where the
slicer is on disconnected table and
second where the AIS or the group by is
on on a table which is disconnected or a
table which is joined on an inactive
joint means definitely you require two
tables in a scenario so what I've done
here is basically to do this I would use
this file which we are using in end to
end and the 12r with visual calculation
is something which I want to use now in
this model if you remember we have
connected our date table the date table
is already connected with the sales
table but date Auto is not connected and
what I've also done here is in the date
Auto I added the monthier column and
monthier S column and I also sorted the
month year correctly I made sure the
monthier is sorted in the date table
also because monthier is a text column
the Sorting need to let me add a new
page and tell you what I need is I'll
take a slicer from month year I'll also
create a visual on month year let me
create a line visual on month year and
let me bring a measure net now you can
see I'm getting all the month if I go to
the slicer and select any particular
month let's say December 19 I'm not
getting 12 months after November 19 I'm
not getting 12 so you say okay why don't
you go ahead and create the rolling
formula you'll get it so let me do one
thing I have already have a rolling
formula so rolling two is there let me
copy the rolling two and create it into
rolling well for dates and period we
have learned this in time intelligence
how can we do that oh I have only two
formula I copied that and let me past it
into a new Maj and call it rolling 12
and what I'm doing here is net dates in
Period date of date the first argument
Max date of date is the second argument
from where should I start how many
period I should go I'm saying minus 12
because I'm starting with the Max 12
months this is 12 months of formula
rolling 12 but rolling 12 what it is
going to do here is when I add it here
it is not going to give me 12 months of
track for that particular month it is
going to give me 12 months of values and
you as you can see this value is pretty
high compared to n you might have
understood it is summing up the past
this is the 12 months of TR so one of
the solution which we tell for this one
is basic you don't have this slicer on
the connected table so let me remove
this you have this slicer or a
disconnected table so disconnected or
independent table we also call it
sometime independent I'll go to the
disconnected table date AO and in that
auto I'll again bring in this slicer
monthier and this monthier slicer let we
select any value as of now when I select
any value let's say December 2019 you
don't see any impact because it is not
connected with the table so it's not
going to impact let me duplicate this
visual let me remove the majors now what
I want here is I want this lier to be
considered by this visual but for that I
need to create a new major so I'm going
to click on new major from the Home tab
and in this new major what I'm going to
do is I'm going to consider the range of
this slicer now this slicer is not
connected so it's not going to impact so
it's not going to restrict my date range
because it is disconnected so I can take
a date of reference from it and it is
not going to restrict me 1 month or 2
month or 12 months because it is not
joined with my sales table so it is
having no impact there so let me do one
thing let me create a formula red 12 and
first thing which I want to do is I want
the date which has been selected here so
beore max equals to Maxx all selected
this is how we got the max date of date
Auto table all selected date Auto and I
need date of date Auto I get the date
Auto date so I got this into a variable
now what I'm going to do is based on
this date I want to create 12 months Str
so I need a state which is also a
minimum date so I got a Max date how do
I get minimum date EO month is a
function EO month and I can take Max uh
1 minus one will take one month Backus
12 minut should take me 12 months back
and plus one it should give me 12 months
of trend or so we got a minimum value we
got a maximum value now this date range
is having no impact on my calculations
right now so what I want to do is return
calculate net and remember there is no
other filter required on the date table
right now so we assume there is no
filter and we don't need to ignore any
filter right now so now what I will to
do is I will push my fter on the date
table date of date is greater than
equals to underscore minimum and date of
date is less than equals toore Max so
date of date is greater than equal to
Min and date of date is less than equal
to and we are filtering we are not
putting any all or something which is
restricting so trend of 12 so let's get
this trend of 12 I have pressed enter so
that the formula get committed I could
have also pressed the commit button so
let me drag this trend 12 into the
second visual now I'm getting a 12 month
Str as you can see I'm getting a 12
month Str this is going to work only
when you filter from the Independent the
moment you filter something from
connected table it will not give you the
12 months Trend but you always L us one
challenge the rest of the visuals and
the majors are getting filtered from the
connected table and this one is only
getting filtered from the disconnected
table so it is really difficult to
manage it on the page so how can we get
it filtered from the connected
table and if I make this in sync then
this visual is not going to obey so then
I will again have a problem so then how
do we do that so to do that what we are
going to do here is basically so we need
to make sure that the slicer is on the
connected table and axis is on the
disconnected table right now it is
reverse the slicer is on the
disconnected and the AIS is on the
connected table
to make this happen we will add an
additional inactive join in our data
model so let me do one thing let me join
the sales date of the date table with
the date Auto and this will to create a
join we are going to create a single
directional join the date table many to
one join with the Dat Auto table but
that is
inactive there is a join but that join
is not filtering right now that was the
inactive join means and it should be
shown as dotted dotted means the join is
inactive
now we come back we don't see any issues
so it means that I can keep my
disconnected table with an inactive join
also now what we want we want this
slicer the above slicer the month year
slicer to work and to just to understand
this better let me go back to the date
Auto and rename this column month year
indd double click rename and enter let
me come back to the realation so right
now things are working let's rename the
page as disconnect Ed slicer as we are
using a disconnected slicer here and Poe
that I'll duplicate a page to take the
next case so now we have disconnected
slicer page on which the disconnected
slicer is working let's duplicate this
and now we want the connected slicer now
we don't want disconnected slicer so
what I want here is basically on this
page a connected date slicer I don't
want disconnected date slicer so I can
delete it and only keep the connected
one okay so what I'm going to do is
because you want a connected slicer and
in the connected slicer you SEL let's
say November and you need a 12 months of
trend which is not coming on the visual
let me first of all remove this major
and also remove this AIS now what I'm
going to do is I'm going to bring this
AIS from the Independent table so
monthier independ now when I bring this
AIS from the Independent table and let's
say if I try to bring in net the major
which we have here on the y- axis you
see a flat line the reason for that
because joinor is not going to work so
now let's we do go ahead and create one
more measure from the home t I'm going
to create one more major very similar to
what we have created few minutes back
but this time we are going to calculate
our date ranges based on the connected
date table not based on the disconnected
date
table I'm going to create friend well
disconnected the AIS is disconnected let
me be very clear on that now again I'm
going to create variable Max and the
variable Max is going to be Max X all
selected date date of date I'm going to
again have a variable where underscore
Min and Min is going to be EO month
uncore Max -2 + 1 return I going to
return I'll use calculate net how I want
to filter filter let me filter date Auto
date Autos date of date is less than
equals to underscore Max and dat autos
date should be greater than equal to
underscore Min let's try this out there
is still one problem you might have
identified that where is the joint
disconnected isn't it so date Autos date
of date is less than equal to Max and N
double M perc date of Auto is greater
than equal to minimum okay let's Commit
This formula and let's bring this inside
the visualization now still it is giving
us a flat line how to get rid of that
Flat Line we have not activated the
relationship so that it can work on the
axis so let's try to use use
relationship use relationship is a
function which can help us in activating
an inactive relationship so let's take
use relationship the table date Autos
date date Autos date with the sales date
of sales table should get activated we
are asking it to activate the
relationship now and the moment we do we
are seeing only one dot why so this
formula needs modification the what
modification this formula need is that
this date table is still need to give me
the 12 months of value the date table is
still giving me one month of value so
there is no benefit of you know putting
this used relationship in action what I
need here is basically rolling 12 months
when I rolling 12 months do I really
need because now I'm getting 12 months
of data do I need need this filter so
let's check it out without this filter
so now we have a rolling 12 which is
based on 12 months of rolling and then
we are saying activate the relationship
of independent table and now if you can
see we are getting the 12 months of data
let's move it to December and we are
getting data of December let's move it
to August September we have data from
October so as now you can see the AIS
which is coming from disconnected or
independent table is getting so you need
a rolling formula now that rolling
formula you just create a use
relationship with a disconnected table
and use that disconnected table on the
axis and then you can have the
relationship so disconnected is
basically inative disconnected it's not
completely disconnected so inactive
disconnected table you activate that
relationship and then your rolling will
become your 12 months of trend and in
this case what would happen basically is
that you have the exis which is on
disconnected table so it is your same
slicer your connected slicer or your
joined table slicer which is working so
you don't have to change everything on
your page you order to create many major
it is only for the visual where you need
this 12 months you can use the
disconnected or the independent table in
the axis with with such a small formula
and this formula is going to help you
out just to compare the the values of
the September it is 245k and the value
of September is 245k the numbers are
matching it means it is displaying the
correct values so you can go ahead and
try this out and there are different
permutations and combination which are
possible because of disconnected tables
like accept is one of them whenever we
have a value and we don't want to use
that value want values other than that
there are so many use cases around that
which can be done because of this
disconnected or independent table you
can watch all of those in the previous
video of the channel just search for
independent or disconnected keywords on
the Channel videos and you will get the
list of the videos which are talking
about disconnected table or independent
table how can we convert a single table
into a star schema now this single table
is the very common file which is
available on my GitHub account which is
beginner tutorial series file which I
also used in my beginner tutorial this
is the retail file which is having the
entire data in one single file and you
wanted to know how can we convert into a
star scha in this video what I'm going
to do is I'm going to give you the video
which I've recorded for that particular
Series so that you can take the
advantage here also on the YouTube the
purpose of this video is to convert the
single file into a star schema so first
of all Let Me Explain you that Excel
file which we have so this is the file
which is known as retail data on
beginner tutorial file this file
contains order ID order number order
date which are the order attributes then
it has a dimension which is a part of
this table only which is item id item
number category subcategory sub
subcategory and brand then I have unit
price which is the sales price quantity
how much we have sold discount
percentage it is actual discount
percentage so we don't have to divide it
by 100 then we have gross sales discount
net sales which is known as sales unit
cost the cost which you are paying for
this item then we have requested date
delivery date this also contain the
geography item attribute which is city
state region and location ID but not all
four can be a part of a single Dimension
it also have some single column
Dimensions like order type payment
method and customer ID so using this
single Excel sheet we can do the
complete analysis on powerbi but we know
the star schema works best on powerbi so
what we are going to do is we are going
to convert this single file into a star
schema and I'm going to Showcase you all
the steps for that what we have done so
far is we have learned some basic power
query transformation now time has come
that we apply those transformation onto
a data set and this data set is
basically a single table and this single
table we wanted to break into a star
schema so how to do the various
transformation to convert this table
into a star
schema and to do that what I'm going to
do is I'm going to go back to the GitHub
and from the GitHub I'm going to take
this file for Winer tutorial series
youtube. XLS again I already opened that
file and I'm now going to right click on
the raw copy link I'll take this link
and I'll go back to Power VI power ba I
click on get data web H this URL click
on okay it will show me only one sheet
and I'm going to pick up that particular
sheet and after that I will click on
transform data this will open the data
onto the power query mode and we can
directly transform it without loading it
this data is a very special data because
all the attributes whether they
Dimension or measures are available in
one single table I want to create fact
and dimension out of this single table
I'll tell you what all this table
contains this particular data is having
order ID order date item id category
subcategory sub subcategory brand unit
price quantity discount percentage unit
cost
state region location ID order type
payment me and customer I want to create
multiple Dimension tables out of it but
how can I do that what happens when I
want to create a dimension on a single
stuff like order type or payment method
then I do have options like you know add
as a new query or a single column but I
do not have similar option for multiple
columns for that we need to explore the
option of duplicating the table to do
that I can right click on the sheet and
I have two option duplic D at and
reference duplicate will duplicate and
it will take whatever steps have been
performed till now it is just duplicate
this code and after that there is no
connection between the two table but
what would happen in case of reference
it's going to create a reference but it
will add the reference to this table
which sheet one whatever it is the
advantage of referen is to not the data
for once and then it's going to process
rest of the things but in case of toate
because it's going to not the data again
and again so every time you take it it
will lower the data for all the
duplication you have created so if you
have created four duplicated is going to
load the data four times let me show you
what happens when I created a duplicate
copy so if you see the duplicate copy if
you see in the sheet one look at the
steps in the sheet one and go and look
at the steps in the sheet two also they
are save and if you click in the source
you will see it is getting data from the
same place but now if I right click and
use reference you will see that it is
reference in the sheet one but the
disadvantage with that is if I go ahead
and do let's say one operation here
let's say if I go back and create the
gross column which we always creating so
I go and create a custom column and let
me call it as gross amount for this
gross amount equals quantity multiply by
unit price click on okay to add gross
mode is available here in the sheet one
but if I go to sheet three and you
scroll you also see gross am it's a
reference table it's going to get
everything so to avoid this what I'm
going to do is I'm not going to do
anything with the sheet one so let me
delete whatever I've
created so I'm deleting the queries I go
to the sheet one I'll also delete the
edit column let me rename it as sales
undor base I'm not going to do anything
with this table I want to create item
table so but for that what I'm going to
do is I need this field item category
subcategory sub subcategory and brand
that constitute my item table what I'm
going to do is I'm going to cck a
reference table our reference table is
created now let me rename it as item
item query has been created which is
going to become item table I'll select
item id category id subcategory id sub
category ID and BR if and click all
these columns are selected I'll right
click and I'll use remove other columns
remove whatever other columns are there
other than what I've selected po that I
click on Item ID or I click here on the
corner and after that I can use remove
duplicates now it will remove duplicates
for the table and now I need to check
here is am I getting the listing item
IDs or not because if Item ID is not
disting then it's not going to become my
primary key so what I'm going to do here
is I'll go here to The View and here let
me add colum distribution and you see
thousand distinct and th unique let me
click on the bottom and use entire data
set and you can see 264 264 is unique
and distinct it means Item ID is my
primary key or unique key I don't need
index column for uniqueness I can use
item ID to join with my fact table let's
add another dimension now again I go
back I duplicate this using reference
and let me call it as geography and inph
I want to bring the column city state
region and location I selected all of
them right click remove other column I
click on the top col and I'll use the
option R duplicates and let's wait for
the location ID stats here you see there
is a problem and the problem is see
there are only 75 unique but there are
299 distinct it means not a primary the
cities are 71 unique there is some
problem and the problem is caused by the
region column it is not allowing us to
get the location as unique column let's
go to the remove other columns Tab and
from there we will remove region as a
column and once we remove this region as
a column we can press enter and check
for the results and once we go to the
remove duplicate step we will see that
now location ID will become a primary
key or a unique key and now you can see
299 distinct and 299 unique it means
location ID can be used as a primary key
or unique key and it can also be used as
a joint column to join with the fact
table two Dimension tables are done and
now I can go back and look at the data
now I'm not B bothered about order ID
and Order date but I would like to
create some single column Dimension so
let's go ahead I'll tell you how to
create dimension for order type and
payment method for order type and
payment method now these tables don't
have their own IDs also so I need ID ALS
and region also one of the contender is
region so right click on this add add as
a new query now again when I add as a
new quer query is going to take all
these steps so this is what I don't want
I don't want this this is one of the
best method to do it but again you see
that all the steps are repeating this is
what we don't want so we go ahead and
remove this and instead of that we will
only go to the reference and there we'll
select one column let's say region in
this case remove other columns and then
simply because it's only one column we
can remove duplicates by clicking on the
column duplicates are removed now here I
want to have an ID column and that idid
column I again want back in my fact
table when I going to create a fact so
what I'm going to do for that so I'm
going to add index column go to add
column and there index column starting
from one I added an index the same
exercise I need to repeat for order type
and payment method but right now I'll
just keep it till this example let me
call this table as region so now what I
wanted to do is now this region has a
new ID and I would like populating back
and then I'll get the payment ID then
I'll get the order type ID I would like
to populate those all let let's start
working on the fat table so first of all
let's go to the sales base you click on
the sales base you go to the Home tab
you'll use much queries much queries is
new and I'm going to create a fact table
now and here I'm going to join with the
region base join would be the region
column region to region it would be a
left outer joint always prefer outer
joint in the favor of the base table
ideally it should match everything
unless we have null values so let me go
ahead and click on okay now when you
scroll on the right you see there is a
table now expand that uncheck this use
original column and we should have
renamed this index column we have not
renamed so we are going to rename it
here now so let me add this index column
and let me call this index column as
region ID now this I can use to join
back with my region table I will go back
into the region table and also try to
rename index as region ID now once I
rename it as a region ID the step which
you have already added into the merge
table might not work as expected so we
might have to edit the merge step I
click on the setting and I replace it
with region ID it is giving me a
question mark so I don't want that
question mark to continue here and I'll
delete this rename column and now you
can see the question mark has been
removed I got the correct name region ID
now I would like to rename this merge
one table as my sales fact table how do
I add the other things let's say if I
want to have payment how do I'm going to
add the payment ID here am I going to
create another version of this table or
I'm going to merge with this so I'm
going to merge with this so let's take
one example I will go back to the sales
based table right click and create one
more reference of it you go to the
payment method right click remove other
columns then again right click remove
duplicates then go to add columns add
index column from one and let's call it
payment method
ID now I need this ID in my T fact
before that let's call this table as
payment method now we want to merch the
payment method with sales fact so what
we are going to do here is we'll click
on the sales fact go to the one tab now
instead of much queries is you I'm going
to use merch queries inside the merch
queries you we will bring in the payment
method query also and we'll click on
payment method payment method and this
again is going to be left join click on
okay scroll to the right now you can see
payment method uh appearing as a column
and the column C is table which we need
to expand expand that we only need the
payment method ID we're going to take
that click on okay our fact is ready now
our facts and dimensions are ready and
I'm going to click on close and
apply and it is evaluating all the
tables so you can see it started on the
query for sales base item geography
rating connections loading data to the
model and the sales base table is
loading and respective other tables
which are dependent on that are also
getting the data the sales fact is still
not loaded because it is dependent on
all other tables like payment method
region now it started loading and you
might have seen that you know sales base
is not moving at all and dependent fact
table can load you might have also seen
that other tables were not loading as
many rows as the sales based table
and this is the advantage of taking the
reference now we'll go to the model view
I would like to show you how to create a
model in such scenario so because we
have the setting of detecting the
relationship it has detected the
relationship but those relationships are
not correct what I'm going to do here is
I'm going to delete those relationships
and going to create all the relationship
again one thing which I'm also going to
do here is I'm going to hide the sales
base I don't want to see that table now
I'm not needing that so I close the eye
here so it will be hidden now sales fact
is my main table payment method
geography item are around it so how do
we want to connect Item ID with item id
where is our item table so item id Item
ID on the item ID is is fact item id
equal to item id many to one single
directional join it is already
suggesting that so let's do that then we
will create region ID to region ID again
man to one single directional then we
have payment method payment method to
payment method this should be one to
many single Direction because we direct
from the payment method site
and now we want to connect with location
ID so location ID to location ID one too
many single directional click on save so
now we got all of our joints sorted out
this is the schema which has been
created let's save this file so this is
the star schema we have created from a
single file and this is very similar to
what we were creating using sales data
used in video or sales data used in
fabric file that was a perfect star
schema and the four tables were given
but here we have transformed to create a
star schema it has almost similar kind
of column the discount percentage here
is actual discount percentage so you
don't need to divide it by 100 you can
create column in power query you can
create column index you have the
additional Dimension which are coming in
order type customer you can also enhance
those like in customer you can add the
customer name as appending of customer
ID like customer space the ID that what
you can create either index or power
these are few of the things which you
can do and create the schema and try out
everything which we have done during the
this series or video and repeat that on
this particular data model and this data
is much better data and just to give an
example in visualization if you go here
and bring it from the item brand you see
some of the actual brand names which has
been created in this data and that is
why I always say this data is much
better data than the data which we have
it do have lot of variety I do have a
better version of this data which
contain little bit of more data and for
that you can ping me in the comments I
can give you a Dropbox link from there
you can take this file and load so this
is the way you use the power query
transformation to create a star schema
we had one table and from there we
created star schema there are scenarios
where you might have a snowflake schema
or a relational schema and from there
also you can merge and create star
schema so go ahead and try out those
different combination in this video we
are going to discuss how can you append
all the Excel sheets available into one
table so the case here is that I have
Excel where I have multiple sheets and
all these sheets I want to append into
one single table even if a new sheet
comes in I would like to put it into the
same table now how to get data for this
one so data for this example which I'm
going to discuss is available at my
GitHub account github.com Amit chander
pv/ powerb you can get the upend sheet.
XLS in this video I'm going to use the
download version of this file but I have
told you many times how can you directly
connect to this Excel sheet without
downloading it what you have to do is
you to click on this upend sheet.
XLS and I'm going to give this URL to
you which is the raw URL not the on the
top so I'm going to post the URL which
is right click on this copy link address
so in case you're directly reaching to
my GitHub account you have to open this
file and on the ra right click and copy
the link and this is the link you can
directly use as the web link in your
powerb desktop or web API Link in that
manner you will be able to directly get
this data onto the powerbi without
downloading it into your
desktop so let's understand the use case
with an example in the Excel sheet and
then we will try it out on the powerbi
desktop so basically what I have I have
these three item sheet and I want to
combine them and tomorrow there could be
a fourth one and if there is a fourth
one my requirement is that fourth one
should also get combined so in this case
what happen is if I try to get the
append idea the normal append idea where
I append the table how do I add the
fourth table do I need to modify the
code again and again so I need to have
some generic solution which can actually
help me so let's go and try out what
actually we do in powerbi so I came to
powerbi and powerbi what I would like to
do is basically I want to import this
exess sheet so in the center of the
power VI screen I have this option
import Excel I do have import Excel
option here also in the Home tab and
under the get data also again I will get
it the option I will use this import
option from the middle and select the
sheet upend queries and click on open
now once I do that I'll get all the
sheets and what is the usual ways that
click on all these three check check
check so when you check you get the you
are taking that inside the system and
when you simply click you just R the
data in instead of using the load data
or load I'll use the transform data
because I want to go to Power query and
combine this data isn't it that's what I
wanted so let me go to transform data if
I go to transform data and what usual
apparent method is there and let me
bring the power query on this screen if
I want to combine these three I need to
take that usual append method isn't it
so I need to go to you know append
queries append queries as new or upend
queries and then I need to say two or
more table and then I say item two and
item three
I click on the ADD and I do that and it
is going to append all three sheets SL
queries into the item one query or table
that's not something which I wanted
because let's go ahead and add something
here let's go ahead and add a new sheet
here I also want the header so let me go
back and take the row from the top and
paste it here on this sheet now I have
the header let me change the values 41
to 56 and 40 47 to
57 we can use this sheet let's keep
everything as same now I got one
additional sheet now if I go and refresh
this
data I don't get the sheet for so it
means there is no benefit of this so let
me do one thing let me discard all these
changes and do it again so I discard all
the
changes I come out I say discard all the
changes and I'll do it
again and now also so what I need to do
is I also need to delete the sheet let
me delete this
sheet and save it let me go back and
import the upend sheets Excel workbook
again and this time I'm only going to
select item one and I'm going to leave
out the other sheets with only sheet one
I'll click on transform data to reach
power query and start the transformation
again because I press transform data I
reach power query in power query I also
remove these steps now you can observe
that I'm seeing all the three sheets as
my source and the data is available
inside the data column if I go here you
can see that I see a table and that the
challenge with this table here is
basically the headers are not
promoted so I have the table which is
having the data but headers are not
promoted I can expand it I I can expand
it here and you will be very happy to
see that all the data is together but
what is happening here is this headers
are NSC then you will say okay we can
search the column name and then they
remove those rows and then do it but
what happens sometime you might have a
scenario where the column name which you
are taking might also exist in data so
for that what we are going to do is if
you are follower of the beginner series
you might have remembered we learned
function promote
headers and using that function promote
header we can actually do a promote
header in a table we are going to do is
today we are going to use that power quy
function so to do that what I'm going to
do is I'm going to go to the add columns
and I'm going to add a new column
remember here my complete data is
available as a table in the data column
in each row and if I click on the empty
space I can preview the
data always click on the empty space
don't click on the name otherwise it
will add an step let me add a new column
data 1 and inside this data one column I
will use the function table do promote
headers this function require one
argument and that argument is the table
for which it is going to promote the
headers means going to make the first
row as the header let me add data column
as the argument for this function I
double clicked on the name so once I
double clicked on the name it also
appear I can also type it will also come
in that case either I type I double
click in both the cases it will work so
now it's going to create one more Colum
column I created one more column now
look at this column for this column
headers are already promoted for each of
the row as of now there are too many
columns here and I can delete them I can
even delete the data column so let me
select the column which I doesn't requir
other than the name of the sheet which I
might require for the future references
I have selected all the columns which I
don't need and now I can use the option
remove column and remove all these
columns from the
table now I'll go and expand it is
suggesting me all these columns and I
say okay and then I can detect the data
type and change it so now I'm able to
expand and get the data together and my
all data is now lying together the
question arise will it take a new sheet
when we add it into the Excel so let's
go back to the Excel and try to add a
sheet and see what happens let me copy
couple of rows for the new Excel sheet
and click on the plus button and I will
call this as item 4 sheet and this item
four sheet I will add those couple of
rows and modify the data so item id 56
and item id 57 I'm adding here in the
sheet 4 save it and go back to the power
query and now we need to refresh this
data so let me click on refresh preview
you can observe immediately that item
four and its related data has come let's
go to the source and now we can see item
four there item 4 is getting processed
in each step after that it means the
data of the item four is carried forward
without doing any changes in the code of
power query if needed I can correct the
data types or I can simply go ahead and
click on close and apply and I will now
get this data into my powerbi desktop
and I can save the file and move on in
our journey to learn power query let's
learn power query by taking an example
and in this process we are going to
learn few power query functions so what
we wanted to do here is we have a text
which has certain number comma separated
and we want to create another text where
these numbers are sorted so let me take
you through an example so I have this
string where I have 7A 5A 6A 10A 11a 2A
4A 3A 8A 9 one so these are just
randomly placed here but I want
ascending sorted text 1 comma 2A 3 comma
4A 5A 6A 7A 8A 9A 10A 11 in a sorted
ascending order but it is a text in the
given order I want want these numbers so
how can I do that and to do that what we
are going to do is we are going to go to
Power query and solve this problem now
to solve this problem again from this
series learn powerbi I'm going to take n
to n14 bbx file and I am here on the
powerbi in that file in that file I'll
go to the Home tab then I'll go to
transform data transform data I have
reached transform data and in inside
transform data I want to add those
numbers which I have told you so I
already copied those number to get those
number inside a table I'm going to take
help from enter data now enter data is
something which is also available
outside power query you might have seen
that inside the reporting view
also let me click on the enter data
inside the Home tab it opens up a popup
inside that I'm going to give that
string and I'm going to name this column
text one and the table is thought
text I'll click on okay now this table
will get loaded inside the power query
and will be shown on the left hand side
as a query now the moment it get loaded
you can see it is showing a number and
we were never expecting a number and
this is because there is a change data
type step which has been added by power
query thinking that it's a number but
it's not a number we know it's a text we
don't want to perform this change data
type step I'm going to delete this step
from the right hand side and now I got
the way I wanted the number without a
data type number so it's a text data
type and this is the correct thing I
have what I wanted to do first of all to
sort this text into a string I need it
into a list format because in list I
have a function list. sort maybe in a
table format but here it is easy to do
all the operations in the list what I'm
going to do is first of all I'm going to
add a
column in the tab add column I click on
custom column to add a new column and in
this column I will first of all convert
this into a
list so I need the sorted text column as
a first step I will do this op operation
which is text. split text. split
function can take two argument and
convert a text into a list by splitting
it based on the separator so argument
one is a text argument two is a
separator and the outcome is a list so
what is my first argument text one and
the second argument is comma which I'm
going to give inside the double Cotes
and let me click on okay to get the
result results now you will see that I
got a
list and you can see this is the list
which I wanted and always remember
whenever you get these list or table and
you want to view them or preview them
into the bottom always click on the
empty space don't click on the list
because if you click on the list it will
add a step and it will become part of
your query and then you have to revert
it to come back so now it's created that
list so let me delete so I'm back to the
same place this is my list now I can
sort it using list. sort and once I sort
it you will realize I have one problem
now onwards I will keep on putting a
function on top of another function to
get the nire output so let's put on top
of it the function list dot sort I got
the function list do sort it requires
two argument the first argument is the
list and the second argument is the
optional comparison criteria
and you might have realized I have given
a space the reason for giving a space
before I selected list. sort is that it
should not replace the text. splits and
let me click on okay so we got a sorted
list let's have a look at
it so now what we have done is we have
used this list. sort function which can
take a list and it can sort it but you
can see this list is sorted in a text
format it is not being sorted as a
number because the list which you have
inside is actually a list of x x. split
converts into a list of text then how do
I convert them into the number so it
means before I sort it I need to convert
them into a number how do I do that
let's open the formula using the right
hand side setting icon to do that I need
to use another function and the function
I need to use is list dot transform
list. transform function and transform
the list based on a function the first
argument of this. transform is a list
and second argument is transform
function so what I need to do is I need
to use this transform function and for
that I need to Loop and for to loop I
need to use a keyword which is each and
I can use this each on underscore but
what I want on this underscore I want to
convert this text each text which is
underscore into a number so we have
function number from text and inside
that I can use this
underscore which will get converted into
the number now so let's look at it what
we got now so we got list. transform the
first argument is a list which we
created so the second argument is each
mean which is the looping function
number from text so from the text I'm
going to get the number and what is that
text which is underscore which is the
each element of the list we are closing
the list and let's try to close the
list. sort also no syntax error let's
click on okay now we got the list again
there's no error so let's click here now
you can see it is 1 2 3 4 5 6 7 8 9 10
so now the list is properly sorted in
the numeric order now we got a list so
we need to create a comma separated text
from that so now we need a function
which can concatenate this list let's
edit the formula once
again so let's look at one function text
do combine what does it do text. combine
can take two arguments first argument is
a list which is a text list and the
second argument is a nullable separator
it means the sep operator which is going
to be used when we combine and create a
concatenated text this function returns
text but there is a challenge it need a
list of text let me showcase you what
happened if I don't transform this list
as of now for first argument is a list
which is right now a number list and
second argument is a separator comma
which I have given here and let's try
out does it work does text. combine work
on the number list click on okay and it
start giving error and the reason for
the error is the type is not correct
right now it's a list of numbers so we
need to do the same operation in the
reverse manner which we have done some
time back the list. transform previously
has transformed this list into a number
list now the same operation need to
transform it into the XT so I have moved
down a code little bit so that I can
only understand this function so now
here I need list. transform again so I'm
going to use list. transform and on
list. transform now I need to do
operation which is basically again this
each
operation but not from text I now need
to convert into two text so number two
text is the operation I want to perform
and that should close my transform after
transform comma so that I give the
second argument of text. combine so what
is happening here is now this list.
transform is going to convert my list
which is already sorted which is coming
from list. sort into a list of text
elements and then the text. combine can
combine it into a comma separated string
let's click on okay and check it out
does it
work so now what has happened is we got
a comma separated text in which the
previous text Elements which were comma
separated are now sorted you can see I'm
getting 1 2 3 4 5 6 7 8 9 10 11 as a
text which is a comma separated number
text but it is sorted version of the
text one so this is what exactly we
wanted to achieve but while doing this
example we have learned text function
and list function which we can use we
also learned how to take advantage of
list. transform function which is very
powerful function which allows you to do
many transformation and this is just one
example of the transformation where I
want to transform each element into a
different data type but you can do many
other operations using list. transform
and I have covered these functions as
part of my beginner tutorial series
with some other examples also so you can
learn more about all these functions
using that particular series try out
this exciting example how do we make
sure that these changes are saved so we
can go to home close and apply so that
all our changes are part of now powerbi
and we can save this file by pressing
control s or by clicking on the save
button so let it load the data of the
sort text table and post that we can
save it so I'm saving it and you have to
try this example out you can create any
comma separated text for this video and
try it
out one of the best way to learn powerbi
or power query is to take up some
examples and try to solve them we are
going to take one example in this video
which is split and distinct why the
example will look very simple to you but
most of the time I found when people try
to solve this problem they take one
small step wrong and then they try to
solve it by a little different way which
is not so effective so let me first of
all tell you the problem the problem is
basically I have these comma separated
text like a comma B comma c a comma B
comma C comma D and so on I have many
like
what I want is across all these rows I
want the distinct codes which are
available like a b c d EF so basically
what is happening this is going to be
splitted and after splitting I need
distinct once I reach power ba I'll tell
you where when people answer this
question they commit the mistake so
let's try to solve this problem on
powerbi and to solve this problem I'm
going to use end to end4 file which we
are using for the learn power B series
and I am on that particular file right
now in the Home tab let me click on
transform data and inside the transform
data I will again click on transform
data and I'll reach to power query as
this is a very simple data this can be
created with enter data so let me enter
this data so I'll go to the Home tab and
click on enter data I will be able to
enter this data a popup is open and here
I'm I'm going to rename the column as
codes and I can call this table as codes
plate let me start creating the rows for
this table by entering the data let me
start typing a comma B comma C and in
the next row let me type a comma B comma
C comma D it is not necessary that you
type the same stuff what I given to you
you can have a little different version
that's absolutely fine
so this is the data I have and let me
now click on okay to get this data in
power query it will add a query which
I'll be able to see on the left hand
side the list of queries where I have
and I will explain you the
transformation needed to do that so I
got the table as soon as I told you this
problem the first answer comes to you
okay we will split it by delimiter yes
that's correct so you can right click
and do split by delimiter or inside the
transform tab you have the option split
column by Del limiter so from any of
these options click on that split column
by D limiter on this popup you have
various options the first option is how
you want to split it the default option
is comma and we have comma separated
string so we are going to use that but
you can change it you can even choose a
custom one second is split at leftmost
rightmost or each occurence in this case
we need each occurrence but depending on
the need you can choose next option is
Advanced options and inside the advanc
option there is a choice if we choose
the wrong one we may get little longer
solution we may still be able to achieve
it but that's not the optimal
solution in this Advanced option I have
option split into columns and rows but
usually people tell me that we'll split
by columns and then they tell you know
we will do unpivot and do that you don't
need to do that actually you have a
better option split into rows because
that will actually convert it into rows
and when you do split by column it do
ask you number of column so you're
limited by number of columns in case of
row you are not limited so if there are
four five six any number it will take
care of that split because it's going to
create new rows after you do that you to
click on okay now we got all the codes
into the rows and the next option is
very simple so I to right click and use
remove duplicates option let me click on
that and we got the desired outcome as
you can see this is the problem which we
can sort with what we have learned so
far there is nothing new but it is just
a use case to pay little attention how
are we going to achieve this I have kept
this use case for your reference you can
solve many other different Problems by
combining various power query operations
so try this out in this video we will
continue our journey of learning power
bi and power query with some examples
the example what we want to take here is
the split column but there is a Twist
The Twist here is that in the column I
have two set of values the one value is
a single value then there is a space and
then there's a comma separate value I
want to split them but the final answers
should contain them in Combined manner
so if you look here the best 1 comma 2
comma 4 is going to become best one best
two and best 4 similarly good one comma
4 will become good one and good four so
how can we achieve this again we are
going to use some of the things which we
have already learned in power query but
try to fit in this use case for this use
case also I'm going to use pyot data.
XLS which is available on my GitHub
account and that is the same file we
have already loaded in end to end 14 PB
so we can continue to use that
particular file those of you who are
directly jumping onto this part of the
video you have to go to my GitHub
account github.com amitchandak PBI
powerbi
you have to go down you will find a file
pyot data. XLS click on that one thing
is you can download this and use it or
the second thing is right click on the
raw don't take the URL from the top and
copy link and that is the link which you
can use as web URL in your powerbi to
load this data in this case I have tried
out this operation on a little different
file but you can continue with the file
you are already having the pyot data.
XLS file let's try this out on powerbi
desktop data. XLS has undergone many
changes over a period of time but for
this use case you should be able to get
the data inside the file but if you
don't get you should be able to create
this data easily using the enter data
option in power
query you should be able to get this
data inside the combined Split Sheet and
as we have discussed the best space one
2 and four I would like to split like
best space
one then I would like best space
two they would be in the continuous row
so let me move it up and best Space 4
same manner I'll get the data for nice
and good also so this is what the final
outcome I want but as of now let me
clean it up and let's keep this file as
is for our
uses this is not going to be a simple
split problem first of all we have to
split the name and the rank into
separate columns then we have to further
split the rank into multiple rows and
then we have to combine these again back
into one single column so two operations
going together split and combine let's
jump on the powerbi desktop I'm going to
load this data again but you can
continue with the file where you have
already loaded so I'm going to use
recent source and from there I'm going
to take pyot data. XLS and in the pyot
data. XLS I have all these sheets which
I have showcased you in the past from
here we would like to take the combined
Split Sheet which has the desired data
and directly go to transform data so we
will reach power query as our data is
complete text Data it might not detect
the first row as header so we have to
manually go and use first row as header
from the menu first step is to split the
column by space into two columns for
that we need the operation split column
by delimiter so split column is
available here I'm going to click on
that and in that we have many option I'm
going to use bu delimiter option let me
click on that it will open a popup in
the select delimiter it has correctly
detected the space as the delimiter
otherwise we can change it we have to go
to the Advance option and inside the
advance option we'll choose column and
we'll keep the value two which it has
detected correctly now we can click on
okay to complete this operation so we
got now two columns but when we look at
the second column we found that the text
which we are expecting is not correct it
is not comma separated value and the
reason for that is the auto conversion
you can see the data type is 1 2 3 there
is a step added change type two which is
converting it into the numbers previous
step has the comma separated value so we
need to delete this step once we delete
we'll reach to the last step where we
see the correct comma separated value
whenever you do power query operations
sometime the change type step is is
automatically added in such cases you
can delete such a step whenever you are
working on power query if something goes
wrong please check it step by step by
looking at what is happening on each of
the
step we need to split the second column
into the rows so again we are going to
use the split column option so let's
select this column and use the split
column by delimiting
and once we get the popup we can see
that it has correctly detected its comma
separated and in the advance we need to
use rows not columns for this time let's
click on okay to complete the operation
as you can observe that now we have the
values required but they are not in one
column they are in two column we are
getting best in one column one in second
column best and two in two different
different columns but what we need to do
is we need to combine them into one
single column so we need to perform
another operation for that now we need a
option merge column merge column is
available under the transform tab we
were on the Home tab that option is not
available in the Home tab that is
available under the transform Tab case
of merge columns the order of selection
is really important so first I'm going
to select the first column and then I'm
going to select the second column colum
if you change the order you may get a
different
result so let's select the first column
click and control and select the second
column from transform tab let's choose
merg columns a popup will open and here
we'll choose separator as space and we
will give a new column name which is
name rank and let's click on okay so now
we got the desired outcome the desired
outcome contains best space one best
space two best Space 4 and so on so this
is what we wanted and as you can see we
have used the standard power query menu
options only to achieve this power query
can solve many complex problem using
these menu options or the power query
functions the only thing is you need to
learn power query in details to achieve
that my advice would be to also look at
all the functions which we have
discussed in beginner tutorial series to
make sure that you are able to take full
advantage of power
query in this video we are going to
discuss subcategory index or subcategory
rank we call Ned rank or nexted index
there is a video from Kerbal on that
that is the inspiration for this video
yeah going to use the technique shown
there to get the subcategory index and
subcategory rank the function required
for subcategory index and subcategory
rank the rank and the index function I
have explained you already in the
beginner tutorial series you can watch
it there I will give you a brief
overview of those function here also let
me show you the two functions I'm
planning to use today the first one is
table do add rank column and the second
one is table. ADD index column both of
them we have already discussed inside
the beginner tutorial series now the
challenge which we are going to get here
is this function works at table level so
I cannot give a kind of a partition to
give me subcategory Rank and that is
what we have to learn how can we make
them to work for a particular portion of
the table or partion of the table or
category or subcategory for example
let's say my table has Brand I want
everything to rank inside a brand from
one to any for subcategory index and
rank what I'm going to use is I'm going
to use the pivot data XLS which is
available on my GitHub and that is the
same file we have already loaded in end
to end 14 PB so we can continue to use
that particular file those of you who
are directly jump jumping onto this part
of the video you have to go to my GitHub
account github.com amitchandak PBI
powerbi you have to go down you will
find a file pyot data. XLS click on that
one thing is you can download this and
use it or the second thing is right
click on the raw don't take the URL from
the top and copy link and that is the
link which you can use as web URL in
your powerbi to load this data in this
case I have tried out this operation on
a little different file but you can
continue with the file you are already
having the pwot data. XLS file let's try
this out on powerbi
desktop I'm on to the powerbi desktop
now let me go to the Home tab transform
data and transform data in power query I
already have multiple queries or tables
and one of the table I have is this pyot
data I have called name subject and
marks and here name can become that
logical division inside which I can rank
or index my subjects so let's first try
out to add the subcategory index by name
so for that we need to use the group by
function first to group this data so I
click on name and I'll go to transform
inside the transform I have option Group
by operation Group by and its functional
I have already explained in this series
and in this video also I have explained
same thing in beginner tutorial series
and I'm going to click on that option
Group by in the popup I will see name as
Group by also observe a new column name
as count and the operation as count
which I'm going to change to all rows
that will disable the column option
let's understand what we are trying here
we are trying to group this data by name
and we want a column which contain all
the rows so the operation is all rows
and now I would like to click on okay to
get this transformed table I do that I
see a column name and a column count
with the table inside each row if I
click on the empty space I can see what
data each table contains table has name
subject and marks for each name the next
step is to add column from add column
custom column so let me first of all
name this column as index the function
which I'm going to use for this is
table. ADD index table. add index can
take table index column name start
position increment and the data type to
give us the index argument would be
count which is a table comma second
argument is the name of the column which
I wanted to give which is sub index
comma now it is not showing because
table is doubled out here so I'm going
to remove the table and now it will
suggest me after the comma so I want to
give the start position which is one
increment which is one and it is asking
for a data type as the last argument
which I can give index 64. type so we
have to return a type and here I'm
returning index 64 close parenthesis and
click on okay try to look into the data
of each table now I can see sub index
inside it and now what I can do is I can
delete this count column it is no more
required and then I can expand this
index column and I can uncheck the name
because I no more need that and let's
click on okay once we expand that you
can observe that the indexes are inside
the name and after that they are
repeating inside the second name and
that is what we want wanted to achieve
index is typically based on the order of
loading it is not based on the marks or
the subject or anything else and that is
where we need the rank column to Define
order based on a column to Showcase you
subcategory rank we are going to do a
little complex operation and I'm going
to Showcase you how can you add another
table inside the same code so first
let's delete these steps and reach till
the step we have edit column where we
have the table let's remove the steps
and reach to the table and we are going
to open that step Again by click on the
setting icon I will now showcase you how
to do complex operation in a column for
that first of all let's move this table
down and write down let and after that
we need to create variables for the
table so let me put this table inside
one variable and put comma after that in
next line I'm going to put another table
name and here I'm going to do the
operation table. add rank column so tab
one has index and in tab two I'm adding
rank to the same tab one which is having
index let's remove the duplicate table
and now understand the syntax of this
one so we require a table which we are
getting from the last step the next one
is the column name which we are going to
give the rank column name and the third
argument is the one by which we are
going to decide how we are going to rank
and to do that I Gove back to the
documentation and bring in what all
values I need to give so I'm going to
copy this and I'm going to change it
once we reach back to our code so let's
take this and put it inside our code
onto the power query we need to provide
our own column name in place of Revenue
which is the rank column and the column
which we plan to use here is the marks
that is what is available in our data in
the double quote then the order is fine
I can keep order. descending next thing
we need to Define is the rank kind and
we are going to keep the values what we
have got from the code so rank kind is
equal to rank kind. competition we are
going to keep it same what we got from
the documentation as of now now we need
to return it because we have used let so
we need to use in and we need to use in
in small and after that we need to
return the underscore tab two click on
okay to complete this custom
column now if You observe the table you
can see the index as well as rank
instead of adding the multiple step what
we have done in inside within the same
custom column we added both of them now
you can see rank is based on the marks
while index is based on the order we
loaded the dat
and when you do the rank column it does
change the sort order of the table so
that is why first you should do the
index operation and then you should use
the rank operation in case you need both
of them together in the rank we have few
more options which we can explore so
let's go back to the formula and here in
the rank kind I can choose different
options competition dance ordinal and
type so those of you who have already
worked on the rank knows that the dance
rank is little difference in case of the
dance rank we get the next rank whether
the rank repeats or not so if you look
below here you have a rank which is one
two and then we have the two again and
then we have four so basically it is
kind of a skip rank but what we want is
dance rank it means one two and three so
even if there is a skip we should be
able to get the next Rank and that is
what happens in case of Danse rank so
let's make it dense Rank and try it out
so now let's look at the data so we have
the different different kind of R let's
look at some different Row in this row
itself if you see one is repeating but
we still have two after that then in
this one also we have one two two but we
have next rank is three so basically
even if the rank is repeated the next
continuous rank is coming the count
column we created using the group by is
no more needed we can delete it now
let's expand the data by using the
expand icon on the right top we can
remove the name and click on okay and
now we are getting rank as well as index
inside our table the subcategory rank
and the subcategory
index so here we have used the table
operations and table operation is
something we have not discussed in this
video or series a lot but you can go
ahead and watch the beginner tutorial
series to understand in depth how to use
table operations and if you want to
execute those operation at the grouping
level or subcategory level you can
utilize the trick I have shown you in
this
video we have learned a lot of powerbi
stuff and now we are ready to create the
pages report pages on the powerbi
desktop which we want to share with
other user to sh share it with other
user we need to publish the file publish
the file to powerbi service powerbi
service is nothing but app. powerbi.com
and from there we are going to share it
with other user we'll have a quick
overview of powerbi service in powerbi
service the report has to go to a
workspace and that particular workspace
is something which we should create and
in that workspace we are going to
publish this file after we publish this
file the file will get divided into two
part right now it's a single file here
in the case of import mode there it will
be divided into data set semantic model
or data set and the visualization file
ideally speaking we don't want to create
any visualization in the file where we
have the data model and the measur we
want to publish it and use the data set
as a live connect and create the
visualization there and because of the
same reason what I've done is I've
deleted all the pages because I don't
want to create visualization on this
file I want to separate out my model
development from my visualization but
before even if I publish this empty file
and this empty file because it has one
page it's going to create a
visualization file which we may not want
it to use we can come back use the data
set and create a file now before I
publish this I need to make sure that my
Majors should get organized in proper
manner I should clean up unnecessary
stuff so definitely I don't have any
unnecessary table because what we have
done during this entire video we have
made sure that we Crea different
versions of the files and whatever is
not required we have not added to this
but we have different places where we
have Majors so some of the majors are
lying here and there in the customer
table we have so many majes so
definitely would like to restructure
that and to restructure we already
learned that you can go to the model
view and into the model view tables this
is the best place to move the majors
across so let's say I have these brand
gross brand net brand brand net to Brand
all these you can control and click or
shift and click you can do that isn't
it and I'll not collect the brand color
because color major I want separate so
all these brand color where should they
where they should go already there are
in the major folder these are my filter
measures I filter this so I can create a
folder filter I can add them there so
they will be moved to a sub folder now
brand color category color they are
color measures so I can put them into
color folder and whatever folder I
create I need to remember the name
because if a new thing come in I I need
to move that in now I have gross two
gross three gross this gross Max sales F
sales I need to move to others now what
I'll do I'll similarly create few
folders like time intelligence this that
and reorganize all my majors
also the majors which are in the
customer table I would like them to move
to the major table and put them
somewhere inside the
folder I moved them into the major
folder then I select all of
them and then I can move them into
display folder which is TI time
intelligence these can also move into pi
so I am almost done with CLE cleanup I
have mostly organized the labels inside
the major folder other than one or two
exception which I wanted to keep in
different tables now one of the
preparation which you also required on
the desktop is to install on promise
Gateway but what I've done is basically
I have used the files which are on
GitHub which is basically online so I
don't require on promise G but if you're
using sources like Excel sheet SQL
Server which is on promise you need to
install on promise Gateway and typically
on promise Gateway need to be installed
on a machine where it can be up and
running always and it should have access
to Excel files those local databases
which you have and that will help you to
refresh your data set on powerb service
which we'll understand in a short while
once everything is ready we are ready to
publish the file now but before we
publish the file let's understand what
is this powerbi service and how do we
create a workpace where we can actually
publish our data so we will go to
powerbi service understand its component
quickly create a works space where we
can publish this file after publishing
this file we have a data we will get the
data set back and create a report now we
can create a report on powerbi service
or we can create a report on powerbi
desktop both are possible once we do
that let's save this file go to powerbi
service understand it component create a
workspace come back and publish this I'm
on powerbi service powerbi service is
nothing but app. powerbi.com make sure
you have created your login as I
explained earlier either you have been
assigned a license by your admin and you
have got the login for app. powerbi.com
you're using that or you create the one
now app. powerbi.com which is also known
as powerbi service or the web version of
the powerbi is for collaboration it's
for sharing whatever content we create
we share that content using powerbi
service with other user now to share the
content of powerbi you need licenses you
need Pro licenses you need PPU licenses
or you need capacity Pro users can share
with Pro users PP users can share with
PP user so that is user based licenses
but if you buy a premium capacity which
is either P1 P2 or P3 in these
capacities first of all you get
exclusive capacity to run your powerbi
which is needed for large organization
application but in the premium capacity
only for designers you need license and
you can use Pro license for that before
premium capacity every user whether it
is a designer report designer or report
Creator or report viewer everyone
requires a license but after you get
premium capacity not everyone require
license viewer doesn't require license
in powerbi service workspace you can
create app and you can assign that to
unlimited number of users when you come
to powerbi service you will see few
sections and let's understand these
sections I'm right now at the Home tab
and where I'm seeing this recommended
recent favorites and my app on the left
hand pane I have create for new report
browsing the content one leg data Hub is
for the Microsoft fabric which is again
accessible using app. powerb
and I've enabled the trial so you will
see the content of Microsoft fabric then
app in case we create the service app we
will have the apps here in case you have
created matrices you will have them here
monitoring Hub in case you have access
to monitoring Hub you will have it
workspaces which are essential for data
sharing are available here and my
workspace my workspace is the workspace
even if you're a free user you will have
your own workspace that is known as bike
workspace Now to create your own
workspace you need to be a pro user and
you also need to have permissions from
your admin to create these workspace now
workspace in power powerbi world it's a
container of resources like report
paginated report dashboard we have
something known as powerbi service
dashboard which is different from report
most of the time for practical purpose
what we call report in powerbi is as
good as dashboard in the bi world but we
have a powerb service dashboard where we
can put in the content from various
other reports so all these components
can be put into one thing which is known
as workspace from workspace I can apply
Ro level security RLS I can distribute
the content to the selected set of users
all these is possible using the
workspace so first of all what you are
going to do Under This workspace there
is a button below new workspace I'm
going to create a new workspace I'm
going to give it as a name and because
we have created end to endend video so
we are going to give it as a name end to
end description is also end to end I
have not created any domain so I'm
leaving it I'm not also giving an image
under the advance instead of trial I'm
going to use it pro I have a pro license
or PPU license I can create that Pro is
basically minimum license required for
sharing or PPU so we can create a
premium per user workspace and and when
you create a premium per user you can
use large semantic model also format
also we are using the powerway reports
so PPU workspace or premium for user
workspace we are creating and now click
on apply the moment you click on apply
it will open your workspace which is
empty and when you click on the new it
will show what all components which you
can create in powerbi service report
pated report scorecard dashboard
semantic model data flow it is also
known as now data flow gen one data M
and streaming data sets the more options
contain these as as well as what you can
use in Microsoft fabric you can watch my
series on Microsoft fabric to know more
about these you have so many things I'm
leaving that explanation right now we
are only focused on the powerbi content
so Microsoft fabric you can watch the
videos on Microsoft fabric let's go back
to the workspace you can upload certain
content from one drive SharePoint on the
workspace you can create a app app is
for the sharing we will learn that you
can manage the access you can share this
workspace with the other people you can
give the name and share it and there are
four types of role admin having access
to everything member having access to
app but not having access to admin
whatas contributors having access till
reports but not having access to app and
viewers only have the viewer access you
can look for an article powerbi workpace
roles and always get the latest on what
a particular user can do and as you can
see here various capabilities has been
defined what each user type can do and
remember the RLS or the RO level
security only applies for viewers so all
the users mostly are going to be viewers
so then we have workspace settings we
are right now only interested in couple
of settings that are related to powerbi
general setting and in this one the
important setting which if you want to
allow your users to update the data set
then you need to allow this model
setting they will be able to update the
model online using this so you need to
check that and allow contributor to
update the app if there was a feature
where it was written if allowed this is
that if allowed you want to allow the
contributor to update the app then you
can allow that okay so now the
contributors can also update the then
data connectors no changes embed code
right now no changes rest I'm leaving as
is now we don't need for our initial
learning that one so these are the
setting for the workspace now if you are
a powerbi admin you will also be the
settings which are under admin portal
under the admin portal most important
settings are lying under the tenant
settings definitely if you have capacity
then you you would go to premium per
user and capacity settings also then
there are organizational visual settings
which are separately available if you go
there you have the visuals then you can
add them there workspaces and custom
branding Etc is there in the tant
everything which you do on power B
service can be controlled you want to
give the help information you can give
and most of the settings if you enable
them they have two to three options for
entire organization for specific
Security Group and these are emailed
enabled Security Group anything which
you want to use on powerb service it
should be emailed enabled and accept so
most of the time you will get these
three setting sometime you may get one
or two but that depends on that
particular setting this is basically to
get the help I disable it and cancel it
email notification if you want to
receive your custom messages now
workspace want to allow to use the
create workspace or not I have allowed
it for the entire organization use
cementing model across workspaces means
I create a workspace I create a model or
data set in one workspace and I want to
use it in another workspace so what
would we will do is we'll create the
data set in workspace and reports in
another workspace so that particular
users of that workspace will not see the
data set in that particular workspace so
these kind of stuff we can do block user
from reassigning personal workspace my
workspace so we have disabled that they
can't reassign the personal workspaces
Define workspace retention period you
can define a workspace retention period
so basically deleted workspace can be
recovered after that there you have n
number of feature like every export you
can do like publish to web is controlled
copy paste visual is control on service
export to excel from service is control
export to CSV is control download report
is control all the features which which
are available on powerbi service most of
those menu items are controlled from
here including which SSO is enabled
which is not enabled there are certain
visuals which are allowed or not allowed
including your map visuals all settings
are available here developer setting
admin API setting gen one data flow
people can create it or not template app
and you want to create the app Q&A
settings semantic model security block
republish and disable refresh package
that setting is available advanced
networking using a your private link
metries setting user experience
experiment share data settings inside
setting data Mar setting data model
setting quick major settings scaleout
setting one leg setting G integration
setting so many settings are there we
can spend days in explaining those but
this is all for admin user but right now
we are learning basics of powerbi so we
are more bothered about our workspace
and what we are going to do with that so
we have a workspace ready and once we
have the data set here we will be able
to create report online now we have
given in this workspace to edit the
model we will be able to edit the model
also the only thing as a pure play
powerbi user which you cannot do is you
can't create a data set on powerb
service most of the other thing you can
do you can create report you can modify
report you can edit data set but you
will not be able to create a model or
add new content here you can't create
connections and bring it so what we are
going to do here we going to publish a
report we will also learn data set
dashboard and app here in the powerbi
service which are basic feature one must
know so let's go back to the powerbi
desktop publish a report come back here
and see what we are able to
create we are back on powerbi desktop
and here we have a report where we don't
have any visualization we have just
created one page because we wanted to
implement the pattern of having
visualization only to be used on a data
set file after it has been published
this is a file which doesn't have any
local database all online database it
will not require on promise Gateway for
refresh I'll go to the Home tab of this
file and I'll press on
publish I have made sure that I have
logged in using the same user which I'm
using on app. power.com so let's click
on publish and it will ask me to save if
the report is not saved and post that it
will showcase me the
workspaces my workspace available for
everyone every kind of user even for
free user usually not used for sharing
so we should not keep a report into the
my workspace which we want to share it
is for personal content and we should
avoid using the content which you want
to share so we are going to put the
content into end to end which is the
workspace we have created for
sharing let me click on end to end and
click on select and this action will
publish the
file it's giving the message that it is
publishing end to end file to powerbi
which is nothing but powerbi service
meet or
collaboration so file has been published
success sucessfully onto the powerbi
service and now we can go and check out
our file on powerbi service I clicked on
got it and let me jump onto the powerbi
service quickly on the powerbi service
I'm able to now see after the page has
refreshed two things one is report which
is only have one page anytime you
publish a PBX you will get a report and
the semantic model or data set the
semantic model is a new name we usually
know it by the name data model or data
set in the case of import mode it will
contain both data and meta in case of
direct query it will only contain meta
in case of live mode we are going to use
the data set which is published already
so the report will contain the small
information about the majors which we
are going to create so now we have our
semantic model and using this semantic
model we can create the report either in
powerbi desktop or on powerbi service so
first of all what we are going to do
here is we will check this semantic
model what we can do out here if I click
on that it will open this UI for the
semantic model where I have file
download this file means I will be able
to download the data set manage
permissions on this data set who can do
what on this then I can refresh refresh
now schedule refresh history it means if
I want to refresh the data I can refresh
it from here I can share it I can
explore this data I can create a few
visualization here just exploring
without even creating a report then in
the explore data I do have option for
autocreate report create create blank
report create paginated report I can
analyze in Excel by clicking on this so
if I click on this it will create an
Excel file for me and there my data set
would be attached and using this data
set I will be able to create pyot tables
and analyze it you want to see lineage
lineage means from where this data is
coming on which report it is going all
this is going to you are seeing this
open data model button because we have
allowed data model editing on the
powerbi service in our workspace setting
and because of that it is showing this
option and if you click on that it will
open the data model and you can change
few things out here you can create new
major new column new table you can
create using the Dex formula you can
create new calculation groups you can
manage roles manage relationship and
create new report on powerbi service
that many things you can do in the
semantic model on the online version
once you allow to edit it calculation
groups has been added very recently on
power our bi service let's go back to
the UI so these are the things which we
can do so what we are going to do is we
will quickly now have a look at few of
these things like creating a report here
and desktop and creating a dashboard uh
we will avoid editing of data model we
have done a lot of work on the powerbi
desktop and things would remain same
here we have published our file without
any visualization on powerbi service and
we got a centic now we would like to use
that centic model and create the
visualization file and this is going to
the file which we are going to use for
creating the end user reports or Dash so
go to the Home tab and inside the Home
tab now you need to go and grab the
powerbi semantic model now this
connection which you are going to do
with the CCH model is known as live
connection and live doesn't mean it's
kind of a direct query on the database
it is as good as what you have refreshed
your data set but this particular file
is neither going to on the data or not
it is going to on on the model the model
is coming from the SCE so RLS and
everything is controlled at the
cementing model level so what I'm going
to do here is I'm going to take this end
to endend model and going to create a
report out here with the all the kind of
visualization I have taught to you till
now you have to click on semantic model
which you want to bring in and connect
and it will create a live connection
once you create the live connection you
will not be able to add new table new
columns all those are not allowed the
moment this model is loaded you will see
you only have have access to the report
View and model view the access for
everything else is gone the data View
and everything you can see the model
here but if you click on any of the
table you don't see option for new
column new table new calculation group
manage Ro view rooll everything is
disabled you can't do that so you are in
kind of a view only mode for this model
it means it's the best condition to
create the visualization so what I'll do
is I will create this report I will try
to have one or two pages in this one and
while I'm creating this report you just
observe you I have already taught you
all the features how to create different
kind of slicer Pages visualization Etc
what I have done uh which I realized
after starting this file is that uh the
images which I have used uh brand image
brand URL and image URL as columns has
not worked so I added measures for that
just by taking Max of those columns and
I'm going to use them here so I'll
quietly build it and I'll speed this up
when this video will get displayed what
you can do is you can build report of
your choice and later on those
visualization can be used inside your
dashboard on powerbi
service
e
e e
so what I've done is I've created a
single page and I'm going to publish
this uh and you can create a page which
you would like to have more details
usually we will have multiple pages and
communicating the message I just created
one example here how what kind of page
we can create uh but based on the design
and requirement you can create the page
and now what we are going to do is we
are going to publish this but before
publish it's going to ask us a name so
I'm going to save it and I'll call it
and to and visual file this is visual
file you can give a name of your choice
or as per your organization standard I'm
right now giving this name because I
want to just differentiate that it's a
visual
file and we going to publish it to the
end to endend workspace only we are not
going to create a different workspace
for this the file is published now we
will go on powerbi service and check
this file we would also like to create a
new report there and let us see how
things are different in powerbi service
compared to powerb
desktop I'm back on powerbi service and
let's go to end to end to check the
newly published report end to endend
visual the report has opened and as you
can see in end to endend visual report
we got our report which we have created
on the dashboard we got the slicer which
we can click and filter the
data so this is the viewer View and this
is how viewer is going to use it
remember I am an admin admin viewer
means I have the admin privilege on this
workspace so what I'm getting in my
menus could be a little bit more than
what and user is going to get here so
I'm able to filter then same way like
desktop we can slice and dice using the
visual interactions and data will get
filtered across as I have a single page
as of now I'm not seeing the page menu
but here once you have more than one
page you will be able to see a small
Arrow icon to take you to the different
pages if you click on the file you have
option save as a copy again I'm admin
because of which I'm getting but viewers
might not get it depends on the
permission which we are providing to
them download this file manage
permissions print this page embed report
generate QR code settings these
permission all depends on which kind of
access we have given to the end user I'm
admin viewer so I'm getting all these
again export option analyze in Excel
PowerPoint PDF depending on the viewer
access now if you go to the visual there
are these filters which are available
then there is a set aler option then
copy this as an image again copy this as
image if you remember we have this
option control which all users can do
and then you have this pin visual which
we will be using while creating the
dashboard you have option to share on
the top you have chat in the teams
explore this data get inside subscribe
to the report set alerts and edit and as
I'm having permission on this workspace
to edit the report I will be able to
edit that report and again these are
some additional permissions which I can
see here now as a viewer you will also
be able to see filter pane now the
filter pane you will only be able to see
if the filter pan is enabled we can hide
the filter pan while creating the report
then users will not see once user click
on any of the visual just like I've
created on this tag bar visual they will
be able to see the visual level filters
also few more things which they can do
is view we they can view as a full
screen cape and come back then they have
this fit to page
fit to
width and actual size all these option
they can also explore then there's a
comment users can give give a comment
out here you can click on got it and
then you can start writing down the
comments this is for the
collaboration we close the comments then
you have this Mark as a favorite if you
click on this this report will be marked
as favorite so what I'm going to do here
is I'm going to click on edit and I will
try to modify this report what I'm going
to do here is I'm going to create a
little bit of space and for that I'm
going to delete this card Visual and
also let me do one thing I'm going to
make this slicer as a normal button
slicer so I'll create it as this kind of
a slicer and then I'll go ahead and go
to the slicer setting and I'll create it
as tiles now with these changes let me
go ahead and further do more changes in
this report in the edit mode and
showcase you what all we can do in the
edit mode I can even modify the model
because of my setting I can add a new
page and create additional visualization
here so let's I can plus a a page and I
can call it as detailed page and I can
add additional visual to that page let's
say I want to add a trend I can bring in
month year here and I can bring net and
then can I can convert this into a line
visual I can add additional visuals
here so so here I have added a page in
this manner you can edit a report on
powerbi service and you can save it now
there are various options in a powerbi
service report so if you go to the file
you can save save as new copy print if
you want to print the current batch you
want to embed this then you can generate
embed code this is the embedded code
which you can use then embed in
SharePoint online you can get the code
for embed SharePoint online publish to
web now publish to web is a permission
which we need to give and once we give
this content would be available publicly
now my content is basically learning
content so I can publish it to web but
your organizational content you should
not publish it to web you should instead
use uh the other secure ined method
export to PowerPoint you can export it
to PowerPoint with the current value or
with the default values two options
exclude hidden Pages only export current
pages and in that manner you can export
it to PowerPoint it will generate a
PowerPoint and you will be able to use
it also in PowerPoint we have a
connector for powerbi which can be used
to connect with the pages of the powerbi
report live then export to PDF and
download this file means it will
download PBX in the view we have fit to
page fit to width actual width and all
these options uh we can see different
page like if the selection pain is not
coming I can see that if the bookmark
pain is not coming I can use that if the
SN slicer pane is not coming I can
enable that insides pan I can enable
that so all these things I can enable
right now I'm disabling those reading
view we will come out of the edit view
let's go back to the edit View and then
open data model then you have options
for ask a question data drill text box
you can add shapes you can save this
report and chat in teams and generate QR
code analyze in Excel you can download
and analyze this report in Excel these
things you can do now let's go back to
the reading mode and check out more
options let me give you quick recap of
the menu items we have here so the file
options now has save a copy download
this file manage permissions embed
report QR code and settings so these are
the setting for the report the report
name the description if you want to
promote endorsement if you want to
promote this report to the users you can
use that and there are a few other
options which you can use export analyz
in Excel PowerPoint we have already
checked out PDF you can share this
report with the others user I can assign
it to the others users in the
organization I can share the link mail
or teams or PowerPoint I can chat with
the others user regarding this report in
teams I can further explore this data by
opening the explore data I can get
inside subscribe to the report I can
create a subscription for this report to
come to me on a given time I'm
discarding that I can set a alert alert
can be set on a major for a value high
or low so threshold greater than or less
than on which major I need that what
kind of notification I need and I can
start my alerts once that setup is done
and then we have C related contain
lineage view means from where this
report is coming pin to a dashboard so
pin a dashboard here will pin the
complete page on the dashboard on the
individual visuals we do have a option
to pin them to the dashboard that we can
use to pin the individual visual on the
dashboard other than that we have option
view semantic model which we have
already seen it will open the santic
model and then there we can go ahead and
open the catic model again so means this
is going to led us to the first screen
of the semantic model then there is an
open semantic model after that we can go
ahead and edit that and as you have seen
we have enabled the option to edit it in
the powerbi service so we'll be able to
edit that now other than that in case
your organization have the f64 capacity
onwards or P1 capacity onwards you will
be able to use this co-pilot option to
ask various question both in the viewer
mode as well as in the edit mode and
then you have the bookmarks option you
can add the personal bookmarks or you
can click on the show more books marks
to see what all already existing
bookmarks are there so now what I've
done is I've covered basically most of
the options which you have in the
powerbi service report in the edit mode
as well as the viewer mode so you have
to go ahead and explore all these
options these option keep on changing
and they keep on increasing also as in
when we get new features so continue to
look towards what features are available
onto the release which is available at
at that particular moment of time now I
would like to create a dashboard
dashboard can only be created on powerbi
service remember powerbi report which we
created on the desktop is not the
dashboard in powerbi World dashboard is
something which we create on powerbi
service and to do that what I'm going to
do is I'm going to open my report which
I have recently published and in that
one I have pin icons and using those pin
icons I'm going to create my dashboard
remember powerbi dashboard cannot have
slicers unless we pin the complete page
so once we pin the complete page then
only we will have the slicers individual
visuals will not have slicer we cannot
pin the slicer and even if we pin the
complete page the slicer with that page
is going to impact the section in the
dashboard which is coming from that page
not the other visualization so remember
these difference between powerbi service
report and dashboard and take a call
whether you really want to create a
dashboard or you want to create a report
I'm back on powerbi service and let's go
to end to end to check the report has
opened let me go to the detailed page
and as you remember we have these three
dots on three dots we have this option P
to a dashboard that can pin the complete
page to the dashboard including the
slicers remember when in powerb service
dashboard you cannot add slicers so if
you go to the individual visuals if I go
to here on the main page if I go to this
visual you don't see a pin icon but in
this one you see a pin visual so pin
visual will add it to the powerbi
dashboard but powerbi dashboard cannot
have slicers you can't pin the slicers
so if you want the slicers you have to
pin the complete page so in this manner
you can pin the visuals to a dashboard
and create a powerbi service dashboard
you can pin the visuals from multiple
reports on powerbi service dashboard and
you can use that and instead of pinning
individual visual from the first page
I'll pin the complete dashboard and let
me give this dashboard as a new name is
main Dash Pin live so I have pinned this
it's giving me go to dashboard option
but I would like to pin a visual and
then we will go there then I go to the
detailed report and from there I'm going
pin this line visual main Dash as well
as I'll pin this P visual main Dash and
now I'll go to the dashboard now when I
click and go to the dashboard you can
see that I have my page as well as my
two visuals which are coming here I can
change a little bit of layout if I want
then I can ask certain questions here
within Q&A it will generate the Q&A I
can ask top customers by Citys Nets and
it will generate a visual so that is the
advantage of giving a dashboard to the
end user that they can ask questions and
using those questions they can get
additional answers if I want to edit
this dashboard I can edit I can
subscribe to this dashboard I can chat I
can comment on this dashboard by adding
additional comments here I can click on
any of the visual and analyze the data
now because I bought a complete page it
is doing the interactions also now in
the case of the single visual the moment
I click on that visual it will take me
back to my report let's look at the edit
mode you can add the tile dashboard
theme mobile layout these things you can
do with the dashboard now subscribe to
dashboard I can create a subscription
for dashboard to deliver to me at a
particular
time and on the right hand side if you
pay attention whatever reports and
dashboard we have open you're getting
the icon for that and you can close it
so I close the dashboard my report is
open I can close my report my data set
details is open I can close those data
set details once you are done with this
entire exercise of you know creating a
powerbi report and dashboard and
everything the next thing which you need
to do is schedule your data refresh now
to schedule your data refresh what you
have to do is you have to go to the
setting of your semantic model and then
there you have option for scheduling the
refresh cementing model is available in
your workspace and using the three dots
you can go to the settings and there
from there you will be able to schedule
the refresh also in case you are using
the on premise data then there is an
option to configure your on promise
Gateway settings and connection settings
you can edit as per requirement inside
the semantic model settings only so
let's jump onto the workspace once again
and try to refresh the data set and see
what all things we can do in my case I
have a online data so I would not
require on promise Gateway simply
refresh should be able to refresh my
data and also I can schedule it in my
case because the data is static there is
no benefit of scheduling it but in real
time scenario you have to schedule a
refresh now in case of pro you can get
refresh as many as eight times in a day
in case of PPU and premium you will be
able to schedule refresh 48 times in a
day if if you want near realtime data
then you have to choose for direct query
mode I can go back to my workspace which
is already open and here what you can do
because it's a online version I can
actually refresh my data set to bring in
the data schedule refresh has been
disabled refresh as failed let's look
white as failed so first of all let's go
to the settings and check out everything
is fine here so I go to the setting here
when I scroll down and go to data set
setting there is error here edit
credentials and we will use anonymous
organizational and we'll say sign in
let's see does it work out yes it has
worked now let's go back again and see
do we require a permission or this time
it's going to refresh it's refreshing
right now if you see and to check the
refresh history you can go to the
settings again three dot settings
refresh history it will show you the
refresh is in progress and once it is
refreshed it will give you a message
that refresh is
completed and the refresh has completed
while we were checking that out and new
data has come so in this manner you can
refresh the data but before you refresh
the data what you have to do is because
I was only having up one data source and
my data source was online data source it
does not require Gateway otherwise you
have to configure on promise Gateway
right now it is the cloud connection but
you might have to configure on promise
Gateway if you're using on promise
sources once you configure your on
promise Gateway you have to configure
your data source credentials after doing
that if there are certain parameters
required M query parameter if you used
we can to set those query cacheing in
case you want so you can turn on the
query caching refresh this is the
scheduled refresh I can schedule it to
refresh daily on a particular time so
once I click on on I need to add a time
and then I can apply and now it will get
refresh daily at 1:00 a.m. right now I'm
disabling it because I don't want it to
happen server settings this is my server
data connections then Q&A features all
these are data settings which we can
change let me go back to my by workspace
so now you know how to refresh your data
set also now whatever Gateway and
connections we have where do we monitor
those so in the setting icon you can go
to manage gateways and connection and
here you will be able to see all your
connection under the connection if you
have set up on promise Gateway you will
be able to see on promise Gateway in the
past I have set up a on promise Gateway
that you are seeing if there are virtual
Network gateways you will be able to see
it here so in this manner you will be
able to see your connection details and
Gateway
now let's quickly understand how can we
create a allog together new report on
powerbi service using a data set so
there is an option on the Home tab or
there is a create button here on the
left hand side top once you click you
can paste data manually or you can pick
up a publish data set I'll pick up a
publish data
set end to end autocreate report or
create report from blank you can use
autocreate report and powerbi will
create a report for you I'll create a
blank report just to explain it to you
and I am on the very similar UI what saw
in the
edit report now here I can quickly
create a visual I'll just go to create
one visual for giving an
example I have created a visual and now
I can save it so when I save it for the
first time it will ask me a
name and let let me call it service
report and click on Save the moment I
save it for the first time it will take
me to the reading mode after that when I
go to the edit mode and now save it it
will remain in the edit mode so in this
manner you can edit your reports or
create new report on the powerbi
service service we have a version of
power query online where we can
actually transform our data centrally
that is known as data
flow now the reason why we have data
flow here on the powerbi services
basically what happens sometime multiple
teams use similar kind of power query
transformation and that is why we want
to centralize those transformation that
is why on powerbi service we can create
data flow data flow can centralize all
these
transformation in the fabric world we
also call it data flow gen one now data
flow are for data prep data cleaning and
data transformation you can use data
flow just like you use power query on
the desktop once you do the
transformation you can use it as a
source on power ba desktop to create
your new report in a Ideal World we will
create a data flow for our Dimensions
where we need lot of transformation or a
small table where we need need a lot of
transformation we can centralize all
those transformation in the data flow so
we can have a dimension in the data flow
then we will use this data flow along
with our facts directly coming from the
sources into a data set we will publish
that data set which is a powerb desktop
file we'll publish that data set without
creating a visualization and once that
data set is published we'll use it again
and would create a visual file I'll just
go to give you how do you create a data
set so press new and data set you will
be landed on powerbi data set here you
can define a new table link table from
other data flows import mode means you
can import a model attach common data
model folder okay so I'll use this add a
new table it will L me to the UI to
bring in the data and here I will use
this web API in the web API I will bring
in my data from GitHub so let me go to
the
GitHub and bring in my file says data
used in video I click on that right
click on Raw copy link go back to the
powerbi service give this
URL I have already used it so it is not
asking for any further details press
next and I can add all of
them and then I can click on transform
data it it will add the data to the
power bi data flow and here I can do the
transformation clean data prep
everything now if you remember in the
sales table I added some column index
the same columns could have been added
to the powerbi data flow or power query
also I can go here and can use add
column and can add a custom column let's
call it
gross and gross is nothing but quantity
multiply by price and I can give it as a
data type decimal number okay in the
same manner I can use other columns and
then I will be able to complete my
transformation once I'm done with all my
transformation I can go ahead and use
Save and close to save the all the data
in my data
flow it's going to check and it will ask
for a name I'll will call it sales data
flow and I'll give the same
description I'll save it how it is
really important that the data flow by
default doesn't load data so the very
first time you need to refresh it now so
you have to click refresh now now
typically on D Gen 2 which is on
Microsoft fabric Auto refresh kick off
immediately after publish but this
doesn't happen in data flow gen one we
have to manually kick it on every time
you do changes you need to do a
refresh you can close it and when you
come here on your workspace you should
be able to see this data flow and you
can go to the refresh history to check
if the data is loaded or not in our case
the data is already loaded here now what
we need to do is we need to go to the
powerb desktop and use this data
flow so I'll open up a new
file on powerb desktop I'll open a new
file the new file is opened and here now
I want to bring in data from powerbi
data flow so I'll use get data more and
there I need to go to data flow I can
search for
that I got option for data flow power ba
data flow Legacy data
flows so they are coming from different
different places so let's use powerbi
data flu Legacy and use
connect let me try to sign in
let me use
connect and in the end to end I able to
get my data flow from here I can pick up
all the four tables and load the data
from here I have to do all the steps
which I've done during this exercise
creating the model measures all the
calculations field parameters
calculation group Etc and then finally
publish this and once I publish this
file I'll get a data set and I can use
that data set again to create my
visualization as you are already aware
of all those steps you can try that out
I will simply share it as a new and to
and
file in this manner you can use powerbi
data flow to centralize all your
transformation data preparation and data
cleaning
in powerbi workspace we have app this
app has a really important role when we
want to share the content with the users
and we don't want to give these
workspaces kind of a look to them so
what we typically prefer is we give them
an app access so what we going to do is
we are going to use this create
app and we can give it as a name let's
say bi app can give a
description we can choose a color for
our app and and we can upload a logo for
that then we can go to the content and
add a
Content so we can add the reports which
we have end to end and service report
okay all these reports we can add
multiple reports we have so we can add
those
reports now inside each report if there
are multiple Pages it's going to show
those pages and we can see those pages
so we have multiple content which
is now how do you differentiate content
for different people so when you go to
the audience actually you have these
show hiide buttons using these show
hiide buttons you can create different
kind of audiences so you can say new
audience you created a new audience now
see this is bi app this is new audience
now this new audience I can refer as
let's say service only I want to give a
service
report so I'll give a service report to
that audience and I can hide other
things let's say I can hide these only
will have service report then I can give
the users who will be audience of
service report in powerbi app I can give
the audience who will be audience of B
app if you want to give it to entire
organization you can choose entire
organization but there's no benefit of
creating multiple audience if you are
giving this report to entire
organization now there are Advanced
option like allow people to share the
data set in this app audience allow
people to build the content with this
data set in the app audience so you can
give those permission as per requ
requirement usually what we do is we
assign it to users or to the emailed
enabled list and then finally after we
decide our audience decide the reports
so in this workspace I can have n number
of reports out of those reports I can
decide which I want to add in app and
out of those reports I can decide which
reports will go to which audience so
once I'm done with that I can publish
this app and this will be shared with
users in the content I can add some
headers sections and all those I can
divide these reports inside the category
and all those I can do so I can create
different sections also so let me
finally publish this app and it will be
published it will show a URL which you
can copy or you can click on go to app
you can share this URL with the users
and this will now open powerbi Service
app and you can see with the chosen
color we are seeing the app and this is
the better way to give it to the end
users they can have access to multiple
reports at one place and we don't have
to share each and every report they have
very similar options what we had in the
powerbi service so they have print this
page embed report QR code
share export and remember all these are
controlled from the permission what we
have given at the tenant level so in
this manner you can create and share an
app if you remember when we were
analyzing the data on powerbi service we
have downloaded one Excel for analyzing
EX ex this is the same Excel I have
opened up and also enabled the content
and I'm getting now all my data which I
can analyze here and here also I can
create a pyot table you can already see
there is enablement of pyot table H so I
can go here and choose certain things
let's say I can bring in brand on the
row and then I can bring in certain
majors for
analysis and I can start my analysis in
this manner if you are a Excel user you
still like to be an Excel user but you
don't want to you know download the data
and analyze it you can simply connect to
this data set you need to have
permission to for that and once you have
permission you can do that it is not
that you can always have to do analyze
in Excel you can go to the data and in
the versions depending on what version
you have inside the get data you do have
option to connect Power Platform and
there you can connect with powerbi and
you can again create similar kind of
visualization so you can initiate
process from here also so now I can save
this and keep
it another thing which we have done is
we have downloaded this PowerPoint so as
you can see this PowerPoint has been
downloaded it has been created as
image so what we can do here is we can
add a new content and try to use the
powerbi plugin so we have a powerbi
plugin to connect live and get the data
from powerbi directly so I'll add a new
slide here a new blank slide and inside
that new slide let me add this powerb
plugin in the newer version which is by
default available in the older version
you can go ahead and add it from the
adding now it needs a URL to get this
URL I need to go to the powerbi service
report and in the powerbi service report
this is the report I have which is right
now open so I can go to share copy
link copy this link come back and paste
it inside our PowerPoint
click on insert and this is inserted now
into the PowerPoint and if you go here
in the data option you have the refresh
option you can get the new data you have
the Data Insights you have filter
section you can filter the data you can
hide the filter section you can enable
the filter section there are few more
options like clear data learn then
outline all these options are available
so basically you can connect live you
don't need images now when I downloaded
it came with images now I can have a
PowerPoint with the live connection and
in that one I can embed the my
visualization and I don't need to go
back to powerb service while doing the
presentation itself I can slice and dice
the data so let's look at this first
page now it is a static image I can't
slice and dice isn't it but if I go
ahead and add this page let me bring in
that particular page so close this go to
the main page share copy link copy copy
this let's go back to the PowerPoint add
the power VI plugin give it a space
paste this URL insert and now I have my
page is it working look at this I
analyzing data here on
PowerPoint I'm no more going back to
Power I can go here filter the data here
the data is reflect changing based on
interactions I can go here and select
States whatever I
like and the data will keep on filtering
so in this manner I can have a dynamic
slide on on my PowerPoint and I can
analyze the data directly from powerbi
service page which is embedded here and
to give more space you can hide the
filters as I shown you you don't need
that section what happens when you're
doing the presentation you have lot of
content but your power ba content is
static now you can make that content
that Dynamic by using this powerb
plug-in in PowerPoint instead of
downloading this static image you can
use this and create Dynamic slides on
PowerPoint friends you have reached to
the end of this video you have covered
20 hour of detailed video along with me
in learn powerbi full course I'm hopeful
this video would have enhanced your
powerbi knowledge to the next level and
now you are a pro in
powerbi powerbi is a journey it's just a
beginning friends this is just a
beginning with this video you are now
appr pro powerbi professional to become
expert take full advantage of 600
another videos on my channel also go to
community. powerbi.com and try to solve
some of the problems by solving
Community problem and providing solution
is the best way to take your powerbi
journey to the next level this is the
same thing I have done for years serving
Community will help you in deep
understanding of the powerbi concept and
will help you to solve real time
problems there would be no lack of
realtime problems once you reach to
powerbi community so friends I would
like to thank you for your patience of
watching this 20 hour video please like
share and comment on this video share it
with your friends and relatives and
anyone who is looking to start the
powerbi journey thank you have a
wonderful 2025
Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.