Сделайте расчет для части таблицы на основе категории, а затем сложите все - PullRequest
0 голосов
/ 01 марта 2020

Я делаю график с количеством FTE в месяц (или день или год). У меня есть разные ресурсы с возможным собственным календарем (может быть таким же). Я получаю информацию следующим образом в таблице ResourceLimit:

RscId  CalId  Day     TotalHours  WorkHoursThatDay
1      1      1/1/19  8           4
1      1      2/1/19  16          8
2      2      1/1/19  8           8

Я создал meausere следующим образом:

FTE = DIVIDE(SUM(TotalHours),SUM(WorkHoursThatDay))*DISTINCTCOUNT(RscID)

Это прекрасно работает, пока один календарь используется, но в тот момент, когда используются несколько разных календарей, итоговая сумма больше не является правильной, поскольку разные рабочие часы, в которые день не может суммироваться и делиться на количество раз, которое использовался календарь. Средняя продолжительность рабочего дня рассчитывается таким образом, и это приводит к ошибке.

Я ищу что-то вроде этого:

FTE = SUM( CALCULATE(DIVIDE(SUM(TotalHours),SUM(WorkHoursThatDay))*DISTINCTCOUNT(RscID) per calendarID) over all calendar ID's)

Я искал решение, но так Пока я только нашел способ рассчитать его только за месяц с помощью вычисляемого столбца, но я хочу иметь возможность детализировать его до недель, дней или лет. Это код на месяц:

FTE_Per_Month = SUMX(SUMMARIZE(
ResourceLimit,
ResourceLimit[CalulatedMonthandYear],
ResourceLimit[CalId],
"FTE",
DIVIDE(SUM(ResourceLimit[TotalHours]),SUM(ResourceLimit[WorkHoursThatDay]))
*DISTINCTCOUNT(ResourceLimit[RscId])),[FTE])

Может кто-нибудь помочь мне с решением.

...