В практической деятельности торговых предприятий часто возникает ситуация, когда в одном здании физически находятся и оптовый склад, и розничный магазин. В программе 1С:Управление торговлей 11 (УТ 11) для них часто заводят две разные структуры: Основной склад (с типом «Оптовый») и Розничный магазин (с типом «Розничный»).
Такой подход приводит к серьезным операционным трудностям. Чтобы продать товар в розницу, продавцу приходится сначала вручную оформлять документ перемещения товаров с оптового склада на розничный, и только после этого пробивать чек. Это занимает много времени и вызывает недовольство персонала. Попытки обойти проблему путем отключения контроля остатков и продажи «в минус» с последующим ручным оформлением перемещений лишь маскируют проблему и приводят к хаосу в учете. В этой статье мы подробно разберем, как правильно автоматизировать этот процесс и какие стандартные и альтернативные механизмы предоставляет нам 1С:Управление торговлей 11.
Проанализируем структуру складов. Если физически склад всего один, а разделение на опт и розницу существует только в головах менеджеров или обусловлено историческими причинами, то самое простое и правильное решение — использовать один склад с типом «Розничный магазин».
Многие начинающие специалисты и пользователи ошибочно полагают, что с розничного склада нельзя продавать товары оптом. Это не так. В УТ 11 склад с типом «Розничный магазин» является универсальным. Рассмотрим его возможности подробнее:
Чек ККМ.Заказ клиента, Реализация товаров и услуг, осуществлять резервирование товаров под заказы и выписывать счета-фактуры.Перемещение товаров, так как все остатки компании хранятся в одной точке. Продавец сразу видит актуальный остаток и может мгновенно отпустить товар покупателю.Перевод учета на один склад существенно упрощает работу как кладовщиков, так и бухгалтерии. При этом отпадает необходимость дорабатывать конфигурацию программными методами.
Рассмотрим ситуацию, когда объединить склады невозможно (например, если розничная точка физически удалена или учет требует строгого разделения зон ответственности разных материально ответственных лиц). Можно ли продавать в розницу без предварительного перемещения?
Да, в УТ 11 реализована возможность оформления розничных продаж физическим лицам напрямую с оптового склада без использования интерфейса РМК. Разберем этот процесс по шагам:
Реализация товаров и услуг. В качестве склада указываем наш Основной (оптовый) склад.Приходный кассовый ордер (если оплата наличными) или Эквайринговая операция (если оплата производится картой через терминал).Данный вариант отлично подходит для торговых точек с небольшой интенсивностью розничного потока, где нет необходимости в высокой скорости работы кассира «на потоке».
Если бизнес-процессы предприятия требуют использования именно интерфейса РМК и ведения учета на двух раздельных складах, то можно прибегнуть к автоматизации создания документов перемещения. Чтобы не снимать конфигурацию с поддержки и сохранить возможность легкого обновления программы, рекомендуется реализовать эту задачу с помощью расширения конфигурации.
Разберем логику работы такого расширения:
Перемещение товаров с оптового склада на розничный склад на количество недостающего товара.Чек ККМ и пробивает фискальный чек.Посмотрим на примерный фрагмент кода, который может использоваться в расширении для создания и проведения фонового перемещения товаров:
Процедура ПередЗаписьюДокументаЧекККМ(Источник, Отказ, РежимЗаписи, РежимПроведения) Экспорт
Если РежимЗаписи <> РежимЗаписиДокумента.Проведение Тогда
Возврат;
КонецЕсли;
// Проверяем остатки на розничном складе и формируем список недостающих товаров
ТаблицаНедостачи = ПолучитьНедостающиеТоварыНаСкладе(Источник.Склад, Источник.Товары);
Если ТаблицаНедостачи.Количество() > 0 Тогда
// Создаем новый документ перемещения
НовоеПеремещение = Документы.ПеремещениеТоваров.СоздатьДокумент();
НовоеПеремещение.Дата = ТекущаяДата();
НовоеПеремещение.Организация = Источник.Организация;
НовоеПеремещение.СкладОтправитель = Справочники.Склады.НайтиПоНаименованию("Основной склад");
НовоеПеремещение.СкладПолучатель = Источник.Склад;
Для Каждого СтрокаНедостачи Из ТаблицаНедостачи Цикл
НоваяСтрока = НовоеПеремещение.Товары.Добавить();
НоваяСтрока.Номенклатура = СтрокаНедостачи.Номенклатура;
НоваяСтрока.Количество = СтрокаНедостачи.КоличествоНедостает;
// Заполнение других обязательных реквизитов (Упаковка, Статус указания серий и т.д.)
КонецЦикла;
Попытка
НовоеПеремещение.Записать(РежимЗаписиДокумента.Проведение);
Исключение
Отказ = Истина;
ВызватьИсключение "Не удалось автоматически переместить товар: " + ОписаниеОшибки();
КонецПопытки;
КонецЕсли;
КонецПроцедуры
Важно помнить, что этот метод имеет свои минусы: при высокой интенсивности продаж могут возникать транзакционные блокировки базы данных, так как одновременно будут проводиться и чеки, и документы перемещения.
Выясним, как решить проблему стандартными средствами УТ 11 без программирования и без объединения складов. Для этого настроим встроенную подсистему Обеспечение потребностей. Метод заключается в том, чтобы перемещать товары на розничный склад заблаговременно, до того как они закончатся и придет покупатель.
Настроим схему обеспечения потребностей по шагам:
Min - Max (Минимум - Максимум) или метод расчета по статистике продаж.Формирование заказов по потребностям.Система сама проанализирует текущие остатки розничного магазина, сопоставит их с установленными нормативами и автоматически сформирует Заказ на перемещение. Кладовщику останется лишь собрать товар по готовому распоряжению и отправить его в торговый зал. Это позволит полностью исключить продажи «в минус» и избавит продавца от суеты в момент обслуживания покупателя.
Выберем оптимальный вариант автоматизации в зависимости от специфики вашего бизнеса: