Удалить строки на основе определенной логики в силовом запросе - PullRequest
0 голосов
/ 21 февраля 2019

Sample Date

Мне нужно удалить строки на основе следующей логики:

Сумма столбца B для того же продукта, чтобы сравнить с одним иззначения в столбце D для этого продукта.

Если значение суммы <значение в столбце D, удалите строки с дополнительным ReceiptQty.В этом случае для продукта AAA receiveQty = 12000, что> 10000, затем удалите строку 7.

Есть ли способ достичь этого в запросе мощности?Благодаря ~

1 Ответ

0 голосов
/ 21 февраля 2019

Этот код должен работать:

let
    Source = Excel.CurrentWorkbook(){[Name="Data"]}[Content],
    group = Table.Group(Source, {"ProductID"}, {"temp", each _}),
    list = Table.AddColumn(group, "list", each List.Skip(List.Accumulate([temp][ReceiptQty], {0}, (a, b) => a & {List.Last(a) + b}))),
    table = Table.AddColumn(list, "table", each Table.FromColumns(Table.ToColumns([temp])&{[list]}, Table.ColumnNames(Source)&{"RunningQty"})),
    final = Table.SelectRows(Table.Combine(table[table]), each [OnhandQty] >= [RunningQty])
in
    final
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...