В процессе работы с программным решением 1С:ERP Управление предприятием бухгалтеры и специалисты по внедрению часто сталкиваются с ситуацией, когда в некоторых типах документов (особенно связанных с внеоборотными активами — ОС, НМА, аренда и лизинг) кнопка или флажок «Ручная корректировка проводок» в журнале проводок оказывается неактивной. При этом в настройках регламентированного учета данная функция включена, и для других документов (например, по продажам или закупкам) ручная правка отлично работает. Разберем подробно, почему так происходит, как устроена архитектура системы в этой части и какими методами можно решить эту задачу без вреда для учета.
Для начала проанализируем, почему разработчики сознательно блокируют ручное изменение проводок в контуре внеоборотных активов (ВНА). Главная причина кроется в приоритете оперативного учета над регламентированным. В 1С:ERP проводки бухгалтерского и налогового учета не являются первичными — они формируются на основе движений по оперативным регистрам (регистрам накопления и сведений).
Если пользователь вручную скорректирует проводку по счету 01 или 02 напрямую в документе, система запишет эти данные только в регистр бухгалтерии. При этом оперативные регистры, такие как СтоимостьОС, АмортизацияОС или сведения о параметрах амортизации, останутся неизменными. Это неизбежно приведет к следующим критическим последствиям:
Позиция разработчиков «1С» однозначна: для документов, где проводки формируются по сложным оперативным алгоритмам, ручная корректировка должна быть запрещена. Именно поэтому в структуре метаданных таких документов, как ПоступлениеАрендованныхОС или в старых версиях учета ВНА для ПринятиеКУчетуОС, попросту отсутствует реквизит РучнаяКорректировка.
Рассмотрим подробнее, как ситуация менялась по мере развития конфигурации 1С:ERP. В системе существует две версии учета внеоборотных активов: устаревшая версия 2.2 и современная версия 2.4 (которая используется и в редакции 2.5).
ПринятиеКУчетуОС и СписаниеОС, разработчики добавили реквизит РучнаяКорректировка и разрешили пользователям редактировать проводки. Однако для документов по аренде и лизингу (например, ПоступлениеАрендованныхОС) ограничение по-прежнему действует из-за высокой сложности математических моделей расчета обязательств.Если перед вами стоит задача скорректировать данные регламентированного учета (например, добавить аналитику, субконто, исправить счет учета), а стандартная кнопка недоступна, рассмотрим несколько безопасных вариантов решения.
Самый правильный и методологически верный способ внесения правок без нарушения целостности базы — использование специального корректирующего документа. Разберем этот процесс по шагам:
Договоры), введите корректирующую проводку вручную в табличной части.Корректировка регистров, чтобы скорректировать записи в оперативных регистрах накопления по ОС. Это позволит избежать расхождений между балансом и оперативными отчетами.Если вы до сих пор используете старый функционал учета внеоборотных активов, настоятельно рекомендуем выполнить переход на новую версию. Выясним, как это сделать:
Принятие к учету ОС, появится долгожданная возможность ручной правки проводок (при условии, что в системе включена общая функциональная опция ручных корректировок).Иногда флажок ручной корректировки недоступен банально из-за ограничений прав, даже если у пользователя назначена роль «Полные права» в сильно кастомизированной базе. Проанализируем настройки ролей:
ПравоРучнойКорректировкиПроводок).Если бизнес-требования категорически настаивают на возможности редактировать проводки конкретного документа «здесь и сейчас», а типовой функционал этого не позволяет, задачу можно решить программным путем через механизм расширений. Рассмотрим пример реализации:
Чтобы документ поддерживал ручную корректировку, в его метаданных должен присутствовать реквизит РучнаяКорректировка с типом Булево. Шаблон доработки выглядит следующим образом:
РучнаяКорректировка.ОбработкаПроведения добавьте проверку, которая остановит стандартный алгоритм формирования движений, если пользователь установил флаг ручной корректировки:
&После("ОбработкаПроведения")
Процедура Расш1_ОбработкаПроведения(Отказ, РежимПроведения)
Если ЭтотОбъект.РучнаяКорректировка Тогда
// Если включена ручная корректировка, пропускаем стандартное формирование движений
Возврат;
КонецЕсли;
КонецПроцедуры
Внимание! Применение четвертого варианта крайне не рекомендуется для документов ОС и аренды. Это может полностью заблокировать корректную работу регламентных операций закрытия месяца и привести к необратимому искажению данных в регистрах оперативного учета.