Show the Required Categories from DimTable when not present in FactTable

Hello,
I have a report that tracks the credits of the employees where each employee has a job title/profession, and a Major they have/should have and the courses they should study and the number of credits they need to take.
I have MasterTrainingCredit table which has College,Major, Required Courses and credits required.
MasterStreamSubject table that has College,JobCode,Profession,Major.
CourseMap that has Course,RequiredCourses and the trainingPlan.
EmployeeDetails with Employee name,ID, their Manager and their Manager etc.
A fact table that has the details of Courses,Credits,When they Earned the credit,Name,ID and College.
Attaching a copy of my pbix file.
One Table shows the Required Major , required courses and Credits
The other shows the Name of the employee,Major and the credits that they have taken.
The way I did shows only the progress of how many credits have the employee taken.

  1. If I would like to show the progress by also showing the other categories, and a zero next to it in the Earned Credits when not taken, show required credits accordingly.
    For example, Emp11, he has taken only Basic Math and Excel Skills. I would like to show English and Science as well in the Matrix visual under Major Category with Req Credits next to them and ‘0’ for Earned Credits.
    How can we do this?
    Would a naturalleftouterjoin Or Cross with facttable and the MasterTrainingCredit work? Crossjoin would bring the combination with other categories not required as well.
    Appreciate your help in solving this!

Thankyou in advance
LMSTest.pbix (138.2 KB)

  1. When an employee logs in in service, since the employee slicer is set to single select, it will be set to one employee. But if someone else logs in, they will have to change to their Name. Is there a way that the user logged in can see his details without selecting their name?

I looked at your model. Are you publishing to cloud or report server? Can you set up row level security? https://docs.microsoft.com/en-us/power-bi/admin/service-admin-rls?

I am Publishing to cloud. But, the scenario is one should be able to filter the employee from the slicer, but should be able to see their details when they login. In RLS, doesn’t it remove other users data?

Hi @Vsb79 - Please find responses below.

  1. I have made use of Disconnected table and used If/Filter logic to determine the required values. Please check attached solution. There is a filter on Earned Credits to remove other Majors.

LMSTest.pbix (139.8 KB)

image

  1. There is no option to change Slicer to login user EmployeeId. As rightly said, RLS will limit data for Login user with no data for other users.

Thanks
Ankit J

Thank you @ankit for the solution. It did work in my report. I also used the video from EnterpriseDNA by Sam McKay(https://www.youtube.com/watch?v=Rii_6qkLNh8) to fix the totals.

But, I have a scenario where there might be cases when an employee takes courses outside of the mapped major and required courses. For example, like in the updated attached file, you will see that the employee Emp1 has taken physics and that I can show as other Credits. But for Emp14, who does not have a major takes a course in the Required Courses category(like Basic Math,English,Excel Skills, Science) in this case Math1, English2 and Physics, since Emp14 is not mapped to a major, his credits does not show.
How can we show the details for Emp14?
It should show like below:



LMSTest_E - Copy.pbix (144.0 KB)

If the above have to be shown, would we have to do joins between the tables that are used?
In my report, there are a lot of employees that take courses outside of the Major, that dont map to required courses, and there will be employee who do not have a major. And there are a lot of courses that they can take which does not map to a major. But needs to be shown in the report.

Thank you for your time and inputs! Really appreciate it.

Hello @Vsb79, good to hear that @Ankit’s solution worked on your report.

However, please be reminded that asking more than one question in a forum thread and asking question after question in the same forum thread around the same project or piece of development work is considered inappropriate.

You can create a separate thread for your other questions related to this inquiry so that other users can easily check the details of your queries.

For further questions related to this post, please make a new thread. More details can be found here - Asking Questions On The Enterprise DNA Support Forum