Почему после обновления 1С:ERP пропали расходы в документе распределения доходов и расходов и как теперь закрывать месяц?

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

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

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

Выясняем причину: глобальный архитектурный слом в версии 2.4.9 и 2.4.10

Для того чтобы понять суть проблемы, нам необходимо проанализировать изменения, которые разработчики фирмы «1С» внесли в систему начиная с версии 2.4.9. Ранее в системе существовал единый документ, который объединял в себе функции распределения как доходов, так и расходов. Это было привычно, но создавало серьезные ограничения при повышении детализации учета и оптимизации производительности закрытия месяца.

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

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

Попытка программиста вернуть старый запрос в модуле объекта документа в процедуре ЗаполнитьРасходыПоОстаткам() является классическим «костылем». Это временно маскирует проблему, заставляя старый код работать с измененными структурами метаданных, но полностью ломает логику закрытия месяца в последующих периодах и делает невозможным дальнейшие обновления на версию 2.4.11 и выше.

Разберем по шагам: как теперь распределяются расходы

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

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

Шаг 2. Использование рабочего места «Распределение расходов». Перейдем в раздел финансового результата и откроем рабочее место Распределение расходов. Система автоматически анализирует остатки по регистру накопления ПрочиеРасходы и выводит список статей, требующих распределения. Если правила в статьях настроены корректно, ручное создание документов распределения вообще не потребуется.

Шаг 3. Автоматическое создание документов при закрытии месяца. В процессе регламентной операции закрытия месяца система автоматически генерирует скрытые документы распределения расходов на основе заданных в статьях правил. Это существенно снижает влияние человеческого фактора.

Для понимания того, как система анализирует остатки расходов, программисты могут использовать следующий программный запрос к новому регистру для выявления зависших сумм:


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

Запрос.УстановитьПараметр("ПериодГраница", Новый Граница(КонецДня(ТекущаяДата()), ВидГраницы.Включая));
РезультатЗапроса = Запрос.Выполнить();

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

Анализируем сопутствующие ошибки релизов 2.4.10

При обновлении на версию 2.4.10.89 пользователи также часто сталкиваются с сопутствующими ошибками расчета себестоимости и распределения расходов, которые обсуждались на форуме:

1. Ошибка 00-00258040 (Реклассификация расходов). Данная ошибка проявляется, когда первичные дополнительные расходы отражаются документом Отражение прочих доходов и расходов с операцией «Реклассификация расходов». При закрытии месяца программа некорректно обрабатывала переброску затрат между статьями, из-за чего суммы «зависали» на регистрах и не распределялись на себестоимость товаров. В релизе 2.4.10.89 эта ошибка была официально исправлена разработчиками, однако для корректного расчета требуется полное перепроведение цепочки документов начиная с месяца реклассификации.

2. Проблема с проводками РБП (Расходы будущих периодов) в версии 2.4.10.62. В более ранних промежуточных релизах ветки 2.4.10 наблюдалась критическая проблема: документы распределения РБП проводились в управленческом учете, но переставали создавать проводки в регламентированном учете (по дебету затратных счетов и кредиту счета 97). Проблема была связана с изменением алгоритмов сопоставления аналитик затрат. Для ее решения требуется обновить конфигурацию до актуального релиза (не ниже 2.4.10.89) и перезакрыть месяц.

Рекомендации для успешного перехода на новые релизы (включая 2.4.11)

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

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

← На главную