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