A Microsoft extension to the ANSI SQL language that includes procedural programming, local variables, and various support functions.
Thank you for reaching out.
This issue happens because the relationship type does not match the real data. Each employee appears only once in the Employee table, but the same employee can appear many times in the Training table if they attended multiple courses.
Because of this, one‑to‑one is not correct and Power BI blocks or breaks the relationship.
The correct approach is to treat the Employee table as a lookup (dimension) table and the Training table as a transactional (fact) table.
Steps to fix it:
- Keep Employee Code unique in Table 1 (Employee table).
- Create a One‑to‑Many relationship:
- One side: Employee table (Employee Code – unique)
- Many side: Training table (Employee Code – repeated)
- Set cross filter direction to Single, from Employee → Training.
- Keep the relationship active.
- One side: Employee table (Employee Code – unique)
- Use the Active / Inactive flag only as a filter (report filter, slicer, or DAX). Do not create a separate relationship for Active/Inactive.
This follows the standard star schema model used in Power BI. It avoids ambiguity, keeps filters working correctly, and matches how Power BI expects semantic models to be built.
references:
Please let us know if you require any further assistance, we’re happy to help. If you found this information useful, kindly mark this as "Accept Answer". So that others in the community facing similar issues can easily find the solution. Your contribution is highly appreciated.