При переносе данных из 1С:Бухгалтерии 7.7 в 1С:Бухгалтерию предприятия 3.0 специалисты часто сталкиваются с ошибкой записи ручных операций или документов. Сообщение об ошибке выглядит следующим образом:
Ошибка при вызове метода контекста (Записать): Запись не верна! Поле "Подразделение" должно быть пустым! (Регистр бухгалтерии: Журнал проводок (бухгалтерский и налоговый учет))
Рассмотрим подробно причины возникновения этой проблемы и разберем практические способы её устранения.
Проанализируем механику работы регистра бухгалтерии в платформе 1С:Предприятие 8. В отличие от версии 7.7, где подразделение могло быть добавлено как обычное субконто (аналитика счета), в 1С:Бухгалтерии 3.0 измерение Подразделение является сквозным измерением регистра бухгалтерии ЖурналПроводокЕПСБНУ.
На техническом уровне платформа контролирует заполнение измерений ПодразделениеДт и ПодразделениеКт. При попытке записать проводку платформа проверяет флаг УчетПоПодразделениям у счетов дебета и кредита в плане счетов Хозрасчетный:
УчетПоПодразделениям установлен в Истина, запись значения подразделения разрешена.УчетПоПодразделениям равен Ложь, платформа требует, чтобы реквизиты ПодразделениеДт или ПодразделениеКт строго содержали значение Неопределено (были пустыми).Если в выгруженных из 7.7 данных (например, по счету 68.4.1) передается подразделение, а в 1С:Бухгалтерии 3.0 для этого счета учет по подразделениям выключен, система блокирует запись операции с указанной ошибкой.
Попытка вручную включить субконто или настроить учет по подразделениям на счете 68.4.1 в версии ПРОФ приводит к нарушению логики работы регламентных операций закрытия месяца и заполнению налоговой отчетности. В типовой конфигурации Бухгалтерия предприятия ПРОФ учет расчетов с бюджетом и денежных средств в разрезе подразделений не предусмотрен — этот функционал доступен только в версии КОРП.
Разберем наиболее эффективное решение: скорректировать обработчик загрузки данных или правила обмена. Нам необходимо принудительно очистить значения измерений ПодразделениеДт и ПодразделениеКт для тех счетов, у которых выключен учет по подразделениям.
В модуле ОбработчикиЗагрузкиИзБухгалтерии77 (или в обработчике правил конвертации ПослеЗагрузки для объекта ОперацияБух) добавим следующий алгоритм:
Если (Корреспонденция.СчетДт = ПланыСчетов.Хозрасчетный.ПустаяСсылка())
ИЛИ (НЕ Корреспонденция.СчетДт.УчетПоПодразделениям) Тогда
Корреспонденция.ПодразделениеДт = Неопределено;
КонецЕсли;
Если (Корреспонденция.СчетКт = ПланыСчетов.Хозрасчетный.ПустаяСсылка())
ИЛИ (НЕ Корреспонденция.СчетКт.УчетПоПодразделениям) Тогда
Корреспонденция.ПодразделениеКт = Неопределено;
КонецЕсли;
Этот код проверяет каждый счет проводки. Если счет не поддерживает учет по подразделениям, измерение принудительно сбрасывается в значение Неопределено, что позволяет платформе успешно записать документ.
Если вы не хотите менять типовые правила обмена или код конфигурации, можно создать временное расширение для базы 1С:Бухгалтерия 3.0 на период переноса данных.
ПередЗаписью регистра бухгалтерии ЖурналПроводокЕПСБНУ или документа ОперацияБух.УчетПоПодразделениям у счетов дебета и кредита.ПодразделениеДт и ПодразделениеКт значение Неопределено.Если организации действительно необходим полноценный учет налога на прибыль и расчетов с бюджетом по обособленным подразделениям (включая счет 68.4.1), правильным решением будет переход с версии ПРОФ на 1С:Бухгалтерию КОРП. В версии КОРП учет по подразделениям на счетах учета налогов включен штатно, и данные из 7.7 загрузятся без дополнительных доработок кода.