Generate a billing report?

I’m curious if anyone has used RT for job billing? It’s pretty easy to
record the time for each task you perform but there really isn’t a good
mechanism for generating a bill to send to a client.

Has anyone tried anything like that?

I’m curious if anyone has used RT for job billing? It’s pretty easy to
record the time for each task you perform but there really isn’t a good
mechanism for generating a bill to send to a client.

Has anyone tried anything like that?

We do exactly this.

We have a custom field for Customer and another for invoice Number.

Invoice number is filled in by the invoicing script normally, but an
engineer could add ‘FOC’ or ‘Warranty’ instred to it as we only bill
tickets with an empty invoice number field. This is also how we track
ticket which need to billed as opposed to one already billed.

Then we grab all the id’s with the following command:-
rt list -i "status=‘resolved’ and Queue=‘MyQueue’ and Created <
‘$date’ and TimeWorked >‘0’ and CF.{invoicenr} IS NULL "

Date is normally set to the beginning of the month so we get all
the tickets up till then.

The a hidoeus SQL query then creates the line items and joins it
with the customer_id custom field. And then through some perl
magic pass it to our billing system.

If I could get the Timeworked and customerid field in output
from the rt command line, I could drop sql against mysql completely
which would at least mean I’m using rt’s api everywhere - which
might stay more stable.

This seems fine for stuff billed in units of minutes or hours I’m
not to usre about it for our project work which tends to be billed in
days. But for that we just reassign the ticket to our invoice queue
instead of resolving it and handle it manaully.

Was that helpful?

roger roger@computer-surgery.co.uk

John,

No, but I've thought about it. Trouble is, RT doesn't separate time 

between intervals. Time worked is simply added, which means you cannot
tell how much time belongs in the last month, or whatever. You would
have to define your own table in the DataBase with the kind of data
delineation you needed and then modify RT (probably a cron job) to
update that table with the type of data you need. Not something I’m
willing to do right now.

Kenn
LBNLOn 2/28/2008 2:12 PM, John Arends wrote:

I’m curious if anyone has used RT for job billing? It’s pretty easy to
record the time for each task you perform but there really isn’t a good
mechanism for generating a bill to send to a client.

Has anyone tried anything like that?


The rt-users Archives

Community help: http://wiki.bestpractical.com
Commercial support: sales@bestpractical.com

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

I run some python scripts which extract the time per task per user per
day which are then imported into a slightly modded sql-ledger which
then produces an invoice for the client with an accompanying activity
report.---------- Forwarded message ----------
From: John Arends jarends@uiuc.edu
Date: Feb 29, 2008 9:12 AM
Subject: [rt-users] Generate a billing report?
To: rt-users@lists.bestpractical.com

I’m curious if anyone has used RT for job billing? It’s pretty easy to
record the time for each task you perform but there really isn’t a good
mechanism for generating a bill to send to a client.

Has anyone tried anything like that?

You could do that pretty easily with a basic SQL query…

select
objectid as ticket,
date_trunc(‘month’, created) as month,
sum(cast(newvalue as int) - cast(oldvalue as int)) as timeworked
from transactions where
field = ‘TimeWorked’ and type = ‘Set’
and objecttype = ‘RT::Ticket’
and newvalue > oldvalue
group by ticket, month
order by month desc;

That will show you time worked, per ticket, per month for your
billing. Get rid of the ‘group by’ clause and the sum() on timeworked
and you’ll have more of a break down of how many times each ticket was
worked on and for how long.

TomOn 29/02/2008, at 10:01 AM, Kenneth Crocker wrote:

John,

No, but I’ve thought about it. Trouble is, RT doesn’t separate time
between intervals. Time worked is simply added, which means you cannot
tell how much time belongs in the last month, or whatever. You would
have to define your own table in the DataBase with the kind of data
delineation you needed and then modify RT (probably a cron job) to
update that table with the type of data you need. Not something I’m
willing to do right now.

Kenn
LBNL

On 2/28/2008 2:12 PM, John Arends wrote:

I’m curious if anyone has used RT for job billing? It’s pretty easy
to
record the time for each task you perform but there really isn’t a
good
mechanism for generating a bill to send to a client.

Has anyone tried anything like that?


The rt-users Archives

Community help: http://wiki.bestpractical.com
Commercial support: sales@bestpractical.com

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


The rt-users Archives

Community help: http://wiki.bestpractical.com
Commercial support: sales@bestpractical.com

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

Tom Lanyon
Systems Administrator
NetSpot Pty Ltd