Итак, у меня есть этот фрагмент кода, который проверяет, какие машины, которые мы сделали, в настоящее время активны. Текущий стандарт для активной машины заключается в том, что она генерирует не менее 25 виджетов в неделю в течение последних четырех недель подряд. Написать это в DAX было не так сложно, но мы не довольны определением. В настоящее время проблема заключается в том, что если работа на одной машине отнимает у машины неделю, теперь она считается неактивной, даже если на нее уходит всего одна неделя <25 виджетов. Теперь мы хотим изменить определение на 3/4 недели за последние четыре недели. Таким образом, машина не помечается как неактивная в течение одной медленной недели. </p>
Это оказалось сложнее, чем я думал. Моя первоначальная идея состояла в том, чтобы просто установить счетчик VAR = 0 и просто подсчитывать каждую ИСТИНА за каждую неделю, если счетчик равен 3 или выше, машина активна. Проблема в том, что я просто не могу понять, как использовать VAR в DAX, я просто не понимаю.
ActiveMachines = IF(
(CALCULATE(SUM('Query1'[TrayProduced Hourly]),
DATESINPERIOD('Query1'[TrayProducedDay].[Date]
,CALCULATE(MAX('Query1'[TrayProducedDay].[Date]), FILTER(ALL('Query1'), 'Query1'[TrayProduced Hourly]))
,-7
,DAY)
) > 25 &&
CALCULATE(SUM('Query1'[TrayProduced Hourly]),
DATESINPERIOD('Query1'[TrayProducedDay].[Date]
,(CALCULATE(MAX('Query1'[TrayProducedDay].[Date]), FILTER(ALL('Query1'), 'Query1'[TrayProduced Hourly])) - 7)
,-7
,DAY)
) > 25 &&
CALCULATE(SUM('Query1'[TrayProduced Hourly]),
DATESINPERIOD('Query1'[TrayProducedDay].[Date]
,(CALCULATE(MAX('Query1'[TrayProducedDay].[Date]), FILTER(ALL('Query1'), 'Query1'[TrayProduced Hourly])) - 14)
,-7
,DAY)
) > 25 &&
CALCULATE(SUM('Query1'[TrayProduced Hourly]),
DATESINPERIOD('Query1'[TrayProducedDay].[Date]
,(CALCULATE(MAX('Query1'[TrayProducedDay].[Date]), FILTER(ALL('Query1'), 'Query1'[TrayProduced Hourly])) - 21)
,-7
,DAY)
) > 25), TRUE, FALSE)
Код выше в настоящее время работает, теперь, что мне нужно добавить к этому (или удалить, или что-то ещееще) чтобы у меня появилась идея поработать здесь? Любая помощь будет принята с благодарностью:)