Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
udhaya2089
Frequent Visitor

Dynamic Visualization.

Hi Everyone,

 

I have to create a Power BI Visual based for bunch of Customers. Each customer have same visuals and only the data will be changed.

for example On first page, I need to create three matrix visuals for three customers. Can we loop through this anyway based on the customer column to create the visuals.?

 

 

3 ACCEPTED SOLUTIONS
JoeBarry
Solution Sage
Solution Sage

Hi @udhaya2089 

 

Why don't you use RLS https://learn.microsoft.com/en-us/power-bi/enterprise/service-admin-rls

 

this way you only need to create one visual. 

 

Thanks

Joe

View solution in original post

Hi @udhaya2089 

 

Regarding the title, you could look at this video, this shows how to create dynamic cards which you could use for the Visual header names https://www.youtube.com/watch?v=ISacusJ1Dss 

 

With RLS nothing changes with the visuals, all users see the same visuals, but just the data that is setup in RLS that they are allowed to see.

 

My example is one of many ways you can implement RLS.

 

Lets say you want to show data on a department level, the Table with the Sales information has a DepartmentID in it. This table has a relationship with the DIM_Department table. Within the DIM_Department table, you have also the email address of the department lead in another column. This email will be used later to define who sees what. But you also need an Admin Role, someone who sees everything. 

 

The Admin, lets say CEO is in charge of the Corporate Dept, but see everything, In this case create an Admin column in the DIM_Department table.

Admim = IF(DIM_Department[Name] = "CEO_NAME", then 1, 0]

 

In the ribbon, click on manage roles. New Role, give it a name. Highlight the DIM_Department table and enter a dax code like this

 

IF(
MAXX(
FILTER(
'DIM_Department',
'DIM_Department'[LMEmail]=userprincipalname()),
'DIM_Department'[Admin])=0,
'DIM_Department'[LMEmail]=userprincipalname() ,
1=1
)

 

After uploading to the Service, you will need to assign the people or an Azure Security group to the role. 

 

Please note that Anyone who is a member of the Workspace where the dataset is uploaded to will have access to all data.

 

View solution in original post

HarishKM
Impactful Individual
Impactful Individual

Hello @udhaya2089 
You can create 3 matrix table and then you can filter to select a perticular customer for a matrix or you can easily use slicer to slice and dice the same viz for your selected customer 

Thanks
Harish M

if my solution is fulling your requirement. Kindly give kudos and accepted it as solution 

View solution in original post

4 REPLIES 4
HarishKM
Impactful Individual
Impactful Individual

Hello @udhaya2089 
You can create 3 matrix table and then you can filter to select a perticular customer for a matrix or you can easily use slicer to slice and dice the same viz for your selected customer 

Thanks
Harish M

if my solution is fulling your requirement. Kindly give kudos and accepted it as solution 

JoeBarry
Solution Sage
Solution Sage

Hi @udhaya2089 

 

Why don't you use RLS https://learn.microsoft.com/en-us/power-bi/enterprise/service-admin-rls

 

this way you only need to create one visual. 

 

Thanks

Joe

Hi Joe,

 

Thanks for Providing your thoughts on this. Still one user have same visual with multiple data points. Like By country, By user and By department. The same kind of visual should be repeated and we don't want to use the parameter or Slicer in that and the title of the visual also changes..

Hi @udhaya2089 

 

Regarding the title, you could look at this video, this shows how to create dynamic cards which you could use for the Visual header names https://www.youtube.com/watch?v=ISacusJ1Dss 

 

With RLS nothing changes with the visuals, all users see the same visuals, but just the data that is setup in RLS that they are allowed to see.

 

My example is one of many ways you can implement RLS.

 

Lets say you want to show data on a department level, the Table with the Sales information has a DepartmentID in it. This table has a relationship with the DIM_Department table. Within the DIM_Department table, you have also the email address of the department lead in another column. This email will be used later to define who sees what. But you also need an Admin Role, someone who sees everything. 

 

The Admin, lets say CEO is in charge of the Corporate Dept, but see everything, In this case create an Admin column in the DIM_Department table.

Admim = IF(DIM_Department[Name] = "CEO_NAME", then 1, 0]

 

In the ribbon, click on manage roles. New Role, give it a name. Highlight the DIM_Department table and enter a dax code like this

 

IF(
MAXX(
FILTER(
'DIM_Department',
'DIM_Department'[LMEmail]=userprincipalname()),
'DIM_Department'[Admin])=0,
'DIM_Department'[LMEmail]=userprincipalname() ,
1=1
)

 

After uploading to the Service, you will need to assign the people or an Azure Security group to the role. 

 

Please note that Anyone who is a member of the Workspace where the dataset is uploaded to will have access to all data.

 

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.