Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
DAX (Power BI) : Добавить себестоимость в таблицу продаж согласно дате поступления
 
Максим Зеленский, спасибо за код, но он ооочень тяжелый, съел всю оперативку (16Гб), влез в SWAP  и в конце концов Power BI выдало ошибку о нехватке памяти.
Логику я понял, попробую оптимизировать код.
Кстати на счет связей в файле примера, я специально их оттуда убрал, чтобы показать, что формула выдает ошибку совсем не из-за связей.
И на счет "В третьих, если вы решаете в PBI, это тоже надо писать" - это я тоже писал в заголовке темы, посмотрите внимательно.
DAX (Power BI) : Добавить себестоимость в таблицу продаж согласно дате поступления
 
PooHkrd, выделил кусок в 30 строк, ошибка проявляется.
Файл во вложении.
Также приложил экселевские таблички как источник данных для этого файла.
Изменено: kiber - 03.12.2018 18:48:06
DAX (Power BI) : Добавить себестоимость в таблицу продаж согласно дате поступления
 
PooHkrd, Я обезличил эти две таблицы, ошибка вся та же. Что-то тут не то, возможно в примере мало строк данных, а в реальной таблице этих повторов дат много, в чудеса я уже не верю :)
DAX (Power BI) : Добавить себестоимость в таблицу продаж согласно дате поступления
 
PooHkrd, Да, Вы правы, я сейчас тоже слепил из этих данных *.pbix и без ошибок формула отрабатывает. Но в реальной модели данных выдает ошибку. У меня используются связи между двумя этими таблицами по полю "Номенклатура" и это вся разница между файлом примера и реальными данными.
Ну что же, буду "копать" дальше, попытаюсь выяснить почему на реальных данных ругается функция "LASTDATE".
Спасибо большое за уделенное время! Теперь понятно хоть в какую сторону копать :)
DAX (Power BI) : Добавить себестоимость в таблицу продаж согласно дате поступления
 
PooHkrd, Данных очень много, несколько миллионов строк, да и тут данные по продажам, постараюсь слепить эту же модель на тестовых обезличенных данных и после этого смогу выложить.
DAX (Power BI) : Добавить себестоимость в таблицу продаж согласно дате поступления
 
PooHkrd, формулу которую привел Максим Зеленский я проверял не в файле примера, а на своей реальной модели данных и там столбец Номенклатура всегда была, но как раз на ней формула и выдавала ошибку, о том, что "В вызове функции "LASTDATE" указан столбец даты, содержащий повторяющиеся значения даты" . Т.е. функции LASTDATE не нравится повторяющиеся значения даты и отсутствие столбца "Номенклатура" в файле примера тут никак не связано с этой ошибкой.
Я еще раз проверил эту формулу, но результат ошибки тот же.
DAX (Power BI) : Добавить себестоимость в таблицу продаж согласно дате поступления
 
PooHkrd, а как мне посмотреть код в этом файле? Мне надо его вставить в Power BI, в Экселе с DAX я еще не работал :)
DAX (Power BI) : Добавить себестоимость в таблицу продаж согласно дате поступления
 
не нужно вставлять в цитату копию предыдущего сообщеия [МОДЕРАТОР]

Да, спасибо, что указали на ошибку, это ошибка в примере, забыл указать.
Корректный файл прикрепил.
DAX (Power BI) : Добавить себестоимость в таблицу продаж согласно дате поступления
 
PooHkrd,
Неа, та же ошибка
Изменено: kiber - 03.12.2018 15:10:34
DAX (Power BI) : Добавить себестоимость в таблицу продаж согласно дате поступления
 
Максим Зеленский,
не работает конструкция, выдает ошибку: "В вызове функции "LASTDATE" указан столбец даты, содержащий повторяющиеся значения даты. Это не поддерживается."
DAX (Power BI) : Добавить себестоимость в таблицу продаж согласно дате поступления
 
Всем привет Коллеги!
Недавно открыл мир Power BI, пытаюсь рассчитать себестоимость товара, но не могу сообразить последний шаг.
Суть задачи проста, есть две таблицы ПродажиРегистрНакопления и СебестоимостьНоменклатуры. Создал столбец Себестоимость (в таблице ПродажиРегистрНакопления) и пытаюсь подтянуть цену себестоимости из таблицы СебестоимостьНоменклатуры, согласно дате поставки. Но с одним условием, что дата поставки должна быть ближайшая (в меньшую сторону) от даты продажи.
У меня получилось написать фильтр, который отбирает ближайшую дату поставки из таблицы СебестоимостьНоменклатуры, но я не могу найти какую функцию применить, чтобы подтянуть цену из этой отфильтрованной таблицы согласно дате поставки.
Пример вложил.

Рабочий фильтр:
Код
ДатаСебестоимость = 
CALCULATE(
    LASTNONBLANK('СебестоимостьНоменклатуры'[Период];1);
    FILTER(
        'СебестоимостьНоменклатуры';
        'ПродажиРегистрНакопления'[Номенклатура] = 'СебестоимостьНоменклатуры'[Номенклатура] &&
        'ПродажиРегистрНакопления'[Период] >= 'СебестоимостьНоменклатуры'[Период]
        )
)
Страницы: 1
Наверх