Как занести товарные остатки по продуктовому магазину в 1С и с чего правильно начать первую инвентаризацию?

← На главную

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

Разберем эту задачу подробно и по шагам. Сразу обозначим главный вывод, который подтверждается и практикой внедрений, и типовой логикой 1С: не начинайте ввод фактических остатков, пока не приведете в порядок справочник номенклатуры и идентификацию товаров. Иначе вы получите красивую цифру в отчете, но нерабочую систему на кассе, в подборе товара и в последующей инвентаризации.

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

Почему нельзя просто сразу вбить остатки

На первый взгляд кажется, что задача простая: пересчитали товар, внесли количество, начали продавать. Но в продуктовом магазине это почти всегда приводит к ошибкам. Выясним причину.

  1. Один и тот же товар может быть уже заведен в базе несколько раз под разными названиями. Например: «Молоко 3,2% 1л», «Молоко 1 л 3.2%», «Молоко Домик 1л». Если без предварительной проверки ввести остатки по всем этим позициям, часть товара будет раздроблена между дублями.

  2. Штрихкод может отсутствовать, быть неверным или относиться не к той единице измерения. Для магазина это критично, потому что касса, подбор в документах и ТСД опираются именно на корректную идентификацию товара.

  3. В продуктовой рознице часто есть весовые позиции, фасовка, штучные и упаковочные единицы. Если не определить заранее, в чем именно ведется учет, остаток получится формально введенным, но практически бесполезным.

  4. Если ввести остатки до выравнивания номенклатуры, потом придется переносить количество между карточками, исправлять пересортицу, перепроводить документы и искать, почему товар есть физически, но не находится сканером.

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

Решение 1. Сначала подготовьте номенклатуру и штрихкоды, потом вводите остатки

Именно этот путь был предложен в обсуждении на форуме. Суть решения очень практичная: если номенклатура уже есть в базе, сначала привяжите к ней штрихкоды, а уже после этого переходите к инвентаризации и вводу количества.

Разберем по шагам, как это сделать без лишнего хаоса.

  1. Откройте справочник Номенклатура и проведите первичную чистку. Удалять ничего сразу не нужно, но обязательно выявите дубли, устаревшие позиции, неверные единицы измерения, объединенные карточки «разного товара под одним названием».

  2. Для каждой позиции определите, что именно будет учетной единицей: штука, упаковка, килограмм, литр. Для продуктового магазина это особенно важно, потому что именно на этой единице потом будут строиться остатки, продажи и пересчет.

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

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

  5. Если товар весовой или внутренне фасуется в магазине, заранее определите, будет ли использоваться внутренний код, PLU, весовой штрихкод или отдельная схема кодирования.

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

В старых конфигурациях вроде ТиС 7.7 такой подход особенно оправдан, потому что там многое зависит от качества самой карточки товара и аккуратности первоначального заполнения. В более новых конфигурациях логика остается той же, просто для штрихкодов обычно используются более удобные формы и отдельные механизмы наподобие ШтрихкодыУпаковокТоваров, карточек упаковок, характеристик и форм подбора.

Почему сначала выгоднее работать обычным сканером, а не ТСД

В исходном обсуждении автор сначала рассчитывал использовать ТСД, но по сути пришел к вопросу: не проще ли на старте подключить обычный сканер и быстро привязывать коды прямо в базе? Для первой загрузки магазина это действительно часто лучший вариант.

Посмотрим на пример организационной логики. Когда база еще не «понимает» товарный состав магазина, ТСД сможет только собрать массив кодов, но не устранит главную проблему: какой именно карточке соответствует считанный код. Если в базе есть дубли или неточная номенклатура, после выгрузки из ТСД все равно придется вручную разбирать соответствия.

Поэтому на первом этапе удобнее действовать так:

  1. Берите товар с полки или с коробки поставки.

  2. Находите соответствующую карточку в Номенклатура.

  3. Сканируйте штрихкод.

  4. Сразу записывайте его в карточку или в связанный справочник штрихкодов.

  5. Только после этого помечайте позицию как готовую к пересчету.

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

Решение 2. Доработайте форму списка номенклатуры под быстрое назначение штрихкода

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

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

В терминах 1С здесь обычно задействуются:

  1. Справочник.Номенклатура — основная карточка товара.

  2. Форма списка справочника — место, где можно обработать событие ввода от сканера.

  3. Реквизит или подчиненный справочник для хранения штрихкода — в зависимости от конфигурации.

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

Если конфигурация позволяет доработки, имеет смысл предусмотреть следующую логику:

  1. Пользователь выделяет текущий товар.

  2. Сканер передает строку штрихкода.

  3. Система проверяет, не используется ли код уже другой позицией.

  4. Если код свободен, записывает его в карточку текущего товара.

  5. Если код уже существует, выводит предупреждение и не дает записать дублирующий штрихкод молча.

Посмотрим на пример логики такой обработки в стиле 1С. Это не фрагмент из самой темы, а типовой пример того, как можно реализовать идею, обсуждавшуюся на форуме.


Процедура НазначитьШтрихкодТекущемуТовару(Штрихкод) Экспорт

    Если ПустаяСтрока(Штрихкод) Тогда
        Возврат;
    КонецЕсли;

    Если Не ЗначениеЗаполнено(ТекущийЭлемент) Тогда
        Предупреждение("Не выбран товар для назначения штрихкода.");
        Возврат;
    КонецЕсли;

    НайденныйТовар = НайтиТоварПоШтрихкоду(Штрихкод);

    Если ЗначениеЗаполнено(НайденныйТовар) Тогда
        Предупреждение("Штрихкод уже назначен товару: " + НайденныйТовар.Наименование);
        Возврат;
    КонецЕсли;

    ТоварОбъект = ТекущийЭлемент.ПолучитьОбъект();
    ТоварОбъект.Штрихкод = Штрихкод;
    ТоварОбъект.Записать();

    Сообщить("Штрихкод назначен: " + ТоварОбъект.Наименование);

КонецПроцедуры

Разумеется, конкретная реализация зависит от конфигурации. Где-то штрихкод хранится прямо в элементе справочника, где-то в отдельной таблице или подчиненном объекте. Но сама идея остается неизменной: не заставляйте оператора открывать сотни карточек по одной, если можно ускорить процесс через форму списка.

Дополнительно полезно реализовать отдельную функцию проверки дублей штрихкодов. Для этого обычно используют запрос или стандартный поиск по справочнику. В современных конфигурациях для этого могут участвовать справочники и регистры, связанные со штрихкодами упаковок и товаров.


Функция НайтиТоварПоШтрихкоду(Штрихкод) Экспорт

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ ПЕРВЫЕ 1
    |   Штрихкоды.Номенклатура КАК Номенклатура
    |ИЗ
    |   РегистрСведений.ШтрихкодыУпаковокТоваров КАК Штрихкоды
    |ГДЕ
    |   Штрихкоды.Штрихкод = &Штрихкод";

    Запрос.УстановитьПараметр("Штрихкод", Штрихкод);

    Результат = Запрос.Выполнить().Выбрать();

    Если Результат.Следующий() Тогда
        Возврат Результат.Номенклатура;
    КонецЕсли;

    Возврат Неопределено;

КонецФункции

Этот пример уже ближе к архитектуре современных решений 1С, где штрихкоды часто хранятся не прямо в карточке, а в отдельном объекте. Для сайта полезно показать сам принцип: перед записью всегда проверяйте уникальность штрихкода.

Решение 3. После привязки штрихкодов проведите первую инвентаризацию как отдельный этап

Теперь рассмотрим следующий шаг. Когда справочник подготовлен, нужно не просто «вбить количество», а зафиксировать фактические остатки магазина на выбранную дату. В зависимости от конфигурации это можно делать разными способами.

В современных типовых решениях 1С обычно применяются документы инвентаризации и связанные с ними документы отражения расхождений. Например:

  1. ПриказНаПересчетТоваров — для запуска инвентаризации в магазине.

  2. ПересчетТоваров или ИнвентаризацияЗапасов — для фиксации фактически найденного количества.

  3. ОприходованиеТоваров или ОприходованиеЗапасов — для оформления излишков.

  4. СписаниеТоваров — для оформления недостач.

  5. ПересортицаТоваров — если часть расхождений вызвана неправильным учетом аналогичных позиций.

Если речь идет о первом запуске учета, возможны два сценария:

  1. Ввод начальных остатков — если учет только начинается, а исторические движения в базе еще не ведутся.

  2. Инвентаризация с корректировкой — если база уже используется, какие-то документы в ней есть, и нужно привести учет к факту.

Это очень важное различие. Проанализируем ситуацию.

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

Если же магазин уже работал в базе, но учет велся плохо, документы есть, часть товара продавалась, а теперь нужно «подтянуть остатки к реальности», используйте инвентаризацию. В этом случае вы не создаете стартовый срез из воздуха, а корректируете уже существующее состояние системы.

Как выбрать между вводом начальных остатков и инвентаризацией

Разберем по шагам простой критерий выбора.

  1. Если вы запускаете магазин в новой базе с конкретной даты — вводите начальные остатки.

  2. Если в базе уже были документы движения, кассовые чеки, перемещения, списания, поступления — проводите инвентаризацию и отражайте расхождения.

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

Для продуктового магазина на практике часто оказывается выгоднее именно запуск с чистой даты: подготовили номенклатуру, привязали штрихкоды, провели полный пересчет и ввели начальные остатки на начало рабочего периода. Тогда дальнейший учет идет уже без накопленного исторического мусора.

Решение 4. При первом запуске магазина используйте ввод начальных остатков

Рассмотрим подробнее сценарий, когда магазин только начинает вести учет в 1С. В типовых решениях 1С для этого используются специальные документы или помощники ввода остатков. Названия могут отличаться по конфигурации, но смысл одинаковый: зафиксировать товар на складе или в магазине на определенную дату.

Обычно логика такая:

  1. Указывайте дату ввода остатков — как правило, это конец дня, предшествующего началу учета.

  2. Выбирайте организацию, склад или магазин.

  3. Заполняйте список товаров, количество, при необходимости цену, сумму, серию, характеристику, партию.

  4. Проводите документ.

  5. Проверяйте результат отчетом по остаткам.

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

  1. Один и тот же товар учитывается по разным характеристикам, например разный объем или вкус.

  2. Для части ассортимента важны серии или сроки годности.

  3. Есть несколько складов или несколько торговых точек.

  4. Есть алкоголь, табак, маркируемые позиции, где остаток должен учитываться не только количественно, но и по дополнительным признакам.

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

Проверяйте ввод остатков минимум двумя контрольными срезами:

  1. Отчетом по остаткам товаров.

  2. Проверкой подбора по штрихкоду в рабочем документе продажи или поступления.

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

Решение 5. Если учет уже велся, корректируйте остатки через пересчет, оприходование и списание

Теперь рассмотрим другую ситуацию. Магазин уже работал, какая-то база есть, но фактический товар с учетом не совпадает. В этом случае простая загрузка начальных остатков не подходит, потому что в системе уже есть история движений. Здесь правильнее действовать через инвентаризацию.

Разберем типовую схему.

  1. Зафиксируйте дату пересчета и по возможности минимизируйте движения на момент инвентаризации.

  2. Создайте документ пересчета или инвентаризации.

  3. Заполните учетное количество по данным системы.

  4. Внесите фактическое количество по результатам пересчета.

  5. Проанализируйте расхождения.

  6. Оформите излишки через ОприходованиеТоваров или аналогичный документ.

  7. Оформите недостачи через СписаниеТоваров.

  8. Если часть расхождений вызвана тем, что один товар продавали вместо другого или путают похожие позиции, оформите ПересортицаТоваров.

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

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

Что делать с весовым товаром и внутренней фасовкой

Для продуктового магазина это один из самых сложных участков, поэтому рассмотрим его отдельно.

Есть несколько вариантов учета:

  1. Товар приходит и продается в килограммах — тогда учетная единица кг, а остаток вводится в килограммах.

  2. Товар фасуется внутри магазина — тогда нужно определить, ведется ли учет по исходному весовому товару, по фасованным единицам, или по обеим сущностям через сборку, выпуск, разукомплектацию или внутренние операции.

  3. Весы печатают собственный штрихкод — тогда необходимо определить правила распознавания этого кода, чтобы продажа и инвентаризация шли по одной модели учета.

Частая ошибка здесь — вводить начальный остаток в штуках там, где фактически товар учитывается в килограммах, или наоборот. В результате магазин быстро получает отрицательные остатки, дробные расхождения и непонятные недостачи.

Поэтому до ввода остатков обязательно проверьте:

  1. какая единица измерения является базовой;

  2. какая единица используется при продаже;

  3. как обрабатывается штрихкод весового товара;

  4. нужна ли отдельная номенклатура для фасованной и нефасованной версии товара.

Что делать с алкоголем, табаком и маркируемыми товарами

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

Поэтому рассмотрим, что нужно проверить заранее:

  1. Для алкогольной продукции — правила учета по ЕГАИС, остатки по соответствующим аналитикам, корректность номенклатуры, единиц измерения и связанной учетной информации.

  2. Для табака и прочих маркируемых товаров — наличие настроек по работе с маркировкой, корректность карточек, упаковок, кодов и способа ввода остатков именно для этой товарной группы.

  3. Для товаров с сериями и сроками годности — необходимость ведения остатков в разрезе серий, партий или сроков хранения.

Здесь особенно важно не смешивать обычный стартовый пересчет с задачами, где есть отдельный регламентированный контур. Если в конфигурации используется маркировка, ЕГАИС или серийный учет, вводите остатки в том разрезе, в котором система потом будет требовать движение.

Как организовать сам процесс пересчета в магазине

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

  1. Разбейте магазин на зоны: склад, торговый зал, холодильники, кассовая зона, табак, алкоголь, подсобка.

  2. Назначьте ответственных по зонам.

  3. Зафиксируйте момент остановки пересчета или правила проведения операций во время пересчета.

  4. Пересчитывайте товар по зонам, а не хаотично по всему магазину.

  5. Сразу отмечайте спорные позиции: нет штрихкода, непонятная единица, дубль карточки, товар без номенклатуры.

  6. Не заносите спорные строки в общий остаток без решения. Лучше временно вывести их в отдельный список на разбор.

Такой подход позволяет не смешивать две разные задачи: подсчет факта и чистку справочника. Если их не разделять, сотрудники начинают «на ходу придумывать» карточки, менять единицы измерения и исправлять названия прямо во время пересчета. После этого база почти гарантированно становится нестабильной.

Как проверить, что остатки введены корректно

После ввода остатков или завершения инвентаризации не ограничивайтесь одним отчетом. Рассмотрим, какие контрольные проверки обязательно выполнить.

  1. Сформируйте отчет по остаткам товаров по складу или магазину. Убедитесь, что количество в отчете соответствует итоговой ведомости пересчета.

  2. Проверьте выборочно десятки наиболее ходовых позиций через поиск по штрихкоду. Если товар не находится быстро, система еще не готова к работе в торговом режиме.

  3. Проверьте товары с разной единицей измерения: штука, кг, упаковка.

  4. Проверьте товары со схожими наименованиями на предмет дублей.

  5. Проверьте отрицательные остатки и пустые строки без количества.

  6. Проверьте, что остаток числится именно на нужном складе или магазине, а не попал в другой складской объект.

Для продуктового магазина отдельно полезно сделать тестовую продажу в непроводимом или учебном режиме по нескольким типам товаров:

  1. обычный штучный товар;

  2. весовой товар;

  3. товар с характеристикой или серией;

  4. маркируемая позиция, если она есть в ассортименте.

Если хотя бы на одном из этих сценариев возникает путаница, значит, проблему нужно устранять до запуска полноценной работы.

Какие объекты и механизмы 1С помогают решить задачу

Соберем в одном месте те объекты и механизмы 1С, которые чаще всего участвуют в решении этой задачи. Конкретный набор зависит от конфигурации, но общий каркас выглядит так:

  1. Справочник.Номенклатура — основа товарного каталога.

  2. ШтрихкодыУпаковокТоваров или аналогичный объект — хранение и поиск штрихкодов.

  3. ВводНачальныхОстатков — стартовый ввод товарного остатка в новой базе или на дату начала учета.

  4. ПриказНаПересчетТоваров — планирование инвентаризации.

  5. ПересчетТоваров или ИнвентаризацияЗапасов — фиксация факта.

  6. ОприходованиеТоваров — отражение излишков.

  7. СписаниеТоваров — отражение недостач.

  8. ПересортицаТоваров — зачет ошибочно учтенных аналогичных позиций.

  9. Запрос — для проверки дублей штрихкодов, поиска товаров и построения контрольных выборок.

  10. Форма списка справочника — для ускоренной привязки штрихкодов и массовой работы операторов.

Если конфигурация кастомизирована, могут использоваться и дополнительные объекты: регистры сведений по штрихкодам, обработки импорта из ТСД, обмены с весами и кассовым ПО, пользовательские формы подбора.

Какие ошибки встречаются чаще всего

Чтобы статья была не только теоретической, но и прикладной, перечислим типовые ошибки, которые почти всегда возникают при вводе остатков по продуктовому магазину.

  1. Сначала считают, потом думают, как это занести. Правильнее наоборот: сначала определить модель учета, затем считать.

  2. Создают новые карточки прямо во время пересчета. Это быстро раздувает справочник дублями.

  3. Не проверяют уникальность штрихкода. В результате один код может быть назначен двум товарам.

  4. Путают единицу хранения и единицу продажи. Особенно часто это происходит по фасовке и весовому товару.

  5. Вводят остаток без указания нужной аналитики. Например, без серии, характеристики или правильного склада.

  6. Используют ввод начальных остатков там, где уже нужно делать инвентаризацию. Это искажает историю учета.

  7. Не тестируют поиск товара по штрихкоду после загрузки. Отчет красивый, но кассиру работать неудобно.

Практический рекомендуемый порядок действий для магазина

Теперь соберем все в единую рабочую схему. Если нужно занести товарные остатки по продуктовому магазину, действуйте так.

  1. Сделайте резервную копию базы.

  2. Определите, это новая точка старта учета или корректировка уже работающей базы.

  3. Проведите ревизию справочника Номенклатура: дубли, единицы измерения, характеристики, группы товаров.

  4. Привяжите штрихкоды к существующим карточкам. На первом этапе используйте обычный сканер, а не полагайтесь только на ТСД.

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

  6. Проверьте уникальность штрихкодов и корректность поиска товаров по коду.

  7. Организуйте пересчет фактического товара по зонам магазина.

  8. Если учет стартует с чистой даты — введите начальные остатки.

  9. Если база уже живет — проведите инвентаризацию, затем оформите ОприходованиеТоваров, СписаниеТоваров и при необходимости ПересортицаТоваров.

  10. Проверьте итоги отчетом по остаткам и тестовым подбором товара по штрихкоду.

  11. Только после этого запускайте магазин в рабочий режим.

Итоговый вывод

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

Практика, отраженная в обсуждении на форуме 1С, очень показательная: на первом запуске полезнее не пытаться сразу «нагрузить» ТСД всей работой, а последовательно связать реальный товар с карточками в базе. Это трудоемко, но именно так формируется рабочая основа учета. После этого и пересчет, и кассовая работа, и дальнейшие ревизии проходят уже значительно проще.

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

Информация носит справочный характер.

← На главную