Checking which plan is assigned to a specific user (Essential, Premium, Team Member) is become a quite different thing with the Wave 2 release (version 15).
Users plans are now managed in the System Application via the Azure AD Plan module. The Plan and User Plan tables are now marked as internal, so you must use the methods provided in this module to query them.
How can you check if a user is an Essential, Premium or Team Member user with the version 15 release? You now have a query object called Users in Plans and you can use this object to retrieve the plans assigned to your user.
For showing how to do this with the version 15 release, I’ve created a small extension that adds an action to the User Card page and then calls a GetUserPlan method defined in a custom codeunit. The method is defined as follows:
The method uses the Users in Plans query by filtering for the USERID to check and then retrieves the Plan_Name and User_State fields.
Output is like the following:
Not so clear why a query object instead of a codeunit, but that is…