declare @lnDeptID int, @ltQueryFrom datetime, @ltQueryTo datetime set @lnDeptID=23 set @ltQueryFrom = '10/01/2002 00:00:00' set @ltQueryTo = '10/31/2002 23:59:59' SELECT TOP 100 PERCENT COUNT(dbo.meetings.meetingnumber) AS CaseCount, dbo.coproc.dcode as Proc_Code, dbo.coproc.description as Proc_Description, avg(datediff(mi,meetings.enteror,meetings.exitor)) as Avg_Minutes, avg(datediff(mi,meetings.enteror,meetings.exitor) * meetings.DeptCostPerMinute) as AvgORCost, avg(dbo.caseResourceCost(meetings.meetingnumber)) as AvgResCost, dbo.coProc.procid as ProcID FROM dbo.meetings INNER JOIN dbo.meetproc ON dbo.meetings.meetingnumber = dbo.meetproc.meetingnumber INNER JOIN dbo.coproc ON dbo.meetproc.procid = dbo.coproc.procid WHERE (dbo.meetings.iscompleted = 1) and dbo.meetings.begintime between @ltQueryFrom and @ltQueryTo and meetings.deptID=@lnDeptID GROUP BY dbo.coproc.procid, dbo.coproc.dcode, dbo.coproc.description ORDER BY COUNT(dbo.meetings.meetingnumber) DESCUDF
CREATE FUNCTION CaseResourceCost (@meetID int) RETURNS decimal(12,2) AS BEGIN Declare @returnValue decimal(12,2) select @returnvalue=isnull(sum(cocasedata.itemunitcost * coCaseData.ActualQty),0) From coCaseData where coCaseData.meetingnumber=@meetID return (@returnValue) END