Почему в 1С:Бухгалтерия 3.0 не заполняется себестоимость в возврате от покупателя и как это исправить?

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

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

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

Базовая логика программы: почему 1С требует документ отгрузки?

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

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

Причина 1: Документ отгрузки заполнен построчно в табличной части

Очень часто пользователи не замечают, что в конфигурации БП 3.0 реквизит ДокументОтгрузки присутствует не только на уровне шапки документа, но и на уровне строк табличной части Товары. По умолчанию эта колонка в таблице скрыта, чтобы не перегружать интерфейс.

Проанализируем ситуацию, когда поле в шапке пустое, но себестоимость все равно рассчиталась автоматически. Это происходит в следующих случаях:

  1. Табличная часть заполнялась с помощью специализированных механизмов подбора или по кнопке «Заполнить» — «Документы отгрузки и цены». В этом случае система самостоятельно находит подходящие документы продажи для каждой конкретной номенклатурной позиции и подставляет их в скрытую колонку строки.
  2. Пользователь вручную вывел скрытую колонку на экран и заполнил документы отгрузки построчно. При проведении документа программа успешно обращается к указанным партиям и рассчитывает себестоимость индивидуально для каждой строки. Шапка при этом визуально остается чистой.

Причина 2: Программная логика «Возврата прошлого месяца» в коде 1С

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


Если ВозвратПрошлогоМесяца Тогда
    НоваяСтрока.Себестоимость = НоваяСтрока.СуммаСписания;
КонецЕсли;

Проанализируем эту логику подробнее:

Причина 3: Настройка типов цен номенклатуры и автоподстановка

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

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

Причина 4: Синхронизация данных с внешними торговыми системами

Если ваша организация ведет оперативный учет в решениях класса «1С:Управление торговлей», «1С:УНФ» или «1С:Розница», а в «1С:Бухгалтерию» данные переносятся посредством регулярной синхронизации, причина кроется в правилах обмена:

Причина 5: Влияние учетной политики (ФИФО или «По средней»)

Способ оценки материально-производственных запасов (МПЗ) напрямую диктует поведение алгоритмов проведения:

Как включить видимость колонки «Себестоимость» и заполнить её вручную?

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

  1. Откройте документ Возврат от покупателя.
  2. В правом верхнем углу формы нажмите кнопку «Ещё» и выберите пункт «Изменить форму...».
  3. В открывшемся дереве элементов найдите группу ТабличнаяЧастьТовары (или просто Товары).
  4. Разверните её структуру и найдите строку с реквизитом Себестоимость.
  5. Установите флажок (галочку) напротив этого реквизита, чтобы активировать его видимость. Также рекомендуется включить видимость колонки Документ отгрузки для построчного контроля партий.
  6. Нажмите кнопки «Применить» и «ОК».

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

← На главную