Как реализовать разделение товаров на «складские» и «под заказ» в 1С:Упрощенка 7.7

Программист 1С v7.7 Управленческий учет Торговля и дистрибуция
← На главную

В оптовой торговле часто возникает ситуация, когда часть товара находится в наличии, а остальное необходимо закупать под конкретного клиента. В типовой конфигурации 1С:Упрощенка 7.7 (построенной на бухгалтерском компоненте) штатный функционал для работы с заказами отсутствует. Это вынуждает менеджеров вести учет «вручную» или в сторонних таблицах. В данной статье мы подробно разберем, как автоматизировать этот процесс, перейдя от ручного труда к системному учету.

Проблема использования бухгалтерской конфигурации для оперативного учета

Для начала проанализируем ситуацию: конфигурация «Упрощенка» предназначена для ведения бухгалтерского и налогового учета. В отличие от 1С:Торговля и Склад 7.7, здесь нет понятия «Регистры», которые позволяют мгновенно получить остатки в разрезе резервов. Бухгалтерские итоги работают медленнее и не всегда подходят для динамичного торгового процесса. Однако, используя гибкость платформы 7.7, мы можем внедрить необходимые механизмы.

Вариант 1. Использование забалансовых счетов для учета заказов

Рассмотрим метод, который позволяет минимально вмешиваться в типовые механизмы проведения документов. Мы можем завести специальные забалансовые счета, которые будут служить нам своего рода «виртуальными регистрами».

Разберем по шагам, как это реализовать:

  1. Создадим в плане счетов новый забалансовый счет, например, ЗК («Заказы клиентов»).
  2. Настроим для счета ЗК три субконто: Контрагенты, Номенклатура и Договоры (или Документы).
  3. Добавим второй счет, например, ЗП («Заказано поставщикам»).

При такой схеме, когда менеджер принимает заказ, программа делает проводку по дебету счета ЗК. Как только товар поступает на склад или отгружается, проводка сторнируется. Проанализируем преимущество: мы всегда можем построить стандартную Оборотно-сальдовую ведомость по счету ЗК и увидеть, какой товар и под какого клиента мы ждем.

Вариант 2. Создание цепочки документов «Заказ» — «Реализация»

Выясним, как автоматизировать процесс разделения позиций в самом документе. Вместо того чтобы сразу создавать Реализацию, внедрим новый объект метаданных — документ ЗаказПокупателя.

Алгоритм работы документа должен быть следующим:

  1. Менеджер подбирает товары в табличную часть.
  2. При нажатии кнопки «Обработать» или при проведении документа, система должна выполнить цикл по строкам и проверить остатки на счете 41 (или 10).
  3. Для проверки остатков в коде модуля документа мы будем использовать объект БухгалтерскиеИтоги.

Посмотрим на пример логики формирования дефицитной ведомости:


БИ = СоздатьОбъект("БухгалтерскиеИтоги");
БИ.ИспользоватьСубконто(Субконто.Номенклатура, ТекущийТовар, 2);
БИ.ВыполнитьЗапрос(ТекущаяДата(), ТекущаяДата(), "41.1");
ОстатокНаСкладе = БИ.СКД("К");

Если ОстатокНаСкладе < КоличествоВЗаказе Тогда
    НужноЗаказать = КоличествоВЗаказе - ОстатокНаСкладе;
    // Записываем дефицит в список или новый документ
КонецЕсли;

Вариант 3. Визуализация остатков с помощью FormEx

Чтобы менеджеру было удобно работать, мы можем раскрасить строки в табличной части заказа. Для этого в 1С 7.7 часто применяется внешняя компонента FormEx. Проанализируем ситуацию: если товара достаточно — строка зеленая, если товара нет — красная, если товар есть частично — желтая.

Это позволяет избежать ошибок при формировании накладных. Менеджер сразу видит, какие позиции уйдут со склада, а какие попадут в «Заявку поставщику».

Вариант 4. Создание «Рабочего места менеджера»

Вместо изменения типовых документов, рассмотрим создание внешней обработки РабочееМестоМенеджера.ert. Это наиболее безопасный способ с точки зрения будущих обновлений конфигурации.

В этой обработке мы реализуем:

Использование прямых запросов (1С++) для ускорения работы

Если справочник номенклатуры в фирме насчитывает тысячи позиций, стандартные БухгалтерскиеИтоги могут работать медленно при массовой проверке остатков. В этом случае профессионалы рекомендуют использовать компоненту 1С++.

Выясним причину: прямые SQL-запросы к базе данных DBF или SQL позволяют получить остатки в десятки раз быстрее. Это критично для оптовой компании, где скорость обработки заказа напрямую влияет на лояльность клиентов.

Стоит ли переходить на другие конфигурации?

Рассмотрим альтернативные предложения, прозвучавшие в обсуждении. Переход на 1С:Управление торговлей 11 или ТиС 7.7 оправдан, если ваша фирма планирует масштабный рост. Однако для небольшого бизнеса на «упрощенке» такой переход может быть избыточным из-за сложности настройки и стоимости лицензий.

В качестве промежуточного варианта разберем 1С:Управление нашей фирмой (УНФ). В ней функционал работы «под заказ» является базовым и не требует доработки. Вы можете вести оперативный учет в УНФ, а данные для налоговой отчетности выгружать в текущую Упрощенку 7.7.

Резюме по реализации

Для автоматизации вашей задачи в рамках текущей 1С 7.7 Упрощенка мы рекомендуем:

  1. Не менять логику проведения типовых документов, чтобы не усложнять обновление базы.
  2. Создать новый документ ЗаказПокупателя для фиксации первичной потребности.
  3. Написать обработку, которая будет разделять Заказ на отгрузку (из наличия) и закупку (под заказ).
  4. Для удобства контроля использовать забалансовый счет для учета «ожидаемых» товаров.

Такой подход позволит вам избавиться от ручного труда и минимизировать человеческий фактор при формировании заказов поставщикам.

← На главную