Forum Discussion
Slow Report Rendering
Hi GilbertQ,
When I run View (which is source of report) in Sql Server Mgmt Studio, it returns all rows in less than 2 sec response. Azure DB side nothing has been changed. What excatly I should check on Db side, if you could suggest ? Also if you could guide, how to check, about throttling of Prem Workspace capacity/process power ?
Thanks for your reply.
Regards
Hi Anonymous
That is interesting that is running quickly via the View
Do you have any filters on your report at all? That could be slowing it down.
What happens when you run the same report via PBI Desktop is it fast or slow?
Just trying to understand where the bottleneck is!
- Anonymous4 years agoNot applicable
Its also taking similar time in local PBI-Desktop.
There is default, slicer selected (for one manager name).
Below is perf-mon query of costliest table visual.
Table has one conditional formating on 'Customer' based on Value of 'RAG' i.e. score.
Another web url conditional formating (i.e. hyperlink is given on Ticket id, to outside webpage)
// DAX Query
DEFINE
VAR __DS0FilterTable =
FILTER(
KEEPFILTERS(VALUES('Manager'[EscalatedTicket])),
NOT('Manager'[EscalatedTicket] IN {0,
BLANK()})
)VAR __DS0FilterTable2 =
TREATAS({"John Doe"}, 'Manager'[Reporting Manager L1])VAR __DS0Core =
FILTER(
KEEPFILTERS(
SUMMARIZECOLUMNS(
'Manager'[Ticket ID],
'Manager'[Status],
'Manager'[Priority],
'Manager'[Customer],
'Manager'[Expiry],
'Manager'[Subject],
'Manager'[Agent name],
__DS0FilterTable,
__DS0FilterTable2,
"MinRAG", IGNORE(CALCULATE(MIN('Manager'[RAG]))),
"tURL", IGNORE('Manager'[tURL])
)
),
OR(
OR(
OR(
OR(
OR(
OR(
NOT(ISBLANK('Manager'[Ticket ID])),
NOT(ISBLANK('Manager'[Status]))
),
NOT(ISBLANK('Manager'[Priority]))
),
NOT(ISBLANK('Manager'[Customer]))
),
NOT(ISBLANK('Manager'[Expiry]))
),
NOT(ISBLANK('Manager'[Subject]))
),
NOT(ISBLANK('Manager'[Agent name]))
)
)VAR __DS0PrimaryWindowed =
TOPN(
501,
__DS0Core,
'Manager'[Expiry],
0,
'Manager'[Ticket ID],
1,
'Manager'[Status],
1,
'Manager'[Priority],
1,
'Manager'[Customer],
1,
'Manager'[Subject],
1,
'Manager'[Agent name],
1
)EVALUATE
__DS0PrimaryWindowedORDER BY
'Manager'[Expiry] DESC,
'Manager'[Ticket ID],
'Manager'[Status],
'Manager'[Priority],
'Manager'[Customer],
'Manager'[Subject],
'Manager'[Agent name]
// Direct QuerySELECT
TOP (1000001) [t0].[Ticket ID],[t0].[Status],[t0].[Priority],[t0].[Agent name],[t0].[Customer],[t0].[EscalatedTicket],[t0].[Expiry],[t0].[Subject]
FROM
(
(
select [$Table].[Ticket ID] as [Ticket ID],
[$Table].[Status] as [Status],
[$Table].[Priority] as [Priority],
[$Table].[Ticket type] as [Ticket type],
[$Table].[Agent name] as [Agent name],
[$Table].[Customer] as [Customer],
[$Table].[EscalatedTicket] as [EscalatedTicket],
[$Table].[PendingTicket] as [PendingTicket],
[$Table].[OpenTicket] as [OpenTicket],
[$Table].[SLA Expired] as [SLA Expired],
[$Table].[CreatedAgeDays] as [CreatedAgeDays],
[$Table].[UpdatedAgeDays] as [UpdatedAgeDays],
[$Table].[SLAexp] as [SLAexp],
[$Table].[Expiry] as [Expiry],
[$Table].[ExpirySrt] as [ExpirySrt],
[$Table].[Subject] as [Subject],
[$Table].[updated_at] as [updated_at],
[$Table].[Reporting Manager L1] as [Reporting Manager L1],
[$Table].[Function Lead L2] as [Function Lead L2],
[$Table].[Org Lead L3] as [Org Lead L3],
[$Table].[Action On] as [Action On],
[$Table].[OpenAging] as [OpenAging],
[$Table].[IdleAging] as [IdleAging],
[$Table].[OpenAgingSrt] as [OpenAgingSrt],
[$Table].[IdleAgingSrt] as [IdleAgingSrt],
[$Table].[CS RAG] as [CS RAG],
[$Table].[RAG] as [RAG]
from [dbo].[vwFD_DashboardManagerTickets] as [$Table]
)
)
AS [t0]
WHERE
(
(
[t0].[Reporting Manager L1] = 'John Doe'
)
AND
(
NOT(
(
([t0].[EscalatedTicket] IN (0))
OR
(
[t0].[EscalatedTicket] IS NULL
)
)
)
)
)GROUP BY [t0].[Ticket ID],[t0].[Status],[t0].[Priority],[t0].[Agent name],[t0].[Customer],[t0].[EscalatedTicket],[t0].[Expiry],[t0].[Subject]
// Direct QuerySELECT
TOP (1000001) *
FROM
(SELECT [t0].[Ticket ID],[t0].[Status],[t0].[Priority],[t0].[Agent name],[t0].[Customer],[t0].[Expiry],[t0].[Subject],MIN([t0].[Ticket ID])
AS [a0],MIN([t0].[RAG])
AS [a1]
FROM
(
(
select [$Table].[Ticket ID] as [Ticket ID],
[$Table].[Status] as [Status],
[$Table].[Priority] as [Priority],
[$Table].[Ticket type] as [Ticket type],
[$Table].[Agent name] as [Agent name],
[$Table].[Customer] as [Customer],
[$Table].[EscalatedTicket] as [EscalatedTicket],
[$Table].[PendingTicket] as [PendingTicket],
[$Table].[OpenTicket] as [OpenTicket],
[$Table].[SLA Expired] as [SLA Expired],
[$Table].[CreatedAgeDays] as [CreatedAgeDays],
[$Table].[UpdatedAgeDays] as [UpdatedAgeDays],
[$Table].[SLAexp] as [SLAexp],
[$Table].[Expiry] as [Expiry],
[$Table].[ExpirySrt] as [ExpirySrt],
[$Table].[Subject] as [Subject],
[$Table].[updated_at] as [updated_at],
[$Table].[Reporting Manager L1] as [Reporting Manager L1],
[$Table].[Function Lead L2] as [Function Lead L2],
[$Table].[Org Lead L3] as [Org Lead L3],
[$Table].[Action On] as [Action On],
[$Table].[OpenAging] as [OpenAging],
[$Table].[IdleAging] as [IdleAging],
[$Table].[OpenAgingSrt] as [OpenAgingSrt],
[$Table].[IdleAgingSrt] as [IdleAgingSrt],
[$Table].[CS RAG] as [CS RAG],
[$Table].[RAG] as [RAG]
from [dbo].[vwFD_DashboardManagerTickets] as [$Table]
)
)
AS [t0]
WHERE
(
(
[t0].[Reporting Manager L1] = 'John Doe'
)
AND
(
NOT(
(
([t0].[EscalatedTicket] IN (0))
OR
(
[t0].[EscalatedTicket] IS NULL
)
)
)
)
)GROUP BY [t0].[Ticket ID],[t0].[Status],[t0].[Priority],[t0].[Agent name],[t0].[Customer],[t0].[Expiry],[t0].[Subject]
)
AS [MainTable]
WHERE
(NOT(
(
[a0] IS NULL
)
)
OR
NOT(
(
[a1] IS NULL
)
))