Reportes: Agentes conectados en un momento dado

De Vocalcom.latam Wiki
Saltar a: navegación, buscar
------------------------
--Agentes Simultaneos---
------------------------
---Pasos a seguir:
--Calcular agentes conectados
---Variables a cambiar
DECLARE @fecha DATETIME

SELECT @fecha = '20150527 13:00'

---El resto del proceso
DECLARE @aux TABLE (
	Agente INT
	,Desde DATETIME
	,Hasta DATETIME
	,Campania NVARCHAR(50)
	)
DECLARE @aux2 TABLE (
	Agente INT
	,ultimallamada DATETIME
	)

INSERT INTO @aux (
	Agente
	,Desde
	,Hasta
	) (
	SELECT originatorid AS 'Agente'
	,actionlocaltime AS 'inicio'
	,dateadd(ss, duration / 100, actionlocaltime) AS 'fin' FROM hn_ondata..odactions WHERE customerid = 1
	AND originatortype = 'A'
	AND actionlocaltime < @fecha
	AND dateadd(ss, duration / 100, actionlocaltime) > @fecha
	)

--Calcular Campania de los agentes
INSERT INTO @aux2 (
	Agente
	,ultimallamada
	) (
	SELECT Agente
	,max(calllocaltime) FROM @aux a
	,odcalls b WHERE firstagent = Agente
	AND calllocaltime <= Desde GROUP BY Agente
	)

UPDATE @aux
SET Campania = c.firstcampaign
FROM @aux a
	,(
		SELECT firstagent
			,firstcampaign
		FROM odcalls a
			,@aux2 b
		WHERE a.calllocaltime = b.ultimallamada
		) c
WHERE a.Agente = c.firstagent

SELECT *
FROM @aux


Agente Desde Hasta Campania
1130 2015/05/27 12:01:03 2015/05/27 13:00:43  
1125 2015/05/27 12:02:09 2015/05/27 13:01:28 Gestion de tareas
1133 2015/05/27 12:05:57 2015/05/27 14:19:28 Telemercadeo_Allianz_Feria_Automovil
1041 2015/05/27 12:19:10 2015/05/27 13:32:49 1104
1117 2015/05/27 12:52:55 2015/05/27 13:01:03 1111
1051 2015/05/27 12:56:00 2015/05/27 13:02:42 Telemercadeo_Solidaria_Hogar_Medellin_Mayo
1129 2015/05/27 12:58:02 2015/05/27 13:00:35 1104
1061 2015/05/27 12:58:55 2015/05/27 13:18:13 Gestion de tareas
1003 2015/05/27 12:59:02 2015/05/27 13:03:16 1104
1080 2015/05/27 12:59:52 2015/05/27 13:00:05 Telemercadeo_Solidaria_Hogar_Medellin_Mayo
1127 2015/05/27 12:59:55 2015/05/27 13:00:05 Telemercadeo_Solidaria_Hogar_Medellin_Mayo