power BI Получение минимальной и максимальной даты путем сравнения двух таблиц

У меня есть три таблицы, а именно Allitems, InItems и OutItems. Основная таблица - это Allitems, которая связана с двумя другими таблицами с IN_OUT_ID. Мне удалось вычислить минимальную и максимальную дату на основе идентификаторов для каждого из

Набор данных

введите здесь описание изображения

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

Для таблиц InItems

Min_Start_Date = CALCULATE( MIN(InItems[InDate]), ALLEXCEPT( InItems, InItems[IN_ID] ))
Max_end_Date =  CALCULATE( MAX(InItems[InDate]), ALLEXCEPT( InItems, InItems[IN_ID] ))

Для таблицы OutItems

Min_Start_Date = CALCULATE( MIN(OutItems[OutDate]), ALLEXCEPT( OutItems, OutItems[OUT_ID]))
Max_end_Date = CALCULATE( MAX(OutItems[OutDate]), ALLEXCEPT( OutItems, OutItems[OUT_ID] ))

отношения, которые у меня есть, меняют направление, чтобы течь в обе стороны

введите здесь описание изображения

Я пытаюсь вернуть минимальную и максимальную дату, сравнивая минимальную и максимальную дату из OutItems и Allitems и использую ее в качестве столбца в таблице Allitems. Например, взяв IN_ID 1, минимальная дата - 01.08.2019. Я также возьму минимальную дату OUT_ID - 02.03.2019. Затем мне нужна минимальная дата между этими двумя датами - 01.08.2019. Может ли кто-нибудь помочь мне в этом?

Ожидаемый результат

введите описание изображения здесь

Я открыт для любого вопроса спасибо


person JonWay    schedule 08.07.2019    source источник


Ответы (1)


Для этого вам не нужны отношения для фильтрации в обоих направлениях, и вам не нужны эти четыре вычисляемых столбца. Просто возьмите мин / макс мин / макс:

Mindate =
MIN (
    CALCULATE ( MIN ( InItems[InDate] ) ),
    CALCULATE ( MIN ( OutItems[OutDate] ) )
)

а также

Maxdate =
MAX (
    CALCULATE ( MAX ( InItems[InDate] ) ),
    CALCULATE ( MAX ( OutItems[OutDate] ) )
)

Обратите внимание, что CALCULATE здесь выполняет переход контекста, который применяет контекст строки (значения IN_OUT_ID и Item в текущей строке) в качестве контекста фильтра при принятии минимального / максимального значения по другим таблицам. Если вы удалите его, вы получите минимальное / максимальное значение для всех значений идентификатора.

person Alexis Olson    schedule 08.07.2019