Почему в 1С:БГУ 2.0 в Журнале операций № 2 невозможно изменить период и устанавливается только 31 декабря?

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

При работе в программе 1С:Бухгалтерия государственного учреждения, редакция 2.0 пользователи могут столкнуться с крайне неприятной проблемой: при попытке сформировать отчет «Журнал операций (ф. 0504071)» по Журналу № 2 («Журнал операций с безналичными денежными средствами») невозможно изменить период. Независимо от того, какую дату или интервал пытается выбрать пользователь, программа принудительно сбрасывает значения начала и конца периода на 31 декабря текущего или прошлого года. При этом отчеты по другим журналам (например, по кассе или расчетам с поставщиками) формируются абсолютно корректно и без каких-либо сбоев.

В этой статье мы подробно разберем, почему возникает данная ошибка, проанализируем внутренние механизмы работы конфигурации БГУ 2.0 и рассмотрим пошаговые сценарии ее исправления — от простых настроек в пользовательском режиме до административных процедур тестирования базы данных.

Причина 1: Сбой или неверная настройка константы «Журнал межотчетного периода»

Это наиболее вероятная и распространенная причина возникновения данной проблемы, обусловленная методологией ведения учета в государственных учреждениях. По правилам бухучета все операции межотчетного периода (такие как закрытие счетов, технологический перенос остатков, исправление ошибок прошлых лет) должны отражаться условной датой — 31 декабря (а именно последней секундой года: 23:59:59).

Для группировки таких специфических операций в 1С:БГУ используется специализированный журнал (как правило, под кодом «10» или «8-мо» — «Журнал операций межотчетного периода»). В программном коде отчета ЖурналОпераций0504071 жестко зашито поведение: если отчет формируется по журналу, который назначен «межотчетным», выбор периода блокируется, и программа принудительно устанавливает дату на 31 декабря.

Связь конкретного элемента справочника Журналы с этой логикой устанавливается через системную константу. Если в базе произошел технический сбой, некорректно отработал обработчик обновления или имело место ошибочное действие пользователя, в константу «Журнал межотчетного периода» мог записаться рабочий Журнал № 2. В результате программа начинает ошибочно считать журнал по безналичным денежным средствам межотчетным.

Как исправить ситуацию в пользовательском режиме (пошагово):

  1. Перейдем в раздел меню «Учет и отчетность».
  2. Откроем подраздел «План счетов» и выберем пункт «Настройка параметров учета».
  3. В открывшемся окне перейдем на вкладку «Межотчетный период».
  4. Проанализируем значение в поле выбора журнала. Если там по ошибке указан «Журнал № 2», очистим это поле и выберем правильный журнал (обычно это специализированный «Журнал операций межотчетного периода» с кодом 10 или 8-мо).
  5. Сохраним настройки и заново проверим формирование отчета.

Для понимания того, как это выглядит на уровне кода, приведем пример того, как система проверяет привязку журнала к межотчетному периоду при инициализации формы отчета:


// Пример логики проверки журнала в модуле отчета
МежотчетныйЖурнал = Константы.ЖурналМежотчетногоПериода.Получить();
Если ВыбранныйЖурнал = МежотчетныйЖурнал Тогда
    Элементы.Период.Доступность = Ложь;
    Отчет.НачалоПериода = КонецГода(РабочаяДата);
    Отчет.КонецПериода = КонецГода(РабочаяДата);
КонецЕсли;

Причина 2: Повреждение общих настроек компоновки данных (СКД) в базе данных

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

В процессе работы или при аварийном завершении сеанса 1С настройки вариантов отчетов в Системе компоновки данных (СКД) для Журнала № 2 могли записаться с ошибкой. В результате при открытии формы отчет пытается применить некорректную сохраненную структуру настроек и зависает на дефолтной дате по умолчанию.

Рассмотрим, как сбросить и восстановить настройки отчета:

  1. Откроем отчет «Журнал операций (ф. 0504071)».
  2. В правом верхнем углу формы нажмем кнопку «Еще», далее перейдем в подменю «Прочее» и выберем пункт «Изменить вариант отчета...».
  3. В открывшемся окне настройки компоновки нажмем «Еще» -> «Установить стандартные настройки».
  4. Если стандартный сброс не помог, выполним глобальную очистку настроек под учетной записью администратора. Для этого перейдем в раздел «Администрирование» -> «Настройки пользователей и прав» -> «Очистка настроек».
  5. В списке выберем проблемный отчет для всех пользователей и нажмем кнопку «Очистить».

Причина 3: Нарушение ссылочной целостности и особенности релиза 2.0.57.44

В практике эксплуатации конфигурации БГУ редакции 2.0 (в частности, на релизе 2.0.57.44 и смежных версиях) нередко возникают ситуации, когда после обновления метаданных нарушаются внутренние уникальные идентификаторы (GUID) предопределенных элементов справочников или Плана счетов ЕПСБУ. Так как счета привязаны к конкретным номерам журналов операций, «битые» ссылки приводят к тому, что отчет не может корректно сопоставить выбранный Журнал № 2 с его системным описанием.

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

Разберем по шагам этот алгоритм («ТИИ -> Обновление -> ТИИ»):

  1. Первое Тестирование и исправление (ТИИ): Запускаем конфигуратор, переходим в меню Администрирование -> Тестирование и исправление.... Обязательно устанавливаем флажки на пунктах Проверка ссылочной целостности и Реконструкция таблиц. В режиме обработки битых ссылок выбираем значение Создавать объекты или Очищать ссылки (в зависимости от политики обслуживания вашей БД). Это действие устраняет логическую несогласованность в системных таблицах СУБД до начала наката обновления.
  2. Обновление конфигурации: Выполняем обновление конфигурации 1С:БГУ на следующий актуальный релиз. При первом запуске программы в режиме «Предприятие» принудительно стартуют отложенные обработчики обновления. Именно они перезаписывают некорректные системные константы и восстанавливают связи между Планом счетов и справочником Журналы.
  3. Второе Тестирование и исправление (ТИИ): Повторно запускаем процедуру ТИИ в конфигураторе. На этот раз выбираем режимы Переиндексация таблиц и Пересчет итогов. Это окончательно фиксирует изменения, обновляет индексы базы данных и пересчитывает итоги по исправленным регистрам.

Параллельно с этим процессом перед началом всех работ крайне рекомендуется запустить утилиту проверки физической целостности базы данных chdbfl.exe (она находится в каталоге bin установленной платформы 1С) для исправления возможных ошибок на физическом уровне хранения таблиц формата *.1CD.

Резюме и профилактика проблемы

Для того чтобы избежать повторения подобных сбоев с блокировкой периодов в журналах операций БГУ 2.0, рекомендуем придерживаться следующих правил технического обслуживания базы данных:

← На главную