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