Страницы: 1
RSS
Dax. Расчет складской цены материала, Необходимо рассчитать стоимость остатков на конец месяца с учетом предыдущих периодов.
 
Всем добрый день!
Прошу помощи в сведение данных по материалам на складе и их стоимость. Есть таблица, куда вводится движения материалов на склад (завоз/вывоз), также ведётся таблица с ценами завозимого материала. Нужно сводить данных таким образом, чтоб на конец месяца можно высчитать остаток в тоннах, среднюю цену за 1тн и стоимость остатков, но у меня всё время попадает в цикл и ничего не работает. Тоннаж считается. Вот мои меры:
Код
Завоз ,тн = CALCULATE(    SUMX('МатОтчет', 'МатОтчет'[Тоннаж]*1),
    FILTER('МатОтчет', [Вид работы]="завоз материала")
)
Вывоз, тн = CALCULATE(
    SUMX('МатОтчет', 'МатОтчет'[Тоннаж]*1),
    FILTER('МатОтчет', [Вид работы]="вывоз материала")
)
Наличие на начало месяца, тн = 
VAR Z=CALCULATE(
    [Завоз ,тн],
    FILTER(
        ALL('календарь'),'календарь'[Date]<=MAX('календарь'[Date])))-[Завоз ,тн]
VAR V=CALCULATE(
    [Вывоз, тн],
    FILTER(
        ALL('календарь'),'календарь'[Date]<=MAX('календарь'[Date])))-[Вывоз, тн]
RETURN
Z-V
Наличие на конец месяца, тн = [Наличие на начало месяца, тн]+[Завоз ,тн]-[Вывоз, тн]
как рассчитываются стоимости:
Стоимость завоза = тоннаж*цена за 1тн
Средняя цена за 1 тн = (стоимость завоза + стоимость наличия на начало месяца)/(наличие на начало месяца + завоз)
Стоимость вывоза = Средняя цена за 1 тн* Вывоз
Стоимость наличия на конец месяца = Стоимость наличия на начало месяца + Стоимость завоза - Стоимость вывоза
Стоимость наличия на начало месяца= Стоимость наличия на конец месяца прошлого месяца

Но попадаю в циклическую зависимость, т.к. стоимость вывоза зависит от стоимости наличия на начало периода через среднюю цену за 1 тн

Прошу помощи в решении проблемы. Прикладываю исходные файлы.  
 
максим шмелев, у вас подход не верный, вам нужно считать через накопительные именно остаток на конец месяца. После чего остатком на начало месяца считать то же самое но со смещением на один месяц назад через DATEADD по календарю. Тогда пропадет цикличность ссылок. Если сами не разберетесь, то позже доберусь до компа и покажу свой вариант.
Изменено: PooHkrd - 30.05.2022 11:37:19
Вот горшок пустой, он предмет простой...
 
Цитата
написал:
максим шмелев, у вас подход не верный, вам нужно считать через накопительные именно остаток на конец месяца. После чего остатком на начало месяца считать то же самое но со смещением на один месяц назад через DATEADD по календарю. Тогда пропадет цикличность ссылок. Если сами не разберетесь, то позже доберусь до компа и покажу свой вариант.
Чтоб просчитать наличие на конец месяца нужно учитывать наличие на начало месяца, т.е. наличие на начало месяца в сентябре уже должно быть, которое берётся смещением через dateadd августа, а этих данных не существует. Тоннаж то у меня считается верно, вся проблема просчитать стоимости.
Я согласен, что у меня ошибка в подходе расчета стоимостей, может есть предложения или готовые решения? ну или какие то костыли, главное чтоб считало)
 
Пух был прав, нужно работать с накопительным итогом! через накопительную стоимость завоза нашёл среднюю цену для стоимости вывоза и т.д. Спасибо большое!
Страницы: 1
Наверх