combining-reporter

{combining-reporter}

Plugin: Reporting Plugin, from version 3.0.0

This reporter combines the results of multiple sub-reporters into a single list.

Usage

{combining-reporter:unique=true}
  {xxx-reporter:...}
  {yyy-reporter:...}

  {xxx-sort:...}
  {xxx-filter:...}
{combining-reporter}

Parameters

Name Required Default Description
unique
false
If set to true, this will ensure that each item is only returned once, even if it comes from multiple reporters. Note: This will have a performance penalty due to the uniqueness checking.
intersect
(Since 3.2.0) If set to true, only items that occur in all reporter results are returned. If set to false, only items that occur in only one set of reporter results are returned. Note: This will have a potential performance penalty due to the intersect checking.
matchAll
true
If set to 'false', content matching any of the criteria will be returned. Otherwise, the content must match all criteria.

Examples

Combining two sets of pages

This will display all the children of two separate pages into a single, sorted list.

{report-list}
{combining-reporter}
  {local-reporter:content:children|source=Foo}
  {local-reporter:content:children|source=Bar}

  {text-sort:content:title}
{combining-reporter}

{report-body}{report-info:content:title|link=true}{report-body}

{report-list}

Getting items that occur in all result sets.

You can perform an 'intersect' on the result sets, where only items which occur in all sub-reporter result sets are returned.

In this example, we want a set of users who are both 'confluence-administrators' and 'project-managers' (Note: a better way to do this is with {user-reporter:groups=+confluence-administrators, +project-managers}).

{report-table}
{combining-reporter:intersect=true}
  {user-reporter:group=confluence-administrators}
  {user-reporter:group=project-administrators}
  {text-sort:user:name}
{combining-reporter}

{report-column:title=User}{report-info:user:full name|link=true}{report-column}

{report-empty}_No users found._{report-empty}

{report-table}

Getting items that occur only in one set of results

You can also do the reverse of the above, and only get results which occur in one set of results (an 'exclusive or' in set terms).

{report-table}
{combining-reporter:intersect=false}
  {user-reporter:group=confluence-administrators}
  {user-reporter:group=project-managers}
  {text-sort:user:name}
{combining-reporter}

{report-column:title=User}{report-info:user:full name|link=true}{report-column}

{report-empty}_No users found._{report-empty}

{report-table}

Labels

macro macro Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.