Filters by assigned Portfolio (Project) and Team

In this article, we gathered examples of useful Advanced Filters for Views and Visual Reports that help to select, hide or highlight data by assigned Portfolios (Projects) and Teams.

Filtering data with Portfolios (Projects) and Teams selector

In general, we recommend to use Portfolios (Projects) and Teams selector to filter out your entities by assigned Portfolios (Projects) and Teams.

However in some sophisticated cases the capabilities of this selector do not fit your needs. One of the cases is multi-level hierarchical list views.

Important:

The selector is applied to all levels of hierarchical lists. For example, if you have a list view showing Epic > Feature > User Story hierarchy, and you apply 'Team ABC' selection with no other options, then the view shows you only User Stories assigned to the team, having parent Features assigned to the team, having parent Epics assigned to the team.

Should this happen, you're welcome to try using one of the filters described below. The filters may serve as acceptable workaround solution for missing Hide Empty Lanes in List Views capability.

Important:

It is not possible to refer to current context (selected portfolios (projects) and teams) in filters so far. Instead, you have to manually list portfolios (projects) and / or teams one by one in your saved filters.

Filtering by assigned Portfolios (Projects) and Teams

Project, Assigned Teams and Responsible Team fields of User Stories and other Assignable entities are used in order to filter a work item by the project or teams it is assigned to.
Entity Filter Result
Assignable ?Project is 'iOS App' cards in project "iOS App"
Assignable ?Project is not 'iOS App' cards outside project "iOS App"
Assignable ?AssignedTeams.Where(Team is 'Alpha') cards with team "Alpha" assigned
Assignable ?not AssignedTeams.Where(Team is 'Alpha') cards without team "Alpha" assigned

Filtering by Responsible Team

Multiple team may be assigned to the same entity but only one of them can be Responsible at the same moment of time. A team is defined as Responsible when:

  • Entity is assigned to the Team
  • Team workflow is configured
  • An entity is in Project workflow state that is mapped to some state in the team workflow of this team
Entity Filter Result
Assignable ?ResponsibleTeam.Team is 'Alpha' cards with team "Alpha" set as responsible
Assignable ?ResponsibleTeam.Team is not 'Alpha' cards without team "Alpha" assigned as responsible

Filtering by teams assigned to nested items

Entity Filter Result
Feature ?UserStories.Where(Project is 'iOS App') features with user stories in project "iOS App"
Feature ?not UserStories.Where(Project is 'iOS App') features having no user stories in project "iOS App"
User Story ?Tasks.Where(AssignedTeams.Where(Team is 'Alpha')) user stories with tasks with team "Alpha" assigned
Feature ?UserStories.Where(AssignedTeams.Where(Team is 'Alpha')) features with user stories with team "Alpha" assigned
User Story ?Tasks.Where(AssignedTeams.Where(Team is 'Alpha')) user stories with tasks with team "Alpha" set as responsible
Feature ?not UserStories.Where(ResponsibleTeam.Team is 'Alpha') features having no user stories with team "Alpha" assigned as responsible

Deep level nesting is also supported.

Filter for Features:

?UserStories.Where(Tasks.Where(AssignedTeams.Where(Team is 'Alpha')))

Filters for Epics:

?Features.Where(UserStories.Where(AssignedTeams.Where(Team is 'Alpha'))) ?Features.Where(UserStories.Where(Tasks.Where(AssignedTeams.Where(Team is 'Alpha'))))

Filtering by the team you are member of

It is possible to display only entities where the assigned or responsible team is a team that you are a member of. Me keyword is used for this purpose.

Entity Filter Result
Assignable ?AssignedTeams.Where(Team.TeamMembers.Where(User is Me)) entities assigned to your team
Assignable ?ResponsibleTeam.Team.TeamMembers.Where(User is Me) entities for which your team is responsible at the moment
Assignable ?AssignedTeams.Where(Team.TeamMembers.Where(User is Me)) or AssignedUser.Contains(Me) entities assigned to your team or to you personally

Support for 'Me' keyword in Visual Reports

Note:

In Visual Reports Me keyword represents the user who is creator of the report, and not the logged in user who is viewing the report. At the moment Administrator cannot create single Visual Report for personal team assignments that could be used by multiple team members. Separate reports should be created for each individual team member with filters by Login / Email / First and Last name applied instead of Me.

Filters for portfolios (projects) and teams

Filtering Portfolios (Projects) by related Teams

TeamProjects collection of Project entity is used in order to filter projects by teams assigned to it.

Entity Filter Result
Project ?not TeamProjects.Where(Team is 'Alpha') projects with team "Alpha" assigned
Project ?not TeamProjects.Where(Team is 'Beta') projects with no team "Beta" assigned
Project ?UserStories.where(AssignedTeams.Where(Team is 'Alpha')) projects with user stories assigned to team 'Alpha'
Filtering Teams by related Portfolios (Projects)

TeamProjects collection of team entity is used in order to filter teams by projects they are assigned to.

Entity Filter Result
Team ?TeamProjects.Where(Project is 'iOS App') teams with project "iOS App" assigned
Team ?not TeamProjects.Where(Project is 'Android App') teams with no project "Android App" assigned

Filters for users

ProjectMembers and TeamMembers collections of User entity is used in order to filter teams by projects they are assigned to.

Entity Filter Result
Person ?ProjectMembers.Where(Project is 'TP3') People assigned as members to some known Project
Person ?ProjectMembers.Where(Project is 'TP3' and Role is 'Developer') People assigned as Developers to some known Project
Person ?TeamMembers.Where(Team is 'Alpha') People assigned as members to some known Team
Person ?TeamMembers.Where(Team is 'Alpha' and Role is 'QA Engineers') People assigned as QA Engineers to some known Team
Assignable ?Assignments.Where(GeneralUser.ProjectMembers.Where(Project is 'TP3')) Work assigned to members of some known Project
Assignable ?Assignments.Where(GeneralUser.TeamMembers.Where(Team is 'Alpha')) Work assigned to members of some known Team
Person ?ProjectMembers.Where(Project.ProjectMembers.Where(User is Me and Role is 'Project Manager')) People assigned to Projects where current user (you) have Project Manager role
Person ?TeamMembers.Where(Team.TeamMembers.Where(User is Me and Role is 'Scrum Master')) People assigned to Teams where current user (you) have Scrum Master role