Forum Discussion
visual has exceeded available resources
- 9 years ago
Hi jgarciabu,
Yes, the issue occurs when a visual has attempted to query too much data for the server to complete the result with the available resources.
As suggested in the error, you may need to try filtering the visual to reduce the amount of data in the result currently.:smileyhappy:
Regards
hi Anonymous , can you provide a DAX example?
Thanks.
cittakaro Sure. None of my DAX is too crazy and is probably pretty basic to someone who is an expert. There might be better ways to do most of what I did but it works and loads quickly so I got what I needed.
This is probably one of the more complicated measures I had in my report. I used to have everything here that you see as variables written into what is now the return statement. Sorry if it seems a bit like a jumbled mess. It's essentially just a series of nested if statements. After I started using variables, the performance of the report loading visuals was almost instantaneous rather than taking upwards of 10-15 seconds just to load a matrix/table visualization, if it loaded those visuals at all.
EarnedTitleLevel# =
VAR SurveylessthanTitle = [SurveyScoreGoal]<=values(TMD[Title Sort])
var SClessthanTitle = [StatusCountGoal]<=values(TMD[Title Sort])
var TTlessthanTitle = [TurnTimeGoal]<=values(TMD[Title Sort])
var AnswerlessthanTitle = [AnswerRateGoal]<=values(TMD[Title Sort])
VAR SurveylessthanSC = [SurveyScoreGoal]<=[StatusCountGoal]
var SClessthanSurvey = [StatusCountGoal]<=[SurveyScoreGoal]
VAR SurveylessthanTT = [SurveyScoreGoal]<=[TurnTimeGoal]
var TTlessthanSurvey = [TurnTimeGoal]<=[SurveyScoreGoal]
var SurveylessthanAnswer = [SurveyScoreGoal]<=[AnswerRateGoal]
var AnswerlessthanSurvey = [AnswerRateGoal]<=[SurveyScoreGoal]
var TTGoal = [TurnTimeGoal]
var SurveyScore = [SurveyScoreGoal]
var MinSurveys = [SurveyReceivedMin]
var MinCR = [CRCountMin]
var AnswerGoal = [AnswerRateGoal]
var statusgoal = [StatusCountGoal]
var CurrentTitle = values(TMD[Title Sort])
return
if(values(TMD[Specialty])="Mainstream PS" || values(TMD[Specialty])="NY PS",
if(isblank(TTGoal) || isblank(SurveyScore), CurrentTitle,
if(MinCR = -1 || MinSurveys = -1,
if(SurveylessthanTitle && SurveylessthanTT,SurveyScore,
if(TTlessthanTitle && TTlessthanSurvey,TTGoal,CurrentTitle)),
if(SurveylessthanTT,SurveyScore,TTGoal))),
if(values(TMD[Specialty])="Hunt PS",
if(isblank(statusgoal) || isblank(SurveyScore), CurrentTitle,
if(MinSurveys = -1 || [RONAgoal]=-1,
if(SurveylessthanTitle && SurveylessthanSC,SurveyScore,
if(SClessthanTitle && SClessthanSurvey,statusgoal,CurrentTitle)),
if(SurveylessthanSC,SurveyScore,statusgoal))),
if(values(TMD[Specialty])="CCS" || values(TMD[Specialty])="Escalation CCS",
if(isblank(statusgoal) || isblank(SurveyScore), CurrentTitle,
if(MinSurveys = -1,
if(SurveylessthanTitle && SurveylessthanSC,SurveyScore,
if(SClessthanTitle && SClessthanSurvey,statusgoal,CurrentTitle)),
if(SurveylessthanSC,SurveyScore,statusgoal))),
if(isblank(AnswerGoal) || isblank(SurveyScore), CurrentTitle,
if(MinSurveys = -1,
if(SurveylessthanTitle && SurveylessthanAnswer,SurveyScore,
if(AnswerlessthanTitle && AnswerlessthanSurvey,AnswerGoal,CurrentTitle)),
if(SurveylessthanAnswer,SurveyScore,AnswerGoal))))))
A slightly simpler example is below here. Just for a bit of context that would make the code make a bit of sense without seeing the report, on each page of this report I've added in drop down slicers that the end user can use as selectors to adjust their goals for different tiers. Each of those slicers is reading off of a simple table that just has values that range from 0-100.
TurnTimeGoal =
var CRCount = [CR Count]
var TT = [TurnTime]
var TCGoal = selectedvalue(TurnTimeTC[Column1])
var PCGoal = selectedvalue(TurnTimePC[Column1])
var ExecGoal = selectedvalue(TurnTimeExec[Column1])
var SrGoal = selectedvalue(TurnTimeSenior[Column1])
return
if(isblank(CRCount),blank(),
if(values(TMD[Specialty])="Mainstream PS" || values(TMD[Specialty])="NY PS",
if(TT<TCGoal,4,
if(TT<PCGoal,3,
if(TT<ExecGoal,2,
if(TT<SrGoal,1,0)))),blank()))