&|Elements/Wrapper, %ARGS, title => loc("Resolution Comments"), 
    path => "Reports/Activity/ResolutionComments.html",
    &>
| Queue | Ticket # | Created | Resolved | Time to resolve | 
| Resolution comments | 
% for my $item (@items) {
| <% $item->{queue} %> | <% $item->{id} %> | <% $item->{created} %> | <% $item->{resolved} %> | <% $item->{duration} %> | 
| <% $item->{whiteboard} %> | 
% }
&>
<%args>
$query => 'id > 0'
$start => "2005/01/01"
$end   => "2006/01/01"
%args>
<%init>
use Time::Duration;
my $summary_tickets = RT::Tickets->new( $session{'CurrentUser'} );
$summary_tickets->FromSQL(
    $query . " AND (Status = 'resolved') AND ( Updated >= '$start' AND Updated <= '$end')" );
my @items;
while ( my $ticket = $summary_tickets->Next ) {
    push @items, {
        queue    => $ticket->QueueObj->Name,
        id       => $ticket->id,
        created  => $ticket->CreatedObj->AsString,
        resolved => $ticket->ResolvedObj->AsString,
        duration => Time::Duration::concise(
            Time::Duration::duration(
                $ticket->ResolvedObj->Unix - $ticket->CreatedObj->Unix
            )
        ),
        whiteboard => $ticket->FirstCustomFieldValue('Whiteboard')
    };
}
@items = sort { $a->{queue} cmp $b->{queue} || $a->{id} <=> $b->{id} } @items;
%init>