Re: [rt-users] Hours Worked

2008-03-11 Thread Chaitanya Veludandi
There are 2 things involved here:

1. Calculate hours worked on a ticket, probably using the Business::Hours
module and
2. Move the value to a custom field so that it is displayed on the ticket
details page and will also help track SLAs. Obviously it has to be triggered
'on resolve' however it should be able to add to any existing hours worked
in case the ticket has been previously resolved but reopened.

regards,

Chaitanya."
___
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users

Community help: http://wiki.bestpractical.com
Commercial support: [EMAIL PROTECTED]


Discover RT's hidden secrets with RT Essentials from O'Reilly Media. 
Buy a copy at http://rtbook.bestpractical.com

Re: [rt-users] Hours Worked

2008-02-08 Thread Greg Evans
Hello,

I am trying to work on this time worked issue myself and have been trying
the following:

Condition: On Transaction
Action: user defined
Template: Global template: Blank
Stage: TransactionCreate

Custom Condition: 
Custom action preparation code: 
1;

Custom action cleanup code:
$ticket_Worked = ($self->TicketObj->Updated - $self->TicketObj->Created);
if ($self->TicketObj->Type eq "Correspond" || $self->TicketObj->Type eq
"Comment")
{ 
 $self->TicketObj->SetTimeWorked ($ticket_Worked);
}
else {
return 0;
}



Can someone tell me if that looks even remotely correct?  I know that Mike
has said that we might need to convert times to Unix time and then back
again, and I haven't tried that yet, but I also have not even got to see any
kind of data go into that field. I was thinking that I might be able to put
whatever is returned into a comment or something as well to see if that
would work, so I changed the $self->TicketObj->SetTimeWorked to
$self->TicketObj->setContent, but I also had nothing returned that I could
see.

Not really sure where to go from there, hoping that someone has some insight
for me (or even a small clue)

Greg Evans

 

> -Original Message-
> From: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED] On Behalf 
> Of Mike Peachey
> Sent: Friday, February 08, 2008 12:24 AM
> To: Chaitanya Veludandi; rt-users@lists.bestpractical.com
> Subject: Re: [rt-users] Hours Worked
> 
> Chaitanya Veludandi wrote:
>  > Hi,
>  >
>  > Is there a way to calculate Hours Worked (using Business 
> Hours) based on
>  > the difference betwee Resolved Time and Created Time and 
> then move it to
>  > a custom Field?
> 
> 
> Posted to this list less than 24 hours ago:
> 
[snip]

___
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users

Community help: http://wiki.bestpractical.com
Commercial support: [EMAIL PROTECTED]


Discover RT's hidden secrets with RT Essentials from O'Reilly Media. 
Buy a copy at http://rtbook.bestpractical.com


Re: [rt-users] Hours Worked

2008-02-08 Thread Gene LeDuc
I wrote a mod to the Business::Hours package that lets you subtract one 
date from another.  It's on the wiki as part of something else I posted, 
but since I don't remember where I'll post it below.  It works just like 
the add_seconds() method, but it subtracts instead.  You can either append 
it to the end of your program or (I think) put it into your RT config file.

## start of code
### Need to add this to Business::Hours so I can count backwards from due date
{ package Business::Hours;
   sub sub_seconds {
   ### This method is hacked version of add_seconds(), written by Gene 
LeDuc
   my $self = shift;
   my $start = shift;
   my $seconds = shift;

   # the maximum time after which we stop searching for business hours
   my $MAXTIME = (30 * 24 * 60 * 60); # 30 days
   my $first;
   my $period = (24 * 60 * 60);
   my $begin = $start - $period;
   my $hours = new Set::IntSpan;
   while ($hours->empty or $self->between($hours->first, $start) <= 
$seconds) {
 if ($begin <= $start - $MAXTIME) {
   return -1;
 if ($begin <= $start - $MAXTIME) {
   return -1;
 }
 $hours = $self->for_timespan(Start => $begin, End => $start);
 $begin -= $period;
   }
   my @elements = reverse elements $hours;
   $first = $elements[$seconds];
   return $first;
   }
1; #this line is important and will help the module return a true value
}
## end of code

Regards,
Gene

At 10:37 PM 2/7/2008, Chaitanya Veludandi wrote:
>Hi,
>
>Is there a way to calculate Hours Worked (using Business Hours) based on 
>the difference betwee Resolved Time and Created Time and then move it to a 
>custom Field?
>
>Regards,
>
>Chaitanya
>___
>http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users
>
>Community help: http://wiki.bestpractical.com
>Commercial support: [EMAIL PROTECTED]
>
>
>Discover RT's hidden secrets with RT Essentials from O'Reilly Media.
>Buy a copy at http://rtbook.bestpractical.com


-- 
Gene LeDuc, GSEC
Security Analyst
San Diego State University 

___
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users

Community help: http://wiki.bestpractical.com
Commercial support: [EMAIL PROTECTED]


Discover RT's hidden secrets with RT Essentials from O'Reilly Media. 
Buy a copy at http://rtbook.bestpractical.com


Re: [rt-users] Hours Worked

2008-02-08 Thread Mike Peachey
Chaitanya Veludandi wrote:
 > Hi,
 >
 > Is there a way to calculate Hours Worked (using Business Hours) based on
 > the difference betwee Resolved Time and Created Time and then move it to
 > a custom Field?


Posted to this list less than 24 hours ago:

>  > But do you know if it is possible for RT (I
>> > couldn't find it when I searched Google) to automatically enter the time
>> > worked based on the time elapsed between when the ticket was opened and 
>> > when
>> > it was updated? I guess(?) that if an issue remained unresolved and the
>> > customer called back it would have to add time to said ticket on each
>> > update?  I will keep searching for this on my own, but figured it couldn't
>> > hurt to ask.
> 
> I don't see why not. I might be wrong about the *best* way to do it, but 
> it certainly seems you could add a custom scrip action to do it.
> 
> Pseudocode:
> 
> "On Ticket->Update, Ticket->Worked = Ticket->Updated() - Ticket->Created()"
> 
> Although, you might need to convert the times into Unix time, then do 
> the sums and then convert back again.
> 
--
Kind Regards,

___

Mike Peachey, IT
Tel: +44 (0) 114 281 2655
Fax: +44 (0) 114 281 2951
Jennic Ltd, Furnival Street, Sheffield, S1 4QT,  UK
http://www.jennic.com
Confidential
___

___
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users

Community help: http://wiki.bestpractical.com
Commercial support: [EMAIL PROTECTED]


Discover RT's hidden secrets with RT Essentials from O'Reilly Media. 
Buy a copy at http://rtbook.bestpractical.com


[rt-users] Hours Worked

2008-02-07 Thread Chaitanya Veludandi
Hi,

Is there a way to calculate Hours Worked (using Business Hours) based on the
difference betwee Resolved Time and Created Time and then move it to a
custom Field?

Regards,

Chaitanya
___
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users

Community help: http://wiki.bestpractical.com
Commercial support: [EMAIL PROTECTED]


Discover RT's hidden secrets with RT Essentials from O'Reilly Media. 
Buy a copy at http://rtbook.bestpractical.com