Как правильно рассчитать цену при вводе начальных остатков в 1С:Управление торговлей 10.3?

Программист 1С v8.3 (Обычные формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

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

Постановка задачи и анализ ситуации

Рассмотрим сценарий: у нас есть база объемом 100 Гб, и нам необходимо перенести только актуальные остатки в пустую базу той же конфигурации. Основная проблема заключается в том, что для документа Оприходование товаров (который чаще всего используется для ввода остатков в УТ 10.3) требуется указать цену. Если мы просто укажем нулевую цену, мы потеряем данные о себестоимости, что сделает невозможным расчет валовой прибыли в новой базе. Если мы возьмем произвольную цену, финансовый результат будет искажен.

Проанализируем, где в системе хранятся данные о стоимости товара, если документы установки цен отсутствуют. В 1С:Управление торговлей 10.3 основным источником информации о стоимости являются регистры партионного учета. Даже если учетная цена (продажная или закупочная) не зафиксирована в регистре сведений Цены номенклатуры, фактическая стоимость закупки обязательно отражена в движениях по партиям.

Решение проблемы: Расчет цены через регистр партий

Самым правильным и логичным способом в данной ситуации будет обращение к регистру накопления Партии товаров на складах (управленческий учет). Именно здесь хранится информация о том, сколько товара числится на складе и какова его общая стоимость с учетом всех поступлений и дополнительных расходов.

Разберем по шагам алгоритм получения этой цены:

  1. Формирование запроса к остаткам: Нам необходимо получить остатки по регистру ПартииТоваровНаСкладах на момент переноса. Нас интересуют три основных параметра: Номенклатура, Количество и Стоимость.
  2. Учет характеристик и серий: Если в вашей базе используется учет по характеристикам (например, цвет или размер) или сериям, их обязательно нужно включить в группировку запроса. Себестоимость может существенно различаться даже в рамках одной позиции номенклатуры.
  3. Вычисление средней цены: Для каждой строки результата мы делим общую стоимость на количество. Полученное значение и будет являться нашей ценой для документа ввода остатков.

Рассмотрим пример логики запроса на встроенном языке 1С:


ВЫБРАТЬ
    ПартииОстатки.Номенклатура КАК Номенклатура,
    ПартииОстатки.ХарактеристикаНоменклатуры КАК Характеристика,
    ПартииОстатки.КоличествоОстаток КАК Количество,
    ПартииОстатки.СтоимостьОстаток КАК Стоимость
ИЗ
    РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&ДатаОстатков, ) КАК ПартииОстатки

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

ЦенаДляОприходования = ?(Количество > 0, Стоимость / Количество, 0);

Нюансы партионного учета: FIFO против Средней

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

Если для вашего бизнеса критически важна точность списания партий (например, вы торгуете товаром с сильными колебаниями закупочных цен), то правильнее будет вводить остатки не одной строкой, а в разрезе каждой исторической партии. В документе Оприходование товаров в УТ 10.3 есть возможность указать документ партии, но при вводе начальных остатков обычно создается новая партия самим документом оприходования. Поэтому, если нужна детализация, создавайте несколько строк на одну номенклатуру с разными ценами.

Почему нельзя игнорировать НДС?

Выясним причину, по которой простого расчета «Стоимость / Количество» может быть недостаточно. Если ваша организация работает на общей системе налогообложения (ОСНО), то при вводе остатков крайне важно учитывать входящий НДС. В 1С:Управление торговлей 10.3 за это отвечает регистр НДС Предъявленный.

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

Автоматизация регистрации цен поставщиков

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

Это позволит системе при проведении документа Поступление товаров и услуг автоматически создавать записи в регистре сведений Цены номенклатуры контрагентов. На основании этих данных в дальнейшем гораздо проще формировать документы Установка цен номенклатуры для собственных типов цен (оптовых, розничных) с помощью обработки Печать прайс-листа или Формирование цен.

Использование Помощника ввода начальных остатков

Несмотря на то что многие привыкли использовать документ Оприходование товаров, в типовых решениях 1С часто присутствует специализированный механизм — Помощник ввода начальных остатков. Посмотрим на преимущества его использования:

Влияние введенных цен на будущие отчеты

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

  1. Ведомость по партиям товаров: Этот отчет будет использовать вашу цену как базис. Все последующие списания (продажи) будут брать эту стоимость в себестоимость.
  2. Валовая прибыль: Если вы укажете заниженную цену при оприходовании, ваша прибыль в отчетах будет выглядеть неоправданно высокой. Если завышенную — вы можете увидеть убыток там, где его нет.
  3. Инвентаризация: При выявлении излишков или недостач система будет ориентироваться на текущую стоимость партий на складе.

Резюме: Метод расчета цены как частного от деления остатка стоимости на остаток количества в регистре ПартииТоваровНаСкладах является рабочим и наиболее точным для условий отсутствия прайс-листов. Главное — не забывать про аналитику (характеристики) и налоговый учет (НДС), чтобы база оставалась прозрачной для бухгалтерии и управленцев.

← На главную