CREATE VIEW JitterScoreBoard AS
SELECT r.server_addr
,r.probe_addr
,r.rsrcIndex
,r.rsrcOtherIndex
,r.rsrcName
,r.userId
,JitterStatsOverThresholds=100-100*SUM(case WHEN a.fieldIndex=13601 THEN (alertDuration*severity/5.0)/(24*3600) ELSE 0 END)
,JitterStatsRTTSum=100-100*SUM(case WHEN a.fieldIndex=13602 THEN (alertDuration*severity/5.0)/(24*3600) ELSE 0 END)
,JitterStatsPacketLossSD=100-100*SUM(case WHEN a.fieldIndex=13603 THEN (alertDuration*severity/5.0)/(24*3600) ELSE 0 END)
,JitterStatsPacketLossDS=100-100*SUM(case WHEN a.fieldIndex=13604 THEN (alertDuration*severity/5.0)/(24*3600) ELSE 0 END)
,JitterStatsPacketOutOfSequence=100-100*SUM(case WHEN a.fieldIndex=13605 THEN (alertDuration*severity/5.0)/(24*3600) ELSE 0 END)
,JitterStatsPacketLateArrival=100-100*SUM(case WHEN a.fieldIndex=13606 THEN (alertDuration*severity/5.0)/(24*3600) ELSE 0 END)
,JitterStatsError=100-100*SUM(case WHEN a.fieldIndex=13607 THEN (alertDuration*severity/5.0)/(24*3600) ELSE 0 END)
,JitterStatsBusies=100-100*SUM(case WHEN a.fieldIndex=13608 THEN (alertDuration*severity/5.0)/(24*3600) ELSE 0 END)
,availability=100-100*SUM(CASE WHEN a.fieldIndex =1602 THEN (a.alertDuration*1.0)/(24*3600) ELSE 0 END)
FROM ResourceNameJitterView r, AlertView a
WHERE r.server_addr=a.server_addr
AND r.probe_addr=a.probe_addr
AND r.rsrcIndex=a.rsrcIndex
AND r.rsrcOtherIndex=a.rsrcOtherIndex
AND a.severity > 0
AND a.severity <=5
AND r.monitored=1
AND a.IntervalDateTime BETWEEN dateadd(second, -datepart(second, getdate()),
dateadd(minute, -datepart(minute, getdate()),
dateadd(hour, -datepart(hour, getdate()),
dateadd(day, -1, getdate()))))
AND dateadd(second, -datepart(second, getdate()),
dateadd(minute, -datepart(minute, getdate()),
dateadd(hour, -datepart(hour, getdate()),
getdate())))
AND a.fieldIndex/100=136
GROUP BY r.server_addr
,r.probe_addr
,r.rsrcIndex
,r.rsrcOtherIndex
,r.rsrcName
,r.userId
GO
GRANT SELECT ON [dbo].[JitterScoreBoard] TO [uniadmin]
GO