Страницы: 1
RSS
Power Query. Вычисление средневзвешенной цены в сводной таблице
 
День добрый,

подскажите как произвести вычисление в PQ. Вычисление вроде простое (деньги /кол-во), но есть одно НО, это то как данные в запросе(в примере это табличка) хранятся.
как увязать вычисления с материнской строкой?

подскажите в каком направлении искать?
 
Вы объясните не ваше видение решения, а задачу в исходном виде: что нужно показать в отчете? Желательно прямо в вашем примере показать желаемый результат - чего вам не хватает. А как это реализовать мы вместе уже определимся.
Вот горшок пустой, он предмет простой...
 
Без проблем. файл во вложении.
На словах нужно получить СВЦ.
 
Offtop
Цитата
WASD_ написал:
нужно получить СВЦ.
Забавно, поиск в Google расшифровывает:
СВЦ — Сибирский выставочный центр
Синдром выброса цитокинов (СВЦ)
 
)))) средне взвешенная цена
 
Вариант на DAX.
Для модераторов предлагаю тему:
Вычисление средневзвешенной цены в сводной таблице.
Изменено: PooHkrd - 09.02.2021 13:22:29
Вот горшок пустой, он предмет простой...
 
интересное решение спасибо.

А внутри PQ можно сделать нечто подобное для получения результата?
 
Цитата
PooHkrd написал:
Для модераторов предлагаю тему:Вычисление средневзвешенной цены в сводной таблице.
не согласен. в сводной через "вычисляемое поле" можно реализовать, а тут данная функция даже не активна.
 
WASD_, как вы это себе представляете? По определению СВЦ это сумма стоимостей деленная на количество. Откуда PQ заранее узнает в какой детализации будет выводиться сводный отчет? Вот меры DAX работают динамически, так как это всего лишь правило обработки строк, отфильтрованных в конкретных ячейках сводной таблицы. PQ так не умеет ибо частное сумм не равно сумме частных.
Вот горшок пустой, он предмет простой...
 
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица_ExternalData_1"]}[Content],
    a = Table.Group(Источник, {"Append1[Канал сбыта]", "Append1[Группа товара 4 ур.]", "Append1[Товар]", "Append1[Показатель]", "Append1[Значения]"}, {"w", each List.Sum([#"Append1[Итог]"])}),
    b = Table.CombineColumns(a,{"Append1[Показатель]", "Append1[Значения]"},Combiner.CombineTextByDelimiter(" ", QuoteStyle.None),"q"),
    c = Table.Pivot(b, List.Distinct(b[q]), "q", "w"),
    d = Table.AddColumn(c, "a", each [#"План Стоимость с НДС, руб"]/[#"План Отгружено, кг"]),
    f = Table.AddColumn(d, "b", each [#"Факт Стоимость с НДС, руб"]/[#"Факт Отгружено, кг"])
in
    f
Изменено: Антон - 09.02.2021 15:18:40
 
PooHkrd, да но изначально была задача реализовать в PQ, а решение было предложено PP. визуально результат похож, но это не мера внутри запроса (криво сформулировал немного).
Лично мне название особой роли не играет. но это явно не сводная таблица, там все сильно проще.

Антон,  спасибо сейчас попробую
 
Код
let
    Источник = Table.Combine({куб, План}),
    #"Добавлен пользовательский объект" = Table.AddColumn(Источник, "СВЦ", each let
       a = Table.Group(Источник, {"[Канал сбыта]", "[Группа товара 4 ур.]", "[Товар]", "[Показатель]", "[Значения]",[Год]}, {"w", each List.Sum([#"[Итог]"])}),
    b = Table.CombineColumns(a,{"[Показатель]", "[Значения]"},Combiner.CombineTextByDelimiter(" ", QuoteStyle.None),"q"),
    c = Table.Pivot(b, List.Distinct(b[q]), "q", "w"),
    d = Table.AddColumn(c, "a", each [#"План Стоимость с НДС, руб"]/[#"План Отгружено, кг"]),
    f = Table.AddColumn(d, "b", each [#"Факт Стоимость с НДС, руб"]/[#"Факт Отгружено, кг"])
in
    f)
in
    #"Добавлен пользовательский объект"

где-то косяк сделал не могу понять где... подскажите.

в столбце СВЦ выдает Error
Изменено: WASD_ - 09.02.2021 16:34:01
Страницы: 1
Наверх