Each table that is exported has its own filtering process. Some tables have filters that combine (concatenate) data, meaning that the more items you select, the more data will be included in the resulting set. Other tables use filters to remove data by filtering out certain values.
For example, let's look at the Sprint Issues table. In this table, the filter combines data. When the "Filter by Issues" (default) filtration scheme is applied and filtered by projects, boards, or sprints, the process is as follows:
Projects Issues are loaded by filtering projects.
Boards Issues are loaded by filtering boards.
Sprints Issues are loaded by filtering sprints.
All unique issues are combined into one list.
Sprints associated with the unique issues list are loaded.
The unique issues are exported page by page along with the corresponding unique combination of issue and sprint.
If we apply filters by projects, we will get rows of unique combinations of issues and sprints. First, the project issues are loaded based on the filtered project, and then the sprints associated with the filtered unique issues list are loaded.
If we add filters by boards, we will create a concatenated list of unique issues filtered by both projects and boards, and the sprints associated with those issues will be included in the export. As a result, in this example, we will obtain additional rows by combining the results of the two filters, resulting in a unique combination of issues and sprints.
Once we add Sprint filter values, we will have a concatenated list of unique issues filtered by project, boards, and sprints, and we will export a unique combination of issues and sprints.
As a result, in this example, we will obtain additional rows by combining the results of all three filters, resulting in a unique combination of issues and sprints.
Let's now look at filtering the Sprint Issues table by applying the "Filter by Parent Boards" scheme. If we filter the table by projects, boards, or sprints, the filtration process will proceed as follows:
Loading boards by filtering projects.
Loading boards by filtering boards.
All unique boards are combined into one list.
Loading sprints by unique parent boards list.
Loading sprints by filtered sprints.
All unique sprints are combined into one list.
Loading issues by unique sprints list.
All unique issues are combined into one list and exported page by page with the corresponding unique combinations of issue and sprint.
For example, if we apply filters by projects, we will get rows of unique combinations of issues and sprints. The boards will be loaded based on the chosen project filter, and then the sprints will be loaded by the unique boards' list. Finally, the issues will be loaded by the unique sprints list.
Suppose we apply filters for projects and boards. In that case, we will see rows of distinct combinations of issues and sprints. The boards will be displayed based on the selected project and board filters, and all unique boards that meet the filtering criteria will be combined into a single list. Next, the sprints will be loaded based on the unique boards' list, followed by the loading of issues based on the unique sprints list.
As a result, in this example, we will obtain the same amount of rows by combining the filtering results, resulting in a unique combination of issues and sprints.
If we use filters for projects, boards, and sprints, we will get rows of unique combinations of issues and sprints.
Based on the selected project and board filters, the boards will be displayed, and all unique boards that match the filtering criteria will be combined into a single list. After that, the sprints will be loaded based on the unique boards' list. The sprints will also be filtered and combined into a single list before loading the issues based on the unique sprints list.
As a result, in this example, we will obtain additional rows by combining the filtering results, resulting in a unique combination of issues and sprints.
If the Software Tables Filter is not applied, the data is exported page by page with Issues filtered by Basic filter values. If no basic filter is applied, the data is exported page by page without any filtering.
Let's take a look at the Sprints Report Charts table as another example. If the Software Tables Filter is applied, following the filtration scheme by Projects, Boards, or Sprints, the process is as follows:
Boards are loaded based on the selected project filter, and then all unique boards that meet the filtering criteria are combined into a single list. Next, the issues associated with the filtered boards are loaded based on the Boards Configured Filters. The Sprints are then loaded based on the Issues list and filtered according to the Sprints Configured Filters. Finally, the chart data is exported page by page with the corresponding unique combinations of Sprint and Board.
In summary, the Sprints Report Charts table is filtered based on the selected project, board, or sprint, and then the corresponding data is exported page by page with the relevant unique combinations of sprint and board.
If we activate filters by projects and boards in the Sprints Report Charts table, the filtering results will be combined or concatenated.
If we add additional filters related to sprints after filtering by projects and boards in the Sprints Report Charts table, we will get a result set with less data.
Therefore, each exported table has its unique filtering flow, allowing for maximum flexibility in filtering options.