Задачу нужно выполнить формулами массива в Гугл таблицах.
1. Присваиваем тег упаковке или товару.
Чтобы товар точно поместился в короб, умножаем каждый размер короба на коэффициент Уменьш. для макс. размера, %, указанн на листе Категории габаритов Озон, Q13-Q20.
docs.google.com/spreadshe... Т.е. искусственно уменьшаем размеры короба, для того чтобы наш товар точно поместился.
Для оставшихся товаров, которые не поместились в упаковку согласно кратности, т.е. их меньше чем указано в колонке наполняемость по кратноасти, не менее, %:
docs.google.com/spreadshe... или 1 + 2 условие не выполняется присваиваем теги.
! Тут не могу придумать как рассчитать размер упаковки для товаров, которые по кратности помещаются в короб s. Такие упаковки тоже нужно распределять в короба.
Берём размеры товара:
docs.google.com/spreadshe... Проверяем, что определённый товар помещается (по 3м измерениям) в определённый короб (с учётом коэфф. уменьшения) и присваиваем такому товару тэг:
docs.google.com/spreadshe... 2. Распределяем товар по коробам.
Максимальный объём короба указан тут:
docs.google.com/spreadshe... Этот объём мы умножаем на коэффициент Уменьш. для V, %.
docs.google.com/spreadshe... Т.к. в коробе всегда есть пустоты, и мы берём запас для того, чтобы товар весь поместился в этот короб.
Товар распределяем в короба, которые есть в наличии, указаны в столбце R:
docs.google.com/spreadshe... Например, если товар с тегом s распределяется в 4 короба s, но в наличии всего 3 короба s, то он начинает распределяться в короба n_s, если их не хватает, то далее в n_m, если все короба закончились, то каждый товар остаётся в своей упаковке.
3. В итоге мы должны получить таблицу со столбцами:
docs.google.com/spreadshe... ШК или артикул товара
Кол-во товаров
Зона размещения
ШК ГМ
Тип ГМ (не обязательно)
Срок годности ДО в формате YYYY-MM-DD (не более 1 СГ на 1 SKU в 1 ГМ)
Если не сошлось
Возможно что-то не учёл в ТЗ и понадобятся дополнительные переменные, расчёты и т.д.
Поэтому можем делать задачу поэтапно, тестировать и принимать каждый этап расчётов отдельно (1, 2, 3).
Подробное описание и исходные данные по ссылке:
docs.google.com/spreadshe...