Я пытаюсь выделить инвентарные позиции для открытия заказов в DAX, PowerBi. Идея состоит в том, чтобы сначала выделить весь доступный инвентарь для самого старого заказа, а затем распределить оставшийся инвентарь для второго самого старого и т. Д. c. пока инвентарь не исчерпан. Инвентарь может быть исчерпан, даже если открытый заказ не полностью удовлетворен.
Я уже задавал подобный вопрос в этом вопросе, я получил отличный ответ, и результаты были великолепны. Теперь я добавляю дополнительную сложность к вопросу о том, как решать и распределять в случае наличия нескольких клиентов или отправки в места с одинаковой датой заказа, но недостаточным количеством для выполнения нескольких заказов.
Пожалуйста, проверьте прилагаемое изображение в качестве примера для распределения ниже

Первоначальный вопрос здесь:
DAX: Распределить запас по открытым заказам
ответ на первоначальный вопрос здесь:
Inventory Allocation =
VAR TotalInventory =
LOOKUPVALUE ( Inventory[Qty On Hand], Inventory[Item], 'Open Orders'[Item] )
VAR AlreadyOrdered =
CALCULATE (
SUM ( 'Open Orders'[Qty Open] ),
ALL ( 'Open Orders' ),
Inventory[Item] = EARLIER ( 'Open Orders'[Item] ),
'Open Orders'[Due Date] < EARLIER ( 'Open Orders'[Due Date] )
)
RETURN
IF (
AlreadyOrdered > TotalInventory,
0,
MIN ( 'Open Orders'[Qty Open], TotalInventory - AlreadyOrdered )
)