OpenDependantsOnResolve

From Request Tracker Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Lifted from the Mailing list. Writen by RuslanZakirov.

Description: open tickets which depends on resolved
Condition: On Status Change
Custom Condition:
Action: User defined
Custom action preparation code: return 1;
Custom action cleanup code:
  return 1 if ($self->TransactionObj->NewValue !~ /^(?:resolved|deleted|rejected)$/);
  my $DepOnBy = $self->TicketObj->DependedOnBy;
  while( my $l = $DepOnBy->Next ) {
    next unless( $l->BaseURI->IsLocal );
    next unless( $l->BaseObj->Status =~ /^(?:new|open|stalled)$/ );

    # here you can add any action
    # see also example below
    $l->BaseObj->SetStatus('open');
  }
  $DepOnBy = undef;
  return 1;
Template: Global template: Blank

Another variant that add comment instead.

return 1 if ($self->TransactionObj->NewValue !~ /^(?:resolved|deleted|rejected)$/);
my $DepOnBy = $self->TicketObj->DependedOnBy;
while( my $l = $DepOnBy->Next ) {
  next unless( $l->BaseURI->IsLocal );
  next unless( $l->BaseObj->Status =~ /^(?:new|open|stalled)$/ );

  my $id = $self->TicketObj->id;
  my $status = $self->TicketObj->Status;
  $l->BaseObj->Comment(Content => <<END);

This ticket depends on ticket \#$id which was $status.
END

}
$DepOnBy = undef;
return 1;

See also OpenTicketOnAllMemberResolve