Получить сумму данных между двумя таблицами, где date1 больше или равно date2: Power запрос - PullRequest
0 голосов
/ 09 июня 2018

У меня есть таблица с требуемым количеством и другая таблица с доступным количеством на складе.

I need Sum(Instock Qty) where TBL1.Material = Inventory.Material AND
TBL1.[Ship From] = Inventory.[Ship From] AND
TBL1.[Code date] => Inventory.[Inv Date]

Таблица1 Необходимый материал Кол-во Место Треб. Дата 4300 50 4095 10.10.2008 4300 40 4095 7 /19/2018 4300 108 4095 22.07.2008 4400 50 4095 15.07.2008 4500 60 4095 7/31/2018

Инвентарный материал Кол-во Инв Место Дата инв. 4300 20 4095 16.06.2008 4300100 4095 17.06.2008 4300 30 4095 16.06.2008 4400 40 4095 02.08.2008 4500 30 4095 16.06.2008 4500 20 4095 6/16/2018

Для каждого материала судноИсходя из этого, нам нужно проверить сумму (количество) на наличие достаточного количества для следующего отгрузки.

Требуемый выходной материал Требуемое Кол-во Расположение Треб. Дата Сумма Кол-во Рем Кол-во Можем ли мы выполнить Примечания 4300 50 4095 7/10/2018 150100 ДА Проверьте, получен ли товар, отгрузка из матча, сумма (кол-во) для даты запроса больше, чем дата инв. 4300 40 4095 19.07.2008 100 60 ДА Для того же предмета, что и строка 1, получите оставшееся количество и проверьте, меньше ли кол-во требованийчем рем кол-во 4300 108 4095 22.07.2008 60 -48 НO Для того же предмета, что и для строки 2, получите оставшееся количество и проверьте, не требуется ли количество меньше, чем rem кол-во. 4400 50 4095 15.07.2008 Нет в наличии Нет в наличии НЕТ Невозможно выполнить, так как у нас недостаточно Кол-во на складе для предмета = 4400, КорабльС = 4095 & Дата запроса меньше, чем Дата инв. 4500 60 4095 31.07.2008 50 -10 НЕТ Дата запроса больше, чем Дата инв, но у нас недостаточно количества для выполнения отгрузки

Извините, как яне знаю, как форматировать таблицы по таким вопросам.Я пытался, но это не отформатировало.

1 Ответ

0 голосов
/ 09 июня 2018

Существует несколько подходов, которые вы можете использовать, но в целом вы хотите сначала отфильтровать строки, в которых кодовая дата находится до даты приглашения, а затем сгруппировать по столбцам Материал и Отгрузка.

Здесьодин из подходов, использующий только пользовательский интерфейс:

  1. Щелкните столбец «Дата кода», а затем, удерживая элемент управления, щелкните столбец «Дата приглашения».Перейдите на ленту «Добавить столбец», нажмите стрелку на кнопке «Дата» и выберите «Вычесть дни»
  2. . В новом столбце нажмите кнопку со стрелкой, затем перейдите в «Фильтры чисел» и выберите «Больше или равно ... "
  3. В конструкторе фильтров установите второй комбинированный список в первой строке на" 0 ", чтобы он читал" больше или равно "и" 0 ".Нажмите кнопку ОК.
  4. Выберите столбцы «Материал» и «Отгрузка» (используя щелчок / контроль, как упоминалось ранее).Щелкните правой кнопкой мыши по ним и выберите «Группировать по ...».
  5. В конструкторе выберите Суммирование операций, а в качестве столбца выберите Instock Qty.Выберите более точное имя нового столбца.

В расширенном редакторе код должен выглядеть следующим образом:

let Source = Table1, #"Inserted Date Subtraction" = Table.AddColumn(Source, "Subtraction", each Duration.Days([Code date] - [Inv Date]), Int64.Type), #"Filtered Rows" = Table.SelectRows(#"Inserted Date Subtraction", each [Subtraction] >= 0), #"Grouped Rows" = Table.Group(#"Filtered Rows", {"Material", "Ship From"}, {{"Sum", each List.Sum([Instock Qty]), type number}}) in #"Grouped Rows"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...