统计请求在技术组内经过的时间

统计请求在技术组内经过的时间


ServiceDesk Plus在工单指派过程中,可以以组 -> 组的方式进行转派,而在前一个组里工单经过的时间,不能使用自动报表实现,以下为通过SQL报表实现统计此信息的语句(适用于SQL Server)

即FROM GROUP(源支持组)到To GROUP(目的支持组)经过的时间(时.分),当TO GROUP为空,表示FROM GROUP为当前工单的组,即未发生组间转派。

SELECT wo.WORKORDERID "Request ID",
       wo.TITLE "Subject",
       cd.CATEGORYNAME "Category",
       scd.NAME "Subcategory",
       icd.NAME "Item",
       ti.FIRST_NAME "Technician",
       qd.QUEUENAME "Group",
       CASE
           WHEN wos.ISOVERDUE='1' THEN 'Yes'
           ELSE 'No'
       END "Overdue Status",
       qd1.QUEUENAME "From Group",
       qd2.QUEUENAME "To Group",
       cast((wog.timespent/60) as varchar(20)) +':'+cast((wog.timespent % 60) as varchar(20)) "Time Spent" FROM WorkOrder wo
LEFT JOIN WorkOrderStates wos ON wo.WORKORDERID=wos.WORKORDERID
LEFT JOIN ItemDefinition icd ON wos.ITEMID=icd.ITEMID
LEFT JOIN SubCategoryDefinition scd ON wos.SUBCATEGORYID=scd.SUBCATEGORYID
LEFT JOIN CategoryDefinition cd ON wos.CATEGORYID=cd.CATEGORYID
LEFT JOIN SDUser td ON wos.OWNERID=td.USERID
LEFT JOIN AaaUser ti ON td.USERID=ti.USER_ID
LEFT JOIN WorkOrder_Queue woq ON wo.WORKORDERID=woq.WORKORDERID
LEFT JOIN QueueDefinition qd ON woq.QUEUEID=qd.QUEUEID
LEFT JOIN wo_assessment woa ON wo.workorderid=woa.workorderid
INNER JOIN WO_GROUP_INFO wog ON woa.assessmentid=wog.assessmentid
LEFT JOIN QueueDefinition qd1 ON wog.groupid=qd1.QUEUEID
LEFT JOIN QueueDefinition qd2 ON wog.nextgroupid=qd2.QUEUEID
WHERE (wo.ISPARENT='1')
  AND wo.CREATEDTIME >= <from_lastmonth>
  AND wo.CREATEDTIME <= <to_lastmonth>
ORDER BY 1