Почему перестала рассчитываться себестоимость в 1С:УТ 11 и что делать, если движения в документах расхода пустые?

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

Проблема с отсутствием движений в регистре Себестоимость товаров — одна из самых сложных и неприятных в «1С:Управление торговлей» версии 11.3 и выше. Типичная ситуация выглядит так: до определенной даты (например, до начала нового месяца) всё работало корректно, а начиная с первого числа расчет себестоимости перестает выполняться. При этом регламентная операция «Закрытие месяца» может проходить без видимых ошибок, документ Расчет себестоимости товаров создается, но его движения по регистру остаются пустыми. Более того, при попытке перепровести старые документы (в которых себестоимость была), данные из них могут исчезнуть.

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

1. Проверка срока действия учетной политики

Проанализируем самую простую, но часто встречающуюся причину — окончание срока действия настроек. В системе 1С:УТ 11 настройки метода оценки стоимости (ФИФО или Средняя) хранятся в регистре сведений Учетная политика организаций. Зачастую запись создается на один календарный год. Если срок действия текущей политики истек 28 (или 29) февраля, то с 1 марта система перестает понимать, по какому алгоритму распределять затраты.

Выясним причину в интерфейсе:

  1. Перейдем в раздел НСИ и администрирование — Организации.
  2. Откроем карточку организации и перейдем на вкладку Учетная политика и налогообложение.
  3. Проверим историю изменений учетной политики. Если на текущий месяц нет актуальной записи, необходимо ее создать.

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

2. Отрицательные остатки в регистре себестоимости

Посмотрим на ситуацию глубже. Даже если на складе в количественном выражении товар есть (отчет «Остатки и доступность товаров» показывает плюс), в регистре Себестоимость товаров могут возникнуть «скрытые» минусы. Это происходит из-за разрывов в аналитике. Например, товар поступил на одну «Группу финансового учета номенклатуры», а списан с другой (если ГФУ была изменена в карточке товара задним числом).

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


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

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

3. Ошибки в регистре «Распределение запасов»

Начиная с версий 11.3, система опирается на вспомогательный регистр Распределение запасов. Он отвечает за то, чтобы «стыковать» поступления и расходы в реальном времени. Если данные в этом регистре повреждены (из-за программных сбоев, некорректных доработок в расширениях или аварийного завершения работы базы), документ Расчет себестоимости просто не увидит базу для распределения.

Для решения этой проблемы попробуем выполнить следующие действия:

  1. Проверим, не зависло ли регламентное задание Расчет распределения запасов.
  2. В некоторых релизах доступна встроенная обработка «Исправление ошибок в регистре распределения запасов».
  3. Если обработки нет, можно попробовать запустить процедуру ОбновитьВсеДанныеРегистраРаспределениеЗапасов() через консоль кода (только для опытных специалистов!).

4. Ключи аналитики и «затирание» стоимости

Рассмотрим ситуацию из сообщения (9), когда при перепроведении старого документа себестоимость исчезает. Это верный признак проблемы с Ключами аналитики учета номенклатуры. 1С:УТ 11 не хранит прямую ссылку на склад или складскую ячейку в регистре себестоимости, она использует идентификатор — «Ключ».

Если в справочнике Номенклатура или Характеристики были изменены реквизиты, влияющие на учет (например, ставка НДС, использование серий, ГФУ), система при перепроведении документа пытается создать или подобрать новый ключ аналитики. Так как по новому ключу еще нет приходов (стоимости), документ расхода записывает нулевую себестоимость.

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

5. Проблемы Интеркампани (Передачи между организациями)

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

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

6. Методика диагностики «Новая организация»

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

  1. Создадим в базе новую тестовую организацию.
  2. Настроим для нее простую учетную политику (например, Средняя за месяц).
  3. Оформим один документ Приобретение товаров и услуг текущей датой.
  4. Оформим документ Реализация товаров и услуг на ту же позицию.
  5. Запустим Закрытие месяца.

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

7. Технические ошибки релиза (Баги)

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

Также стоит обратить внимание на гиперссылку Ошибки в окне «Закрытие месяца». Даже если напротив этапа «Расчет себестоимости» стоит зеленая галочка, внутри лога могут быть предупреждения, которые система не считает критическими, но которые блокируют запись движений.

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

← На главную