В конфигурации «Управление производственным предприятием 1.3» присутствует типовое регламентное задание «Пересчет итогов регистров накопления». Это важная регламентная операция и ей должно быть назначено расписание, но действительно ли оно работает в вашей базе как положено и какова его цель?
Подобные регламентные задания обычно назначаются для выполнения раз в месяц, т.к. итоговые записи рассчитываются на каждый месяц. Выполнять данную задачу чаще, обычно, не имеет смысла, тем более что она требовательна к ресурсам, и именно здесь может скрываться первая проблема. Предварительно рекомендую ознакомиться с информацией приведенной в статье «Что такое итоги регистров накопления?».
Регламентное задание «Пересчет итогов регистров накопления»
Давайте посмотрим на код процедуры исследуемого регламентного задания:
Разберемся как работает код задания:
- В первый раз (в текущем месяце) задание лишь устанавливает период рассчитанных итогов (без пересчета). Таким образом, для вызова пересчета всех итогов необходимо назначить выполнение задания минимум дважды в месяц
- Итоги регистров накопления вида «Обороты» задание не пересчитывает в принципе, разработчики почему-то решили что остаточных регистров накопления и регистров бухгалтерии достаточно
- Отсутствует какой-либо контроль выполнения задания. Пересчет итогов всех регистров может занимать длительное время. Если же после запуска задания пересчета итогов у вас назначено, например, задание создания бэкапа средствами 1С:Предприятие (с отключением всех пользователей) или, например, перезагрузка сервера 1С, возможно, итоги по части регистров не будут пересчитаны
Вывод
В целом, если задание выполняется хотя бы раз в месяц, оно выполняет свою самую важную функцию — передвигает период рассчитанных итогов. Это приводит к созданию итоговых записей (причем сразу очищенных от нулевых значений) за необходимые периоды по остаточным регистрам. Актуализация же значений итогов происходит при проведении/отмене проведения, если не отключено использование итогов.
Недостаток этого задания заключает в том что при перепроведении или отмене проведения, в прошлых периодах могут возникнуть «нулевые» итоговые записи. Назначенное дважды в месяц задание, избавит вашу базу от ненужных строк в таблице итогов остаточных регистров. Однако, для пересчета итогов (удаления лишних нулевых записей) по оборотным регистрам все же необходимо исправить код. В целом, первые два пункта не слишком критичны, все зависит от того как много таких записей в таблицах итогов вашей базы. В моем случае, исправление этих недочетов серьезно сократили размер базы данных на диске.
Касательно третьего пункта, достаточно быть осторожным в назначении заданий, хотя контроль выполнения еще никому никогда не повредил.