Подсчет статусов объекта, состоящего из нескольких подобъектов с разными статусами

Автор Посетитель 10.08.2024, 10 августа 2024, 14:56

Посетитель 10.08.2024

Добрый день!
Интересует формула или мера, для подсчета статусов объекта, состоящего из нескольких подобъектов с разными статусами

Имеется таблица, со столбцами Объект; Подобъект, Статус подобъекта
В одном объекте может быть один или несколько подобъектов
Статус может быть (в работе, не приступали, завершено)
Нужна формула которая будет считать статус объекта из логики если даже 1 подобъект в работе, то весь объект в работе, если подобъекты ("завершены" + "не приступали") то объект "в работе"

Администратор

Нужно смотреть структуру таблицы (как заполнены строки, столбцы).
Можете для теста сделать новый пустой файл и примерно заполните его.

Посетитель 10.08.2024

Направляю таблицу с примером данных и возможными ситуациями, с ожидаемым результатом

[ФАЙЛЫ ВАШИ ПОЛУЧЕНЫ - НЕТ НЕОБХОДИМОСТИ ВЫКЛАДЫВАТЬ ИХ ПОВТОРНО]

Администратор

То есть нужно подсчитать не для каждого объекта отдельно, а общее значение для всех объектов?

Посетитель 10.08.2024

Да, данная формула нужна для Меры в модели данных
Либо формула для вычисляемого столбца для подстановки статуса для каждого объекта

Администратор

Вы пишите какие-то умные слова.
Вы предоставили файл, в нём перечислены объекты. Теперь посмотрите мой ответ #3.
При чём здесь меры, модели данных. Я вам задал конкретный вопрос по файлу.


Администратор

Я делаю простые формулы, с мерами мне не приходилось ещё работать.
Спросите на другом форуме. На этом форуме отвечаю только я.
Я с ходу не знаю, как такое сделать с помощью формул.

Посетитель 10.08.2024

Вот такая формула для вычисления статуса каждого объекта:

"=ЕСЛИ(СЧЁТЕСЛИМН([Статус подобъекта];"в работе";[Объект];[@Объект])>0;"в работе";
ЕСЛИ(И(СЧЁТЕСЛИМН([Статус подобъекта];"не приступали";[Объект];[@Объект])>0;СЧЁТЕСЛИМН([Статус подобъекта];"завершен";[Объект];[@Объект])>0);"в работе";
ЕСЛИ(И(СЧЁТЕСЛИМН([Статус подобъекта];"завершен";[Объект];[@Объект])>0;СЧЁТЕСЛИМН([Статус подобъекта];"не приступали";[Объект];[@Объект])=0);"завершен";"не приступали")))"

Ну а меру из этого в модели данных не сложно посчитать

Количество объектов в работе:=CALCULATE(DISTINCTCOUNT('Имя_таблицы'[Объект]);'Имя_таблицы'[Статус объекта]="в работе")