Чтобы ответить на ваш вопрос напрямую, эта формула должна дать вам желаемый результат:
Desired Result for Store Sales =
IF(ISFILTERED(_Sales[Store]), SUM(_Store[Store Sales]))
Тем не менее, я рекомендую вернуться к дизайну вашей модели данных. Это концептуально неверно (вы смешиваете подробные данные со сводкой тех же данных), и у вас будут серьезные проблемы с DAX. Лучший способ структурировать ваши данные:
- Убрать столбец "Магазин продаж". Это избыточно и не соответствует уровню детализации данных.
- Переименуйте столбец «Продажи товара» в «Сумма продажи». Это просто сумма продажи, без каких-либо классификаторов.
- Создание показателя "Общий объем продаж" = SUM (_Sales [Sale Amount]). Он будет правильно рассчитывать общий объем продаж как на уровне продуктов, так и на уровне магазинов.
Если вам нужна специальная мера для продаж в магазине, используйте SUMX:
Store-level sales = SUMX (VALUES(_Sales[Store]), [Total Sales])
А если вам нужно показать вклад продукта в продажи магазина:
Product Contribution = `DIVIDE([Total Sales], [Store-Level Sales])