On Mon, Jan 24, 2011 at 12:06:02PM -0800, Kenneth Crocker wrote:
> To list,
>
> I was fooling around with the idea of creating a scrip that would allow
> the resolution of a
> parent ticket to automatically resolve all children tickets. I thought
> this would be helpful
> if a developer had a bunch of sub-tasks/tickets and they didn't want to go
> in and "resolve"
> each one individually, they could just "resolve" the parent and that would
> cause a cascade
> effect to go ahead and resolve all the children. This is the code I
> developed:
>
> # Resolve all Ticket children when the Ticket is resolved
>
> if (defined($id))
> {
> $tickets->FromSQL('Type = "ticket" AND MemberOf="'.$id.'"');
> # Loop thru all Children
> while (my $child = $tickets->Next) {
> next unless( $child->Status =~ /^(?:new|open|stalled)$/ );
> $RT::Logger->info("Closing associated child");
> $child->SetStatus("resolved");
>
> This worked fine except in the situation where a "Child" ticket was also a
> "Depends/on"
> ticket. The cascade stops. Well, that made sense, but I want to get around
> that.
>
> So I tried to force it with:
>
> # Resolve all Ticket children when the Ticket is resolved
>
> ........
> ........
> $child->SetStatus("resolved", 'Force');
>
> This didn't work. The top parent was resolved, but no cascade effect to
> any of the "child"
> tickets at all, even when there was no "DependsOn" relationship.
>
> I looked at the log and it shows the first ticket resolved, but no errors
> after that and yet,
> the children weren't resolved.
>
> Without the "Force", it works just fine, up to the ticket with the
> "DependsOn"child.
>
> So .... I went to several Perl handbooks (Perl Cookbook by O'Reilly, Perl
> for Dummies, etc.)
> and found nothing on the "Set" command, let alone the "Force" option.
> I went to the RT Essentials book and found nothing.The relevant documentation is found in perldoc lib/RT/Ticket_Overlay.pm . You're passing incorrect arguments to SetStatus > I am NOT a perl programmer, but understand enough basic perl to be able to > clone a scrip or > two and modify it with what little perl knowledge(?) I have. > > Obviously, I don't know enough about perl to figure this one out. > > Can anyone help me out with some perl clues/instruction here? > > Thanks in advance. > > Kenn > LBNL
pgpslKFzNB6Db.pgp
Description: PGP signature
