Try this one:
[
Basis.ContractMedewerker/Basis.Contract/Basis.FormatieContract/Basis.Formatie
[
Basis.FormatieAfdeling/Basis.Afdeling/Basis.Managers = '[%CurrentUser%]'
and Einddatum > '[%BeginOfCurrentDay%]'
]
]
The problem with your queries is that you're checking for employees that meet the following criteria:
I've formatted your second query to show the difference compared to my query:
[
Basis.ContractMedewerker/Basis.Contract/Basis.FormatieContract/Basis.Formatie/Basis.FormatieAfdeling/Basis.Afdeling/Basis.Managers = '[%CurrentUser%]'
and
Basis.ContractMedewerker/Basis.Contract/Basis.FormatieContract/Basis.Formatie/Einddatum > '[%BeginOfCurrentDay%]'
]
You'll notice the entire path from 'medewerker' to 'formatie' being repeated: this is why any employee that has any combination of 'formaties' that together meet both criteria is turning up in your result. In my query the path only appears once, which tells Mendix you're looking for any 'medewerker' that has a (single) 'formatie' that meets both criteria by itself.