Cisco Finesse - Creating Reports in Cisco Unified Intelligence Center (CUIC)


Introduction

Cisco Finesse is an Automated Call Distribution (ACD) system used for queueing and distributing customer calls at contact centers across Michigan Medicine. If you'd like to inspect or visualize call data, you can create reports through a tool called Cisco Unified Intelligence Center (CUIC) that can be accessed via site 1 or site 2. This article will help you access CUIC and create your own reports.

Instructions

Accessing Cisco Unified Intelligence Center

Step Number Details
1

Open Cisco Unified Intelligence Center (CUIC). There are two ways:

  1. From a CoreImage device, click Start > Cisco ACD Call Center > Historical Reporting
  2. Or, from within a web browser, open the Cisco Unified Intelligence Center via site 1 or site 2.
2

If this is your first time logging in to CUIC, or the first time you've logged in with this particular browser on this particular computer, you will see Cisco's login page...

CUIC first-time login prompt Cisco's first-time login prompt with a uniqname entered

 If you see this prompt, enter your uniqname and click Next. If not, skip to step 3.

3

 The Login with Level-2 prompt will appear...

The Login with Level-2 prompt

Enter your uniqname and Level-2 password, then click Sign In.

4 The CUIC interface should then load. If it doesn't, or if you receive an error at any step of this process, please report the issue to Contact Center Support and request access to CUIC.

 

Gaining Authorization for the Reports Module

Step Number

Details

1

Once you login to CUIC, attempt to open the Reports interface by clicking the Reports icon in the left-side navigation pane...

CUIC's Reports interface

2 If you don't see the Reports icon, can't enter the Custom folder, or can't create a new report/folder inside the Custom folder, please report the issue to Contact Center Support and request that your account be granted access to create reports in CUIC. 

Duplicating an Existing Report

Step Number

Details

1

After you login to CUIC and open the Reports interface via site 1 or site 2, navigate to the report you want to duplicate. For example, Stock > CCE > CCE All Fields Historical Reports > Agent Historical All Fields...

The Agent Historical All Fields report entry

2

In the Actions column, click the ellipses (...) beside the report you want to duplicate and a menu will appear. Click Save As.

Opening the Actions menu and clicking Save As

3

In the Save Report dialog box that appears, fill in the Report Name and Report Location, then click Save

When duplicating a report, normally you'll want to use the original Report Definition that provides data to the report, so you won't need to enable Clone Report Definition. If you want to make changes to the underlying Report Definition, though (perhaps by adding a new metric for the report to use), enable Clone Report Definition and fill in the new name and location for the cloned Report Definition.

Fill in the new report's details in the Save Report dialog box

When choosing a location, you can use the Search field to find the location you want, or you can browse for it by clicking the greater-than symbol (>) to enter each folder. Clicking the folder itself selects that folder as the save location, so only click a folder name if that's where you want to save the new report.

Setting the report location

Creating a New Report

After you login to CUIC and open the Reports interface via site 1 or site 2, follow Cisco's own documentation for creating reports. You can also watch the first half of this training video.

Commonly Used Report Definitions

When creating a new report, you'll be asked to select a Report Definition. A Report Definition is a database query that determines what Cisco Finesse data your report will be able to visualize, and CUIC comes with many Report Definitions that you can choose from without the need to create your own queries. Below you will find a list of commonly used Report Definitions, what they provide, and where to find them. You can also visit the Report Definitions page via site 1 or site 2 to explore everything that's available and, if you'd like to create your own Report Definition, see Creating a Report Definition below.

Report Definitions determine the time interval your report can use to chart data (yearly, quarterly, monthly, weekly, daily, every 15 minutes, etc), and each Report Definition only has one interval. If you want your report to use an interval that your Report Definition doesn't provide, you'll need to create a new Report Definition and customize its interval.

 

Name Location Time Interval Description
Agent Historical All Fields Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_AF_Historical Every 15 minutes

Call stats for agents going back to October 27th, 2021. Filtered by date, agent, and value lists that agents are part of (like HITS_Service_Desk).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Media_Routing_Domain, Person, Precision_Queue, Skill_Group

Agent Team Historical All Fields Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_AF_Historical  Every 15 minutes

Call stats for teams and agents going back to October 27th, 2021. Filtered by date and team (like HITS_SERVICE_DESK_1).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Agent_Team, Agent_Team_Member, Media_Routing_Domain, Person, Precision_Queue, Skill_Group

Call Type Historical All Fields Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_AF_Historical Every 15 minutes

Call stats for call types going back to October 27th, 2021. Can be filtered by date and call type (like C_HITS_GENERAL_ISSUES_MN).

Fields from the following tables are included: Call_Type, Call_Type_Interval

 

Precision Queue Interval All Fields Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_AF_Historical Every 15 minutes

Call stats for queues going back to October 27th, 2021. Filtered by date and queue (like C_HITS_GENERAL_ISSUES).

Fields from the following tables are included: Attribute, Router_Queue_Interval, Skill_Group_Interval 

Agent Real Time Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_AF_Realtime Realtime

The current state of each agent in a given skill group (like Main_ps1_CUCM_PG_1.Cisco_V.97359).

Fields from the following tables are included: Agent, Agent_Real_Time, Agent_Skill_Group_Real_Time, Attribute, Controller_Time, Media_Routing_DomainPerson, Precision_Queue, Reason_Code, Service, Skill_Group

Call Type Real Time Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_AF_Realtime Realtime

Current call stats for call types (like C_HITS_GENERAL_ISSUES_MN).

Fields from the following tables are included: Call_Type, Call_Type_Real_Time, ICR_Globals

Precision Queue Real Time All Fields Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_AF_Realtime Realtime

Current call stats for queues (like C_HITS_GENERAL_ISSUES).

Fields from the following tables are included: Attribute, Controller_Time, ICR_Globals, Media_Routing_Domain, Precision_Queue, Precision_Q_Real_Time

Agent Login Logout Historical Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Historical By login / logout date

Agent login details going back to October 27th, 2021. Filtered by date, agent, and value lists that agents are part of (like HITS_Service_Desk).

Fields from the following tables are included: Agent, Agent_Attribute, Agent_Logout, Agent_Skill_Group_Logout, Attribute, Person, Reason_CodeSkill_Group

Agent Historical Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Historical > Agent Summary Every 15 minutes

Call stats for agents going back to October 27th, 2021. Filtered by date, agent, and value lists that agents are part of (like HITS_Service_Desk).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Media_Routing_Domain, Person, Precision_Queue, Skill_Group

Agent Monthly Historical
Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Historical > Agent Summary Monthly

Call stats for agents going back to October 27th, 2021. Filtered by date, agent, and value lists that agents are part of (like HITS_Service_Desk).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Media_Routing_Domain, Person, Precision_Queue, Skill_Group

Agent Weekly Historical Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Historical > Agent Summary Weekly

Call stats for agents going back to October 27th, 2021. Filtered by date, agent, and value lists that agents are part of (like HITS_Service_Desk).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Media_Routing_Domain, Person, Precision_Queue, Skill_Group

Agent Team Historical
Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Historical >  Agent Team Every 15 minutes

Call stats for teams and agents going back to October 27th, 2021. Filtered by date and team (like HITS_SERVICE_DESK_1).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Agent_Team, Agent_Team_Member, Media_Routing_Domain, Person, Precision_Queue, Skill_Group

Agent Team Monthly Historical Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Historical >  Agent Team Monthly

Call stats for teams and agents going back to October 27th, 2021. Filtered by date and team (like HITS_SERVICE_DESK_1).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Agent_Team, Agent_Team_Member, Media_Routing_Domain, Person, Precision_Queue, Skill_Group

Agent Team Weekly Historical Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Historical >  Agent Team Weekly

Call stats for teams and agents going back to October 27th, 2021. Filtered by date and team (like HITS_SERVICE_DESK_1).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Agent_Team, Agent_Team_Member, Media_Routing_Domain, Person, Precision_Queue, Skill_Group

Skill Historical Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Historical > Skill Every 15 minutes

Call stats for agents in a given skill group (like Main_ps1_CUCM_PG_1.Cisco_V.97359).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Media_Routing_Domain, Person, Skill_Group

Skill Daily Historical Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Historical > Skill Daily

Call stats for agents in a given skill group (like Main_ps1_CUCM_PG_1.Cisco_V.97359).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Media_Routing_Domain, Person, Skill_Group

Skill Monthly Historical Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Historical > Skill Monthly

Call stats for agents in a given skill group (like Main_ps1_CUCM_PG_1.Cisco_V.97359).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Media_Routing_Domain, Person, Skill_Group

Skill Weekly Historical Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Historical > Skill Weekly

Call stats for agents in a given skill group (like Main_ps1_CUCM_PG_1.Cisco_V.97359).

Fields from the following tables are included: Agent, Agent_Interval, Agent_Skill_Group_Interval, Media_Routing_Domain, Person, Skill_Group

Agent Team Real Time
Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Realtime Realtime

Current call stats for agents in a given team (like HITS_SERVICE_DESK_1).

Fields from the following tables are included: Agent, Agent_Real_Time, Agent_Team, Agent_Team_MemberMedia_Routing_DomainPersonReason_Code, Skill_Group

Agents Real Time Report Definitions (site 1 or site 2) > Imported Report Definitions > Stock > CCE > CCE_TR_Realtime Realtime

The current state of each agent in a given skill target (like HITS_Service_Desk).

Fields from the following tables are included: Agent, Agent_Real_Time, Agent_Skill_Group_Real_Time, Controller_Time, Media_Routing_DomainPerson, Reason_Code, Service, Skill_Group, Skill_Group_Real_Time

Existing Custom Report Definitions

For a complete list of report definitions created by HITS Service Analysis & Improvement, see KB0023979.

Creating a Report Definition

Creating a new Report Definition requires knowledge of SQL.

If the Report Definitions that already exist in CUIC don't present the data in the way you want (e.g. you'd like to combine data in a new calculation or you'd like to visualize the data on a different time interval), you can create your own custom Report Definition.

Step Number

Details

1

Login to CUIC and open the Report Definitions interface via site 1 or site 2 by clicking the Report Definitions icon in the left-side navigation pane.

CUIC's Report Definitions interface

If you don't see the Report Definitions icon, can't enter the Custom folder, or can't create a new definition/folder inside the Custom folder, please report the issue to Contact Center Support and request that your account be granted access to create Report Definitions in CUIC.

 

2

Follow Cisco's own documentation for creating Report Definitions. You can also watch the latter half of this training video and explore Cisco's Database Schema Handbook to understand what fields you can query in the Cisco Finesse database.

To accelerate yourself, you can find an existing Report Definition that is close to your needs, then duplicate it in the same way Reports are duplicated (clicking the ellipses in the the Actions column beside the Report Definition you want to duplicate and clicking Save As). 

Example Report Definition Query

Below is an example SQL query from the Report Definitions (site 1 or site 2) > Custom > HITS Service Desk > Aggregate Monthly for HITS Service Desk Report Definition developed by HITS Service Analysis & Improvement. It creates a number of new metrics, like sai_PercentAbandCalls and sai_AvgAbandTime, and it also establishes a monthly time interval through the "CAST(DATEADD(mm, DATEDIFF(mm,0,S.DateTime), 0) AS DATE)" statements you find in the sai_MonthOf field, the ORDER BY clause and the final GROUP BY clause.

SET ARITHABORT OFF SET ANSI_WARNINGS OFF SET NOCOUNT ON
SELECT Media = Media_Routing_Domain.EnterpriseName,
MRDomainID = Media_Routing_Domain.MRDomainID,
sai_PercentAbandCalls = (CASE WHEN (SUM(ISNULL(R.CallsAbandQ,0)) + SUM(ISNULL(R.CallsAbandToAgent,0)) + SUM(ISNULL(R.CallsAnswered,0))) = 0 THEN 0
ELSE ((SUM(ISNULL(R.CallsAbandQ,0)) + SUM(ISNULL(R.CallsAbandToAgent,0))) * 1.0) / (SUM(ISNULL(R.CallsAbandQ,0)) + SUM(ISNULL(R.CallsAbandToAgent,0)) + SUM(ISNULL(R.CallsAnswered,0))) END),
sai_PercentAbandCallsWOCallbacks = (CASE WHEN (SUM(ISNULL(R.CallsAbandQ,0)) + SUM(ISNULL(R.CallsAbandToAgent,0)) + SUM(ISNULL(R.CallsAnswered,0)) - SUM(ISNULL(S.CbM,0))) <= 0 THEN 0
ELSE ((SUM(ISNULL(R.CallsAbandQ,0)) + SUM(ISNULL(R.CallsAbandToAgent,0))) * 1.0) / (SUM(ISNULL(R.CallsAbandQ,0)) + SUM(ISNULL(R.CallsAbandToAgent,0)) + SUM(ISNULL(R.CallsAnswered,0)) - SUM(ISNULL(S.CbM,0))) END),
sai_AvgAbandTime = (CASE WHEN (SUM(ISNULL(R.CallsAbandQ,0)) + SUM(ISNULL(R.CallsAbandToAgent,0))) = 0 THEN 0
ELSE SUM(ISNULL(R.DelayQAbandTime,0)) / (SUM(ISNULL(R.CallsAbandQ,0)) + SUM(ISNULL(R.CallsAbandToAgent,0))) END),
sai_AvgQueueTime=CASE WHEN SUM(ISNULL(R.CallsOffered,0))=0 THEN 0 
ELSE SUM(S.AWT) * 1.0 / SUM(ISNULL(R.CallsOffered,0)) END,
sai_AvgTimeAfterQueue=CASE WHEN SUM(ISNULL(R.CallsOffered,0))=0 THEN 0 
ELSE (SUM(S.HCT)-SUM(S.AWT)) * 1.0 / SUM(ISNULL(R.CallsOffered,0)) END,
sai_SLTop=CASE min(isnull(PQ.ServiceLevelType,0))
WHEN 1 THEN sum(isnull(R.ServiceLevelCalls,0)) * 1.0 
WHEN 2 THEN sum(isnull(R.ServiceLevelCalls,0)) * 1.0
WHEN 3 THEN (sum(isnull(R.ServiceLevelCalls,0)) + sum(isnull(R.ServiceLevelCallsAband,0))) * 1.0 
ELSE 0 END,
sai_SLBottom=CASE min(isnull(PQ.ServiceLevelType,0))
WHEN 1 THEN CASE WHEN (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0)) - sum(isnull(R.ServiceLevelCallsAband,0))) <= 0 THEN 0 ELSE (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0)) - sum(isnull(R.ServiceLevelCallsAband,0))) END
WHEN 2 THEN CASE WHEN (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) <= 0 THEN 0 ELSE (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) END
WHEN 3 THEN CASE WHEN (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) <= 0 THEN 0 ELSE (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) END
ELSE 0 END,
sai_ServiceLevel=CASE min(isnull(PQ.ServiceLevelType,0))
WHEN 1 THEN CASE WHEN (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0)) - sum(isnull(R.ServiceLevelCallsAband,0))) <= 0 THEN 0 ELSE
sum(isnull(R.ServiceLevelCalls,0)) * 1.0 /
(sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0)) - sum(isnull(R.ServiceLevelCallsAband,0))) END
WHEN 2 THEN CASE WHEN (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) <= 0 THEN 0 ELSE
sum(isnull(R.ServiceLevelCalls,0)) * 1.0 /
(sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) END
ELSE 0 END,
sai_MonthOf = CAST(DATEADD(mm, DATEDIFF(mm,0,S.DateTime), 0) AS DATE),
CallbackMessages=SUM(S.CbM),
CallbackMessagesTime=SUM(S.CbMT),
AvgHandledCallsTalkTime=AVG(S.AHCTT),
HoldTime=SUM(S.HT),
HandledCallsTalkTime=SUM(S.HCTT),
InternalCalls=SUM(S.IntC),
InternalCallsTime=SUM(S.IntCT),
CallsHandled=SUM(R.CallsHandled),
SupervAssistCalls=SUM(S.SAC),
AvgHandledCallsTime=AVG(S.AHCT),
SupervAssistCallsTime=SUM(S.SACT),
HandledCallsTime=SUM(S.HCT),
AgentOutCallsTime=SUM(S.AOCT),
TalkInTime=SUM(S.TIT),
LoggedOnTime=SUM(S.LOT),
ExternalOut=SUM(S.EO),
TalkOutTime=SUM(S.TOutT),
TalkOtherTime=SUM(S.TOT),
AvailTime=SUM(S.AT),
NotReadyTime=SUM(S.NRT),
TransferInCalls=SUM(S.TIC),
TalkTime=SUM(S.TT),
TransferInCallsTime=SUM(S.TICT),
WorkReadyTime=SUM(S.WRT),
TransferOutCalls=SUM(S.TOC),
WorkNotReadyTime=SUM(S.WNRT),
BusyOtherTime=SUM(S.BOT),
CallsAnswered=SUM(R.CallsAnswered),
ReservedStateTime=SUM(S.RST),
AnswerWaitTime=SUM(S.AWT),
AbandonRingCalls=SUM(S.ARC),
AbandonRingTime=SUM(S.ART),
AbandonHoldCalls=SUM(S.AHC),
AgentOutCallsTalkTime=SUM(S.AOCTT),
AgentOutCallsOnHold=SUM(S.AOCOH),
AgentOutCallsOnHoldTime=SUM(S.AOCOHT),
AgentTerminatedCalls=SUM(S.ATC),
ConsultativeCalls=SUM(S.CC),
ConsultativeCallsTime=SUM(S.CCT),
ConferencedInCalls=SUM(S.CIC),
ConferencedInCallsTime=SUM(S.CICT),
ConferencedOutCalls=SUM(S.COC),
ConferencedOutCallsTime=SUM(S.COCT),
IncomingCallsOnHoldTime=SUM(S.ICOHT),
IncomingCallsOnHold=SUM(S.ICOH),
InternalCallsOnHoldTime=SUM(S.IntCOHT),
InternalCallsOnHold=SUM(S.IntCOH),
InternalCallsRcvdTime=SUM(S.IntCRT),
InternalCallsRcvd=SUM(S.IntCR),
RedirectNoAnsCalls=SUM(R.RedirectNoAnsCalls),
RedirectNoAnsCallsTime=SUM(S.RNACT),
ShortCalls=SUM(S.SC),
CallsAbandQ=SUM(ISNULL(R.CallsAbandQ,0)),
QueueCalls=SUM(ISNULL(R.QueueCalls,0)),
AutoOutCalls=SUM(S.AutoOC),
AutoOutCallsTime=SUM(S.AutoOCT),
AutoOutCallsTalkTime=SUM(S.AutoOCTT),
AutoOutCallsOnHold=SUM(S.AutoOCOH),
AutoOutCallsOnHoldTime=SUM(S.AutoOCOHT),
PreviewCalls=SUM(S.PC),
PreviewCallsTime=SUM(S.PCT),
PreviewCallsTalkTime=SUM(S.PCTT),
PreviewCallsOnHold=SUM(S.PCOH),
PreviewCallsOnHoldTime=SUM(S.PCOHT),
ReserveCalls=SUM(S.RC),
ReserveCallsTime=SUM(S.RCT),
ReserveCallsTalkTime=SUM(S.RCTT),
ReserveCallsOnHold=SUM(S.RCOH),
ReserveCallsOnHoldTime=SUM(S.RCOHT),
TalkAutoOutTime=SUM(S.TAOT),
TalkPreviewTime=SUM(S.TPT),
TalkReserveTime=SUM(S.TRT),
BargeInCalls=SUM(S.BIC),
InterceptCalls=SUM(S.IC),
MonitorCalls=SUM(S.MC),
WhisperCalls=SUM(S.WC),
EmergencyAssists=SUM(S.EA),
CallsOffered=SUM(ISNULL(R.CallsOffered,0)),
CallsQueued=SUM(ISNULL(R.QueueCalls,0)), 
InterruptedTime=SUM(S.IT),
TimeZone=R.TimeZone,
CallsAgentAbandons=SUM(ISNULL(R.CallsAbandToAgent,0)),   
CallsDequeued=SUM(ISNULL(R.CallsDequeued,0)),   
RouterError=SUM(ISNULL(R.RouterError,0)),  
DoNotUseSLTop=CASE min(isnull(PQ.ServiceLevelType,0))
WHEN 1 THEN sum(isnull(R.ServiceLevelCalls,0)) * 1.0 
WHEN 2 THEN sum(isnull(R.ServiceLevelCalls,0)) * 1.0
WHEN 3 THEN (sum(isnull(R.ServiceLevelCalls,0)) + sum(isnull(R.ServiceLevelCallsAband,0))) * 1.0 
ELSE 0 END,
DoNotUseSLBottom=CASE min(isnull(PQ.ServiceLevelType,0))
WHEN 1 THEN CASE WHEN (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0)) - sum(isnull(R.ServiceLevelCallsAband,0))) <= 0 THEN 0 ELSE (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.ServiceLevelCallsAband,0))) END
WHEN 2 THEN CASE WHEN (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) <= 0 THEN 0 ELSE (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) END
WHEN 3 THEN CASE WHEN (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) <= 0 THEN 0 ELSE (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) END
ELSE 0 END,
ServicelLevel=CASE min(isnull(PQ.ServiceLevelType,0))
WHEN 1 THEN CASE WHEN (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0)) - sum(isnull(R.ServiceLevelCallsAband,0))) <= 0 THEN 0 ELSE
sum(isnull(R.ServiceLevelCalls,0)) * 1.0 /
(sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0)) - sum(isnull(R.ServiceLevelCallsAband,0))) END
WHEN 2 THEN CASE WHEN (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) <= 0 THEN 0 ELSE
sum(isnull(R.ServiceLevelCalls,0)) * 1.0 /
(sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) END
WHEN 3 THEN CASE WHEN (sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) <= 0 THEN 0 ELSE
(sum(isnull(R.ServiceLevelCalls,0)) + sum(isnull(R.ServiceLevelCallsAband,0))) * 1.0 /
(sum(isnull(R.ServiceLevelCallsOffered,0)) - sum(isnull(R.CallsDequeued,0)) - sum(isnull(R.CallsAbandDequeued,0))) END
ELSE 0 END, 
ServiceLevelCalls=SUM(ISNULL(R.ServiceLevelCalls,0)),   
ServiceLevelCallsAband=SUM(ISNULL(R.ServiceLevelCallsAband,0)),  
ServiceLevelCallsDequeue=SUM(ISNULL(R.ServiceLevelCallsDequeue,0)),  
ServiceLevelError= SUM(ISNULL(R.ServiceLevelError,0)),   
ServiceLevelRONA=SUM(ISNULL(R.ServiceLevelRONA,0)),   
ServiceLevelCallsOffered=SUM(ISNULL(R.ServiceLevelCallsOffered,0)),
NetConsultativeCalls=sum(S.NCC),
NetConsultativeCallsTime=SUM(S.NCCT), 
NetConferencedOutCalls=sum(S.NCOC),
NetConfOutCallsTime=SUM(S.NCOCT),
NetTransferredOutCalls=sum(S.NTOC),
TotalComplete=SUM(ISNULL(R.CallsHandled,0))+SUM(ISNULL(R.RedirectNoAnsCalls,0))+SUM(ISNULL(R.CallsAbandQ,0))+SUM(ISNULL(R.RouterError,0))+SUM(ISNULL(R.CallsAbandToAgent,0)),
MaxCallsQueued=max(isnull(R.MaxCallsQueued,0)),
MaxCallWaitTime=max(isnull(R.MaxCallWaitTime,0)),
ReportingInterval=SUM(S.RI)*60,
fte_AgentsLogonTotal=SUM(S.LOT) * 1.0 / (SUM(S.RI)*60),   
fte_AgentsNotReady=SUM(S.NRT) * 1.0 / (SUM(S.RI)*60),   
fte_AgentsNotActive=SUM(S.AT) * 1.0 / (SUM(S.RI)*60),   
fte_AgentsActive=SUM(S.TT) * 1.0 / (SUM(S.RI)*60),
fte_AgentsWrapup=SUM(S.WRT+S.WNRT) * 1.0 / (SUM(S.RI)*60),   
fte_AgentsOther=SUM(S.BOT) * 1.0 / (SUM(S.RI)*60),   
fte_AgentsHold=SUM(S.HT) * 1.0 / (SUM(S.RI)*60),   
fte_AgentsReserved=SUM(S.RST) * 1.0 / (SUM(S.RI)*60) ,
ast_PercentNotActiveTime=(CASE WHEN SUM(S.LOT)=0 THEN 0
ELSE SUM(S.AT) * 1.0 / SUM(S.LOT) END),
ast_PercentActiveTime=(CASE WHEN SUM(S.LOT)=0 THEN 0
ELSE SUM(S.TT) * 1.0 / SUM(S.LOT) END),
ast_PercentHoldTime=(CASE WHEN SUM(S.LOT)=0 THEN 0
ELSE SUM(S.HT) * 1.0 / SUM(S.LOT) END),
ast_PercentWrapTime=(CASE WHEN SUM(S.LOT)=0 THEN 0
ELSE (SUM(S.WNRT + S.WRT)) * 1.0 / SUM(S.LOT) END),
ast_PercentReservedTime=(CASE WHEN SUM(S.LOT)=0 THEN 0
ELSE SUM(S.RST) * 1.0 / SUM(S.LOT) END),
ast_PercentNotReadyTime=(CASE WHEN SUM(S.LOT)=0 THEN 0
ELSE SUM(S.NRT) * 1.0 / SUM(S.LOT) END),
ast_PercentUtilization=
CASE WHEN (SUM(S.LOT) - SUM(S.NRT))=0 THEN 0		
ELSE (CASE WHEN SUM(S.TT)=0 THEN 0 ELSE (SUM(S.TIT) + 
SUM(S.TOutT) + 
SUM(S.TOT) + 
SUM(S.WRT) + 
SUM(S.WNRT)) * 1.0 /
(SUM(S.LOT) - SUM(S.NRT)) END) END,
asa= CASE WHEN SUM(S.CA)=0 THEN 0 
ELSE SUM(S.AWT) * 1.0 / SUM(S.CA) END,
CompletedTasks_AHT= (CASE WHEN SUM(S.CH)=0 THEN 0
ELSE SUM(S.HCT) / SUM(S.CH) END),
CompletedTasks_AvgActiveTime=CASE WHEN SUM(S.CH)=0 THEN 0 ELSE (SUM(S.HCTT) / SUM(S.CH))END,
CompletedTasks_AvgWrapTime=CASE WHEN SUM(S.CH)=0 THEN 0 ELSE ((SUM(S.WRT) + SUM(S.WNRT)) / SUM(S.CH))END, 
ast_ActiveTime=SUM(S.TT),
ast_PerBusyOtherTime=(CASE WHEN SUM(S.LOT)=0 THEN 0
ELSE SUM(S.BOT) * 1.0 / SUM(S.LOT) END),
AbandCalls=SUM(ISNULL(R.CallsAbandQ,0) + ISNULL(R.CallsAbandToAgent,0)),
AbandTime=SUM(ISNULL(R.DelayQAbandTime,0)),
pickRequests = sum(isnull(R.PickRequests,0)),
pickErrors = sum(isnull(R.PickErrors,0)),
pullRequests = sum(isnull(R.PullRequests,0)),
pullErrors = sum(isnull(R.PullErrors,0))
FROM
Router_Queue_Interval R (nolock)
LEFT OUTER JOIN Attribute A1 (nolock) on R.AttributeID1=A1.AttributeID
LEFT OUTER JOIN Attribute A2 (nolock) on R.AttributeID2=A2.AttributeID
LEFT OUTER JOIN Attribute A3 (nolock) on R.AttributeID3=A3.AttributeID
LEFT OUTER JOIN Attribute A4 (nolock) on R.AttributeID4=A4.AttributeID
LEFT OUTER JOIN Attribute A5 (nolock) on R.AttributeID5=A5.AttributeID
LEFT OUTER JOIN Attribute A6 (nolock) on R.AttributeID6=A6.AttributeID
LEFT OUTER JOIN Attribute A7 (nolock) on R.AttributeID7=A7.AttributeID
LEFT OUTER JOIN Attribute A8 (nolock) on R.AttributeID8=A8.AttributeID
LEFT OUTER JOIN Attribute A9 (nolock) on R.AttributeID9=A9.AttributeID
LEFT OUTER JOIN Attribute A10 (nolock) on R.AttributeID10=A10.AttributeID,
(Select PrecisionQueueID, DateTime,
CbM=SUM(ISNULL(CallbackMessages,0)),
CbMT=SUM(ISNULL(CallbackMessagesTime,0)),
AHCTT=AVG(ISNULL(AvgHandledCallsTalkTime,0)),
HT=SUM(ISNULL(HoldTime,0)),
HCTT=SUM(ISNULL(HandledCallsTalkTime,0)),
IntC=SUM(ISNULL(InternalCalls,0)),
IntCT=SUM(ISNULL(InternalCallsTime,0)),
CH=SUM(ISNULL(CallsHandled,0)),
SAC=SUM(ISNULL(SupervAssistCalls,0)),
AHCT=AVG(ISNULL(AvgHandledCallsTime,0)),
SACT=SUM(ISNULL(SupervAssistCallsTime,0)),
HCT=SUM(ISNULL(HandledCallsTime,0)),
AOCT=SUM(ISNULL(AgentOutCallsTime,0)),
TIT=SUM(ISNULL(TalkInTime,0)),
LOT=SUM(ISNULL(LoggedOnTime,0)),
EO=SUM(ISNULL(AgentOutCalls,0)),
TOutT=SUM(ISNULL(TalkOutTime,0)),
TOT=SUM(ISNULL(TalkOtherTime,0)),
AT=SUM(ISNULL(AvailTime,0)),
NRT=SUM(ISNULL(NotReadyTime,0)),
TIC=SUM(ISNULL(TransferInCalls,0)),
TT=SUM(ISNULL(TalkTime,0)),
TICT=SUM(ISNULL(TransferInCallsTime,0)),
WRT=SUM(ISNULL(WorkReadyTime,0)),
TOC=SUM(ISNULL(TransferOutCalls,0)),
WNRT=SUM(ISNULL(WorkNotReadyTime,0)),
BOT=SUM(ISNULL(BusyOtherTime,0)),
CA=SUM(ISNULL(CallsAnswered,0)),
RST=SUM(ISNULL(ReservedStateTime,0)),
AWT=SUM(ISNULL(AnswerWaitTime,0)),
ARC=SUM(ISNULL(AbandonRingCalls,0)),
ART=SUM(ISNULL(AbandonRingTime,0)),
AHC=SUM(ISNULL(AbandonHoldCalls,0)),
AOCTT=SUM(ISNULL(AgentOutCallsTalkTime,0)),
AOCOH=SUM(ISNULL(AgentOutCallsOnHold,0)),
AOCOHT=SUM(ISNULL(AgentOutCallsOnHoldTime,0)),
ATC=SUM(ISNULL(AgentTerminatedCalls,0)),
CC=SUM(ISNULL(ConsultativeCalls,0)),
CCT=SUM(ISNULL(ConsultativeCallsTime,0)),
CIC=SUM(ISNULL(ConferencedInCalls,0)),
CICT=SUM(ISNULL(ConferencedInCallsTime,0)),
COC=SUM(ISNULL(ConferencedOutCalls,0)),
COCT=SUM(ISNULL(ConferencedOutCallsTime,0)),
ICOHT=SUM(ISNULL(IncomingCallsOnHoldTime,0)),
ICOH=SUM(ISNULL(IncomingCallsOnHold,0)),
IntCOHT=SUM(ISNULL(InternalCallsOnHoldTime,0)),
IntCOH=SUM(ISNULL(InternalCallsOnHold,0)),
IntCRT=SUM(ISNULL(InternalCallsRcvdTime,0)),
IntCR=SUM(ISNULL(InternalCallsRcvd,0)),
RNAC=SUM(ISNULL(RedirectNoAnsCalls,0)),
RNACT=SUM(ISNULL(RedirectNoAnsCallsTime,0)),
SC=SUM(ISNULL(ShortCalls,0)),
AutoOC=SUM(ISNULL(AutoOutCalls,0)),
AutoOCT=SUM(ISNULL(AutoOutCallsTime,0)),
AutoOCTT=SUM(ISNULL(AutoOutCallsTalkTime,0)),
AutoOCOH=SUM(ISNULL(AutoOutCallsOnHold,0)),
AutoOCOHT=SUM(ISNULL(AutoOutCallsOnHoldTime,0)),
PC=SUM(ISNULL(PreviewCalls,0)),
PCT=SUM(ISNULL(PreviewCallsTime,0)),
PCTT=SUM(ISNULL(PreviewCallsTalkTime,0)),
PCOH=SUM(ISNULL(PreviewCallsOnHold,0)),
PCOHT=SUM(ISNULL(PreviewCallsOnHoldTime,0)),
RC=SUM(ISNULL(ReserveCalls,0)),
RCT=SUM(ISNULL(ReserveCallsTime,0)),
RCTT=SUM(ISNULL(ReserveCallsTalkTime,0)),
RCOH=SUM(ISNULL(ReserveCallsOnHold,0)),
RCOHT=SUM(ISNULL(ReserveCallsOnHoldTime,0)),
TAOT=SUM(ISNULL(TalkAutoOutTime,0)),
TPT=SUM(ISNULL(TalkPreviewTime,0)),
TRT=SUM(ISNULL(TalkReserveTime,0)),
BIC=SUM(ISNULL(BargeInCalls,0)),
IC=SUM(ISNULL(InterceptCalls,0)),
MC=SUM(ISNULL(MonitorCalls,0)),
WC=SUM(ISNULL(WhisperCalls,0)),
EA=SUM(ISNULL(EmergencyAssists,0)),
IT=SUM(ISNULL(InterruptedTime,0)),
RE=SUM(ISNULL(RouterError,0)),  
NCC=sum(isnull(NetConsultativeCalls,0)),
NCCT=SUM(ISNULL(NetConsultativeCallsTime,0)), 
NCOC=sum(isnull(NetConferencedOutCalls,0)),
NCOCT=SUM(ISNULL(NetConfOutCallsTime,0)),
NTOC=sum(isnull(NetTransferOutCalls,0)),
RI=MAX(ISNULL(ReportingInterval,0))
from Skill_Group_Interval (nolock)
group by PrecisionQueueID, DateTime) S, 
Precision_Queue PQ (nolock),
Media_Routing_Domain  (nolock)  
WHERE PQ.PrecisionQueueID=S.PrecisionQueueID 
and R.DateTime=S.DateTime 
and PQ.PrecisionQueueID=R.PrecisionQueueID
and PQ.MRDomainID = Media_Routing_Domain.MRDomainID
and PQ.EnterpriseName IN ('C_HITS_CMD_BYPASS', 'C_HITS_CRITICAL_CLINICAL', 'C_HITS_DEVICES','C_HITS_GENERAL_ISSUES', 'C_HITS_HIDDEN_INTAKE', 'C_HITS_IDENTITY_ACCESS','C_HITS_MAJOR_INCIDENT', 'C_HITS_NONCRITICAL_CLINICAL')
GROUP BY 
Media_Routing_Domain.EnterpriseName,
Media_Routing_Domain.MRDomainID,
CAST(DATEADD(mm, DATEDIFF(mm,0,S.DateTime), 0) AS DATE),
R.TimeZone
ORDER BY CAST(DATEADD(mm, DATEDIFF(mm,0,S.DateTime), 0) AS DATE)

Troubleshooting Reports

Below you will find common reporting errors and suggestions for how to resolve them. Errors appear after a report is run, in small print, in the lower left corner of the report.

Error Common Cause Common Resolution
Report execution failed due to time out after 180 seconds. Please try again or increase the timeout using CLI. CUIC imposes a report execution limit of 180 seconds. If the report takes longer than that to run, it is cancelled and no results are returned.  Reduce the amount of data you are trying to fetch by applying additional filters. Most commonly, that would be (further) restricting the date range or the number of queues / agents queried. If you need more data than CUIC can handle in a single report, run the report multiple times with different date ranges and/or queues / agents.
More than the displayed number of records are available. To view these records, modify your filter criteria. CUIC imposes a report results limit of 8000 rows. If the report returns more than 8000 rows, the excess is discarded and only partial results are displayed. Reduce the amount of data you are trying to fetch by applying additional filters. Most commonly, that would be (further) restricting the date range or the number of queues / agents queried. If you need more data than CUIC can handle in a single report, run the report multiple times with different date ranges and/or queues / agents.