[rt-users] Including latest transactions in RSS-Feed

Christian Loos cloos at netcologne.de
Fri Aug 28 01:50:44 EDT 2015


Hi,

$transactions isn't undefined but $transactions is an empty collection
and thus $transactions->Last is undefined.
This happens on tickets that don't have a Comment transaction.

Depending in the surrounding code a simple

return unless $transactions->Count;

before the 'my $comment ...' would help here.


Also instead of

my $transactions = RT::Transactions->new($session{CurrentUser});
$transactions->LimitToTicket($Ticket->id);

you maybe better write

my $transactions = $Ticket->Transactions;

as this also takes merged tickets into account.

Chris

Am 27.08.2015 um 16:27 schrieb Markus.Wildbolz at eu.magna.com:
> Hi guys!
> 
> I've managed, to play a little bit with the RSS-feed generation at
> /html/Search/Elements/ResultsRSSView
> 
> But at the moment I'm stuck at fetching the latest transaction with type
> "Correspond" or "Comment" from the database for displaying the right
> content.
> Is anybody out there who could help me with this?
> 
> My current code looks like:
> 
> while ( my $Ticket = $Tickets->Next()) {
>         my $transactions = RT::Transactions->new($session{CurrentUser});
>         $transactions->LimitToTicket($Ticket->id);
>        
>         # Limit to transactions with type "Comment"
>         $transactions->Limit(
>                 FIELD => 'Type',
>                 VALUE => 'Comment'
>         );        
>  
>         my $content = $transactions->Last->Content;
> 
> ...
> 
> 
> I get the following error in the logs:
>  Can't call method "Content" on an undefined value at
> /opt/rt4-devel/local/html/Search/Elements/ResultsRSSView
> 
> 
> I don't know actually, why the variable $transactions has an undefined
> value.
> 
> 
> Greetings,
> Markus




More information about the rt-users mailing list