Объединение показателей из разных таблиц

В настоящее время я создаю панель мониторинга, состоящую из источников данных с несколькими уровнями взаимосвязей. Некоторые таблицы не взаимодействуют друг с другом и не имеют отношений, которые я мог бы объединить.

Взаимосвязь таблиц

Я пытаюсь объединить все три показателя в одну таблицу. В идеале предполагаемая расчетная мера, которую я ищу, — это получить что-то вроде этого.

Общий доход = доход A (из таблицы A) * доход B (из таблицы B) * доход C (из таблицы C).

Я попытался создать связь между тремя таблицами, но, поскольку они не взаимодействуют друг с другом, отображаемые результаты неверны и показывают одно значение в течение дня, недели и месяца. Я также пытался поиграть, связав три таблицы в главную таблицу календаря и поместив туда объединенную меру, но это тоже не работает. Мой мыслительный процесс здесь состоит в том, чтобы объединить 3 меры в 1 и сохранить эту объединенную меру в таблице календаря, чтобы я мог использовать таблицу «Дата из календаря» в качестве основного столбца даты. Однако я не совсем уверен, как мне с этим справиться, и именно здесь я застрял.

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

Выход

Ссылка на мой источник тестовых данных и рабочий файл Power BI: 1drv.ms/f/s!AiNw1b4HnMZOgaBb0fIaKLkRaAnuEA Благодарим за помощь и поддержку! Спасибо!

rvnd 25.06.2024 03:36

каков ожидаемый результат на основе предоставленных вами образцов данных?

Ryan 25.06.2024 05:02

Я отредактировал сообщение, включив в него ожидаемый результат. Большое спасибо!

rvnd 25.06.2024 07:49
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
3
74
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

пожалуйста, измените ваши меры

Yield A Formula =
CALCULATE (
    SUM ( 'Yield A'[FINISHQTY] ),
    FILTER (
        'Yield A',
        'Yield A'[Week Number] = SELECTEDVALUE ( 'Calendar'[Week Number] )
    )
)
    / CALCULATE (
        SUM ( 'Yield A'[STARTQTY] ),
        FILTER (
            'Yield A',
            'Yield A'[Week Number] = SELECTEDVALUE ( 'Calendar'[Week Number] )
        )
    )


Yield B Formula =
CALCULATE (
    SUM ( 'Yield B'[FINISHQTY] ),
    FILTER (
        'Yield B',
        'Yield B'[Week Number] = SELECTEDVALUE ( 'Calendar'[Week Number] )
    )
)
    / CALCULATE (
        SUM ( 'Yield B'[STARTQTY] ),
        FILTER (
            'Yield B',
            'Yield B'[Week Number] = SELECTEDVALUE ( 'Calendar'[Week Number] )
        )
    )

NEW START QTY =
CALCULATE (
    SUM ( 'Yield C'[NEW FINISH QTY] ),
    FILTER (
        'Yield C',
        'Yield C'[Week Number] = SELECTEDVALUE ( 'Calendar'[Week Number] )
    )
)
    + CALCULATE (
        SUM ( 'Yield C'[BNU Qty] ),
        FILTER (
            'Yield C',
            'Yield C'[Week Number] = SELECTEDVALUE ( 'Calendar'[Week Number] )
        )
    )

Yield C Formula =
CALCULATE (
    SUM ( 'Yield C'[NEW FINISH QTY] ),
    FILTER (
        'Yield C',
        'Yield C'[Week Number] = SELECTEDVALUE ( 'Calendar'[Week Number] )
    )
) / [NEW START QTY]

затем создайте новую меру

MEASURE =
VAR _a =
    IF ( ISBLANK ( 'Yield A'[Yield A Formula] ), 1, 'Yield A'[Yield A Formula] )
VAR _b =
    IF ( ISBLANK ( 'Yield B'[Yield B Formula] ), 1, 'Yield B'[Yield B Formula] )
VAR _c =
    IF ( ISBLANK ( 'Yield C'[Yield C Formula] ), 1, 'Yield C'[Yield C Formula] )
RETURN
    _a * _b * _c

Другие вопросы по теме