Нормы хранения на карте склада

«Занята» не значит «заполнена»: как я посчитал реальную загрузку склада в Google Таблицах

В прошлой статье я рассказывал про карту склада в Google Таблицах: она показывает, где что лежит, где пусто и где товары смешаны. Но у неё было слепое пятно. Ячейка с четвертью паллеты и ячейка с полной паллетой на карте выглядели одинаково — «занята».

Я добавил к карте нормы хранения: сколько штук каждого товара помещается на паллету и какого размера ячейки. Теперь карта считает заполненность каждой ячейки в процентах. Первый же прогон показал полупустые паллеты, которые можно объединить, и паллеты, собранные выше нормы. Рассказываю, как это устроено и что нашлось.

Чего не видно без норм

В пик сезона главный вопрос склада — есть ли место под следующую поставку. Учётная система отвечает на него числом пустых ячеек, и этого мало. Скрытый резерв сидит в занятых ячейках:

• Полупустые паллеты. После отбора на паллете остаётся несколько коробов, а ячейка целиком считается занятой. Две такие паллеты одного товара можно сложить в одну и освободить место.

• Паллеты выше нормы. Чтобы всё влезло, паллету собирают на ряд выше. Это вопрос уже не только места, но и безопасности: высота проёма и нагрузка на стеллаж не безграничны.

И ещё одно: ячейки на складе разные. Высота проёма меняется от яруса к ярусу, а часть ярусов — полки для штучного хранения. Поэтому одной цифры «штук на паллете» для расчёта не хватает.

Как устроен расчёт

К карте добавились два справочника и один новый лист.

1. «Нормы хранения» — по каждому товару. Штук в коробе, коробов в ряду на паллете, рядов и габариты короба в сантиметрах. «Штук на паллете» считается само. Список товаров скрипт ведёт сам и сортирует по числу занятых ячеек: сверху то, что занимает больше всего места.

2. «Типы ячеек» — по стеллажам и ярусам. Паллетная ячейка или полка, сколько паллетомест, высота, ширина и глубина проёма. Заполняется однажды и сразу на целые группы ячеек по маске, например «все пятые ярусы».

«Карта заполненности». Та же схема склада, но раскрашенная по процентам. Основную карту по складам и смешениям я не трогал: две раскраски на одной схеме читать невозможно.

«Справочник норм: жёлтое заполняется руками, серое считается само»
«Справочник норм: жёлтое заполняется руками, серое считается само»

Как считается процент

• Паллетная ячейка и известна норма на паллету: остаток делится на норму × число паллетомест. 300 шт при норме 480 — это 62%.

• Полка или нормы на паллету нет: считается по объёму. Число коробов × объём короба делится на объём ячейки, а у паллетной ячейки из высоты вычитается поддон. Это оценка, а не точная цифра.

• В ячейке несколько товаров: доли складываются.

• Хотя бы у одного товара нет нормы: ячейка помечается «нет данных». Это честнее, чем показывать выдуманный процент.

Наводишь на ячейку — в подсказке весь расчёт: какой товар, сколько штук, по какой норме и сколько паллет из скольких возможных.

«Подсказка по ячейке: паллета собрана выше нормы, 146%»
«Подсказка по ячейке: паллета собрана выше нормы, 146%»

Цвета

Нормы хранения на карте склада

Что показали нормы

Нормы я заполнял не на всё, а сверху вниз: начиная с товаров, которые занимают больше всего ячеек. Источники — упаковочные листы поставщика и замеры на приёмке. По ячейкам, где нормы уже заполнены, средняя заполненность — 87%. Но средняя цифра прячет главное, поэтому вот раскладка:

Нормы хранения на карте склада

Три вещи, которые стали видны:

1. Каждая семнадцатая занятая ячейка заполнена меньше чем на треть. Это и есть скрытый резерв. В подсказке видно, какой товар где лежит, и остатки одного товара из двух таких ячеек можно сложить в одну. Раньше такие паллеты находили случайно, когда места уже не хватало.

2. Часть паллет собрана выше нормы. Каждая такая ячейка — повод сходить и посмотреть. Либо паллету действительно надстроили, либо на одном месте стоят две, либо норма неверная. Пример: 792 шт в ячейке при норме 480 на паллету — 165%.

3. Нормы сами проверяются. Если у товара все ячейки стабильно «перегружены», скорее всего ошибка не на складе, а в норме. Так справочник постепенно становится точнее.

«Карта заполненности: голубые ячейки можно объединить, красные — проверить на месте»
«Карта заполненности: голубые ячейки можно объединить, красные — проверить на месте»

Сколько это стоило и где подводные камни

Деньги — 0 ₽, всё в той же Google Таблице. Основное время ушло не на скрипт, а на данные: заполнение норм заняло 2 смены. Заполнять все товары не нужно: список отсортирован так, что первые строки закрывают большую часть склада.

Ограничения, честно:

• Считается только то, для чего есть нормы. Ячейка попадает в расчёт, только если нормы есть у всех товаров в ней. Остальное помечено «нет данных».

• Полки считаются приблизительно. По объёму коробов без учёта того, как их на самом деле ставят.

• Нормы надо вести. Поменялся короб у поставщика — надо поправить строку, иначе карта начнёт показывать ложные перегрузы.

• Это срез на момент выгрузки, а не живая картина.

Кому подойдёт

Складу с адресным хранением, где места в пик не хватает, а вложения в WMS с управлением ёмкостью не окупятся. Если у вас уже есть карта из прошлой статьи, нормы добавляются к ней как надстройка.

Хотите такое для своего склада — напишите мне в тг: @PavelBogatyrev. Расскажите, сколько у вас ячеек и как храните — паллетами или на полках, и я оценю срок и стоимость.