Что делать, если в 1С:ERP неактивна кнопка закрытия месяца и программа требует пересчет за предыдущий период?

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

При работе в конфигурации 1С:ERP Управление предприятием (а также в родственных решениях «1С:Комплексная автоматизация» и «1С:Управление торговлей») пользователи часто сталкиваются с неприятной ситуацией при начале ведения учета. Вы выбираете первый рабочий месяц (например, январь), но кнопка «Выполнить операции» оказывается неактивной. Рядом горит предупреждение: «Расчет возможен только с периода [Месяц Год]», а в расшифровке этапов закрытия система настойчиво требует пересчитать операции за предыдущий месяц (например, декабрь), который вы закрыть физически не можете.

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

Выясняем техническую причину возникновения проблемы

Для того чтобы понять, почему система ведет себя подобным образом, рассмотрим стандартный сценарий запуска новой информационной базы. Предположим, предприятие начинает вести оперативный и финансовый учет с 1 января 2019 года. Согласно методологии 1С, все документы ввода начальных остатков (такие как ВводОстатковВзаиморасчетов, ВводОстатковТоваров, ВводОстатковВнеоборотныхАктивов) должны быть оформлены датой, предшествующей началу учета — то есть 31 декабря 2018 года.

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

Поскольку ввод начальных остатков был выполнен в декабре 2018 года, система зафиксировала изменения («задания») именно в декабре. Для программы это сигнал: «В декабре изменились данные, значит, нужно заново рассчитать себестоимость, партионный учет и сформировать проводки за декабрь». Однако учетная политика вашей организации создана и применяется только начиная с января 2019 года. Без действующей учетной политики за декабрь программа блокирует возможность расчета этого месяца, создавая тупиковую ситуацию: декабрь закрыть нельзя, а без его закрытия невозможно рассчитать январь.

Где хранятся мешающие «задания к расчету»?

Для координации регламентных операций закрытия месяца в 1С:ERP используется целое семейство служебных регистров. Наличие записей в любом из них за «предысторический» период блокирует расчет текущего месяца. Рассмотрим основные регистры, в которых могут зависнуть записи:

  1. РегистрСведений.ЗаданияКЗакрытиюМесяца — основной управляющий регистр, который хранит информацию о необходимости выполнения тех или иных шагов в разрезе организаций и периодов.
  2. РегистрСведений.ЗаданияКРасчетуСебестоимости — регистр, контролирующий необходимость пересчета партий товаров, себестоимости и распределения расходов.
  3. РегистрСведений.ЗаданияКОтражениюВРегламентированномУчете — отвечает за формирование проводок по документам.
  4. РегистрСведений.ЗаданияКРасчетуАмортизацииОсновныхСредств и РегистрСведений.ЗаданияКРасчетуАмортизацииНМА — регистры, фиксирующие изменения в необоротных активах, требующие пересчета амортизации.

Если в любом из этих регистров есть записи за декабрь 2018 года (или более ранние периоды), программа не позволит запустить закрытие января 2019 года. Для автоматического снятия таких блокировок подойдёт обработка для пропуска этапов закрытия месяца в 1С:ERP и 1С:КА.

Пошаговые способы решения проблемы

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

Способ 1. Очистка заданий напрямую из рабочего места «Закрытие месяца»

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

  1. Перейдем в раздел Финансовый результат и контроллинг — Закрытие месяца.
  2. В верхнем правом углу формы нажмем кнопку Еще и выберем пункт меню Задания к расчету.
  3. В открывшемся окне мы увидим список всех зарегистрированных системой заданий, требующих выполнения.
  4. Настроим отбор по периоду или просто найдем визуально строки, относящиеся к декабрю 2018 года (или вашему месяцу ввода остатков).
  5. Выделим эти строки и удалим их с помощью клавиши Delete или через контекстное меню (правой кнопкой мыши — Удалить).

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

Способ 2. Очистка регистров через «Функции для технического специалиста»

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

  1. Откроем главное меню программы (в левом верхнем углу) и выберем пункт Функции для технического специалиста (в старых версиях платформы этот режим назывался «Все функции»).
  2. Раскроем ветку Регистры сведений.
  3. Найдем по очереди регистры: Задания к закрытию месяца и Задания к расчету себестоимости.
  4. В открывшихся списках записей установим отбор по полю Месяц (равен или меньше декабря 2018 года) и по конкретной Организации, если в базе их несколько.
  5. Выделим все отфильтрованные записи (сочетанием клавиш Ctrl + A) и удалим их.

Аналогичную операцию при необходимости следует проделать и для других регистров заданий (например, по расчету амортизации или отражению в рег. учете), если по ним также висят требования пересчета. Для автоматизации этой задачи подойдёт обработка для удаления записей регистров заданий к закрытию месяца на выбранную дату.

Способ 3. Отмена необходимости расчета через дерево операций

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

  1. В форме «Закрытие месяца» развернем группировку операций до конкретного шага, который горит красным (например, «Расчет себестоимости» за декабрь).
  2. Нажмем на проблемной операции правой кнопкой мыши.
  3. В появившемся контекстном меню выберем команду Сбросить статус выполнения или Отменить необходимость расчета. Название команды может незначительно отличаться в зависимости от версии конфигурации.

Безопасен ли этот шаг и на что влияет удаление заданий?

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

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

Когда это может быть опасно:
Если вы решите удалить задания к расчету в уже рабочем периоде (например, в марте 2019 года, когда в базе вовсю ведутся продажи и производство). Если кто-то изменил мартовский документ, система создала задание на пересчет марта. Если вы просто удалите это задание, чтобы «побыстрее закрыть апрель», программа проигнорирует мартовские изменения. В итоге себестоимость, финансовый результат и проводки апреля рассчитаются некорректно, так как они не учтут изменения марта. Делать так в рабочем периоде категорически не рекомендуется!

Как предотвратить появление таких ошибок в будущем?

Чтобы вам не приходилось регулярно чистить регистры вручную, мы рекомендуем выполнить следующие профилактические действия:

  1. Установите дату запрета редактирования данных. Как только ввод начальных остатков за декабрь завершен и проверен, немедленно установите дату запрета редактирования на 31.12.2018. Это заблокирует возможность случайного перепроведения документов прошлых периодов пользователями, и новые задания на пересчет декабря больше не будут создаваться.
  2. Настройте права пользователей для обменов данными. Очень часто старые документы перепроводятся автоматически при синхронизации с другими базами (например, с «1С:Бухгалтерией» или внешней CRM). Убедитесь, что дата запрета изменений распространяется и на пользователей, под которыми выполняются автоматические обмены данными.
  3. Изучите возможности новых релизов. Если вы работаете на платформе ERP версии 2.5 и выше, обратите внимание на новые механизмы закрытия месяца. Разработчики добавили возможность выполнять расчет в режиме «Только выбранный этап» вместо жесткого требования рассчитывать всю цепочку прошлых периодов. Это значительно упрощает локальное исправление ошибок без необходимости тотального пересчета истории.

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

← На главную