Я пытаюсь настроить ScoreCategory для каждого продавца по продажам против средних продаж.
Основные меры верны.
Для ScoreCategory я сделал следующие меры:
Average Production per ALL Sellers = CALCULATE([Sales YTD (2019)]/[Number of Sellers];ALL('ProductionTable'[Sellers_ID];'ProductionTable'[Sellers_Manager];'ProductionTable'[Region]))
и
Average Production per Seller = [Sales YTD (2019)]/[Number of Sellers]
и
Sales vs average = ([Average Production per Seller]/[Average Production per ALL Sellers])
Следующий шаг:
Scoring round up = ROUNDUP([Sales vs average];1)
Хотя все было в порядке. Но когда я попытался настроить ScoringCategory, как показано ниже, он показывает мне другое, неправильное значение в таблице, но в Total или в карте после фильтрации по одному продавцу, он показывает мне правильное значение ScoringCategory.
ScoringCategory =
IF(OR([Scoring round up] = 0,0;[Scoring round up] = 0,1) ; 1;
IF(OR([Scoring round up] = 0,2;[Scoring round up] = 0,3) ; 2;
IF(OR([Scoring round up] = 0,4;[Scoring round up] = 0,5) ; 3;
IF(OR([Scoring round up] = 0,6;[Scoring round up] = 0,7) ; 4;
IF(OR([Scoring round up] = 0,8;[Scoring round up] = 0,9) ; 5;
IF(OR([Scoring round up] = 1;[Scoring round up] = 1,1) ; 6;7))))))
Обратите внимание на другое значение для ScoringCategory, рассчитанное как "IF".
введите описание изображения здесь
А когда я фильтрую на отдельного продавца
Разница в оценкахКатегория между столом и картой
Где-то "IF" рассчитывается правильно ScoringCategory, но где-то это не так.
введите описание изображения здесь
Замечу, что когда ScoringCategory содержит только 2 «IF-функции», он вычисляется правильно, но когда он содержит больше «IF-функции», как указано выше, это неправильно.
У кого-нибудь была похожая проблема? Есть ли другой способ для вычисления ScoringCategory без "IF-функции"? Я пытался использовать интервал с функциями IF, но это не помогло ...
Я думаю, что это может работать с новой таблицей интервалов.
Примерно так, как показано ниже, но у меня недостаточно опыта, чтобы приспособить его к моему решению.
TEST= VAR RankingDimension = VALUES('ProductionTable'[Sellers_ID]) RETURN CALCULATE([Sales vs average];
FILTER(RankingDimension;
COUNTROWS(
FILTER('Support Scoring';
RANKX(ALL('ProductionTable'[Sellers_ID]);[Sales vs average];;DESC)>'Support Scoring'[Min]
&& RANKX(ALL('ProductionTable'[Sellers_ID]);[Sales vs average];;DESC)<= 'Support Scoring'[Max]))>0))