02-19-2015 09:41 PM - edited 03-12-2019 10:14 AM
CUIC 8000 Rows limitation for Historical reports
A study has been conducted to overcome the 8000 row limit on CUIC for report result sets that exceed the solution hard limit. Readers of this study may deploy same or similar approaches to go beyond CUIC’s hard limit of 8000 rows. Please note this study was done on UCCE Solution.
Hi,
Thanks for the document !!
I have used the logic as you can see below but it works for narrow filters like if filter is set with 35 Agents and DateTime for last 2 or 3 days it works fine, And if filter is set with 35 Agents and 7 days or beyond then it fails with error " Report execution failed, if problem persists please contact administrator "
is there any limitation for this code? could you please help me to fix it ?
BEGIN
IF OBJECT_ID('tempdb..#SGI') IS NOT NULL
BEGIN
DROP TABLE #SGI
END
DECLARE @i INT
DECLARE @pageMax INT
DECLARE @pageMin INT
DECLARE @start DATETIME
DECLARE @end DATETIME
DECLARE @agent_list DECIMAL
SET @i = :pageno
IF @i IS NULL OR @i < 1
SET @i = 1
SET @pageMax = @i*8000
SET @pageMin = (@i-1)*8000 + 1
CREATE TABLE #SGI
(
SeqID INT IDENTITY(1,1) NOT NULL,
DateTime Datetime,
PeripheralCallType varchar(40),
CallDisposition varchar(40),
DigitsDialed varchar(40),
DNIS INT,
ANI INT,
TalkTime INT,
RingTime INT,
Duration INT,
HoldTime INT,
WorkTime INT,
Agent varchar(40),
EnterpriseName varchar(40),
PeripheralName varchar(40)
)
INSERT INTO #SGI
(
DateTime,
PeripheralCallType,
CallDisposition,
DigitsDialed,
DNIS,
ANI,
TalkTime,
RingTime,
Duration,
HoldTime,
WorkTime,
Agent,
EnterpriseName,
PeripheralName
)
Select
DateTime,
PeripheralCallType,
CallDisposition,
DigitsDialed,
DNIS,
ANI,
TalkTime,
RingTime,
Duration,
HoldTime,
WorkTime,
Agent,
EnterpriseName,
PeripheralName
Agent
From
(
SELECT
DateTime,
Agent.EnterpriseName as Agent,
Skill_Group.EnterpriseName as EnterpriseName,
Skill_Group.PeripheralName as PeripheralName,
CASE TCD.PeripheralCallType
WHEN 1 THEN 'ACD In'
WHEN 2 THEN 'Pre-Route ACD In'
WHEN 4 THEN 'Transfer In'
WHEN 6 THEN 'Other In'
WHEN 7 THEN 'Auto Out'
WHEN 9 THEN 'Out'
WHEN 10 THEN 'Agent Inside'
WHEN 12 THEN 'Consult'
WHEN 13 THEN 'Consult Offered'
WHEN 15 THEN 'Conference , Supervisor Barge In'
WHEN 17 THEN 'Preview'
WHEN 18 THEN 'Reserved'
WHEN 19 THEN 'Supervisor Assist'
WHEN 20 THEN 'Emergency Call'
WHEN 21 THEN 'Supervisor Monitor'
WHEN 22 THEN 'Supervisor Whisper'
WHEN 24 THEN 'Supervisor Intercept'
WHEN 27 THEN 'Reservation Preview'
WHEN 28 THEN 'Reservation Preview Direct'
WHEN 29 THEN 'Reservation Predictive'
WHEN 30 THEN 'Reservation Callback'
WHEN 31 THEN 'Reservation Personal Callback'
WHEN 32 THEN 'Customer Preview'
WHEN 33 THEN 'Customer Preview Direct'
WHEN 34 THEN 'Customer Predictive'
WHEN 35 THEN 'Customer Callback'
WHEN 36 THEN 'Customer Personal Callback'
WHEN 37 THEN 'Customer IVR'
WHEN 38 THEN 'Non-ACD Call'
WHEN 39 THEN 'Play Agent Greeting'
WHEN 40 THEN 'Record Agent Greeting'
WHEN 41 THEN 'Voice Callback'
WHEN 42 THEN 'Switch Leg'
WHEN 43 THEN 'VRU Leg'
ELSE 'Unknown'
END as PeripheralCallType,
CASE TCD.CallDisposition
WHEN 1 THEN 'Abandoned in Network'
WHEN 2 THEN 'Abandoned in Local Queue'
WHEN 3 THEN 'Abandoned Ring'
WHEN 4 THEN 'Abandoned Delay'
WHEN 5 THEN 'Abandoned Interflow'
WHEN 6 THEN 'Abandoned Agent Terminal'
WHEN 7 THEN 'Short'
WHEN 8 THEN 'Busy'
WHEN 9 THEN 'Forced Busy'
WHEN 10 THEN 'Disconnect / Drop No Answer'
WHEN 11 THEN 'Disconnect / Drop Busy'
WHEN 12 THEN 'Disconnect / Drop Reorder'
WHEN 13 THEN 'Disconnect / Drop Handled Primary Route'
WHEN 14 THEN 'Disconnect / Drop Handled Other'
WHEN 15 THEN 'Redirected'
WHEN 16 THEN 'Cut Through'
WHEN 17 THEN 'Intraflow'
WHEN 18 THEN 'Interflow'
WHEN 19 THEN 'Ring No Answer'
WHEN 20 THEN 'Intercept Reorder'
WHEN 21 THEN 'Intercept Denial'
WHEN 22 THEN 'Time Out'
WHEN 23 THEN 'Voice Energy'
WHEN 24 THEN 'Non-Classified Energy Detected'
WHEN 25 THEN 'No Cut Through'
WHEN 26 THEN 'U-Abort'
WHEN 27 THEN 'Failed Software'
WHEN 28 THEN 'Blind Transfer'
WHEN 29 THEN 'Announced Transfer'
WHEN 30 THEN 'Conferenced'
WHEN 31 THEN 'Duplicate Transfer'
WHEN 32 THEN 'Unmonitored Device'
WHEN 33 THEN 'Answering Machine'
WHEN 34 THEN 'Network Blind Transfer'
WHEN 35 THEN 'Task Abandoned in Router'
WHEN 36 THEN 'Task Abandoned Before Offered'
WHEN 37 THEN 'Task Abandoned While Offered'
WHEN 38 THEN 'Normal Task End'
WHEN 39 THEN 'Cant Obtain Task ID'
WHEN 40 THEN 'Agent Logged Out During Task'
WHEN 41 THEN 'Maximum Task Lifetime Exceeded'
WHEN 42 THEN 'Application Path Went Down'
WHEN 51 THEN 'Task Ended During Application Init'
WHEN 53 THEN 'Partial Call'
ELSE 'Unknown'
END as CallDisposition,
TCD.DigitsDialed,
TCD.DNIS,
TCD.ANI,
TCD.TalkTime,
TCD.RingTime,
TCD.Duration,
TCD.HoldTime,
TCD.WorkTime,
Agent.SkillTargetID
FROM
Termination_Call_Detail TCD JOIN
Agent ON TCD.AgentSkillTargetID = Agent.SkillTargetID JOIN
Skill_Group ON TCD.SkillGroupSkillTargetID = Skill_Group.SkillTargetID
WHERE
DateTime >= :startDate
and DateTime <= :endDate
AND Agent.SkillTargetID in (:agent_list)
) AST
SELECT
SeqID,
DateTime,
PeripheralCallType,
CallDisposition,
DigitsDialed,
DNIS,
ANI,
TalkTime,
RingTime,
Duration,
HoldTime,
WorkTime,
Agent,
EnterpriseName,
PeripheralName
FROM
#SGI (nolock)
WHERE
SeqID BETWEEN @pageMin AND @pageMax
DROP TABLE #SGI
END
Best regards,
Vinod
Hi, I did this, but I have a problem, because when I run my query on SQL I get 8000 rows, but the view of CUIC only I can see 3000, Some Know What is the issue?
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: