hi guys,

this is probably not the best place to ask this but i have no clue as to what the query is or should look like. so i am hoping to give you enough info to hopefully get something that resembles waht i need.

the below is a sample db table
===============
USER_ID LOGIN_TIME LOGOUT_TIME FORM_NAME MODIFIED_DATE ACTION_TYPE CUST_NO
lcherney User Alert Report Pending 20/06/2005 11:12:40 AM UPDT 689573
lcherney 20/06/2005 11:13:00 AM User Alert Report Pending LOSF
lcherney 20/06/2005 11:13:02 AM Unbilled LISF
ltran User Alert Report Pending 20/06/2005 11:14:14 AM UPDT 634157
bforward 20/06/2005 11:39:53 AM bill LISF
jheale 20/06/2005 11:47:18 AM Register LISF
ejohnson 20/06/2005 11:56:46 AM Draft Held Disputed Pending LOSF
ejohnson 20/06/2005 11:56:58 AM Unbilled LISF
dburn 20/06/2005 12:16:22 PM REG LISF
ehristoska Customer Activation Pending 20/06/2005 11:19:33 AM UPDT 1334090
ehristoska Customer Activation Pending 20/06/2005 11:20:03 AM UPDT 1334090
ehristoska Customer Activation Pending 20/06/2005 11:20:45 AM UPDT 1332422

to explain the above (hopefully this adds more clarity) is a list of data based on user actions from a form. the Action_Type field shows what a user did ... eg
LIMF = Login to main form (not relivant)
LOMF = Logout of main form (not relivant)
LISF = Login of sub form
LOSF = Logout of sub form
UPDT = an update of the sub form

on a dialy basis, weekly & monthly basis, i need to find out which subforms had how many updates (this shows volume of transactions) and what the average handling time (AHT) of each form was (this shows how long the particular job / form took to complete)

to get my report, i need to create a query that will
.. look at all values in the Action_Type and find all LISF's, LOSF's & UPDT's based on today (for example) and group by Form_Name
.. find the first LISF of each user in each form and then find the first UPDT to calculate the first Average or difference in time.
.. find all other UPDT's per user based on Form_Name and caculate the 2nd UPDT to the next, to the next to get the remaining AHT (difference in time between transcations)
.. find the last UPDT based on that form and LISF and calculate the difference in time
.. calculate the average of all 3 AHT's from the above by Form_Name
.. group all this by Form_Name

the bellow is the sample report i need to generate from the above (hopefully what the data should show). this is a sample report but i have been unable to deliver a real one (all data below is fictional)

Report Ran - 16/06/06
Date Search - 16/06/06 to 16/06/06
Form Name Agent Count Volume AHT (in sec) Total Time (in sec)
Inventory 7 175 459 87163
Customer Activation Pending Totals 3 10 400 3667
DHD Totals 3 3 471 1414


Form Name = Form_Name
Agent Count = How many unique agents actioned that form
Count = How many transactions from all users for that form
AHT = Average time it took for each of those forms for all users
Total Time = calculation of AHT * Count (shows how much time was spent in total doing taht particular form)

i am pretty sure i have confused everyone, so please ask questions ..

hopefully this can be done
thanks