При изменении фундаментальных настроек учета, таких как "Переоценка валютных средств", в 1С:ERP может возникнуть ситуация, когда система не пересчитывает курсовые разницы за предыдущие периоды автоматически. Стандартные методы, такие как простое перепроведение документов или запуск процедуры переоценки через Документы.РасчетКурсовыхРазниц.ВыполнитьПереоценку(Месяц), могут оказаться неэффективными, так как система считает, что расчет уже был выполнен. В такой ситуации необходимо предпринять комплексные меры для принудительного пересчета.
Прежде чем перейти к методам решения, важно понять, почему возникают трудности с пересчетом. Система 1С:ERP фиксирует состояние данных на момент выполнения регламентных операций закрытия месяца. Изменения, внесенные задним числом, требуют отмены ранее выполненных действий. Основная причина, по которой простое перепроведение или повторный запуск процедуры переоценки не работают, кроется в наличии специальных вспомогательных документов и движений:
РегистраторРасчетов, который является ключевым элементом для управления взаиморасчетами и содержит часть движений этих расчетов.РегистраторРасчетов, ссылающиеся на документы РасчетКурсовыхРазниц, система не позволит отменить или удалить эти документы РасчетКурсовыхРазниц.РегистраторРасчетов могут оставаться неизменными или не быть пересчитаны должным образом.Система защищает целостность данных, требуя отмены всех зависимых движений, включая регистры накопления, что делает процесс принудительного пересчета трудоемким.
Этот метод является наиболее щадящим и может помочь в случаях, когда проблема затрагивает не слишком большой объем данных или специфические документы. Суть метода заключается в том, чтобы искусственно "заставить" систему обновить движения, связанные с валютными расчетами, путем внесения небольших изменений в исходные документы и последующего их перепроведения.
ПоступлениеБезналичныхДенежныхСредств, СписаниеБезналичныхДенежныхСредств, ПриобретениеТоваровИУслуг, РеализацияТоваровИУслуг и другие валютные документы.ПоступлениеБезналичныхДенежныхСредств это может быть дата оплаты. Изменим ее на секунду вперед или назад.Почему это работает: При перепроведении документа система заново формирует его движения, включая те, что связаны с РегистраторРасчетов. Это может принудительно обновить информацию о валютных расчетах и, как следствие, вызвать пересчет курсовых разниц в процессе закрытия месяца. Этот подход показал свою эффективность для некоторых пользователей.
Если точечная корректировка не принесла желаемого результата, или если проблема касается более широкого круга документов, мы можем попробовать использовать стандартные механизмы закрытия месяца, но с акцентом на конкретные этапы переоценки. Этот метод предполагает, что основные документы в системе проведены корректно, и мы хотим лишь пересчитать сами курсовые разницы.
ЗаданияКЗакрытиюМесяца, убедимся, что включены и будут выполнены следующие задания для нужного месяца:
Переоценка денежных средствПереоценка расчетов с клиентамиПереоценка расчетов с поставщиками (в некоторых случаях может потребоваться предварительное перезаполнение регистров взаиморасчетов)Обратите внимание: Авторы некоторых сообщений на форуме отмечали, что этот метод может изменить суммы, но не всегда приводит к ожидаемому результату, особенно если базовые движения в РегистраторРасчетов остались "старые". Тем не менее, это обязательный шаг перед более радикальными действиями.
Это самый полный и трудоемкий метод, который следует применять, когда все остальные способы исчерпаны и требуется гарантированный пересчет. Он подразумевает удаление всех следов старых расчетов курсовых разниц и их полное воссоздание. Крайне важно выполнять этот метод только на тестовой базе, прежде чем применять на рабочей.
Первым делом мы отменяем все операции закрытия месяца для всех затронутых периодов, начиная с самого последнего и двигаясь в прошлое. Это "открывает" периоды для редактирования документов в закрытом периоде и удаления лишних движений.
Это один из самых трудоемких шагов. Нам предстоит отменить проведение всех документов, которые формируют валютные остатки в спорных периодах. К таким документам относятся:
ПоступлениеБезналичныхДенежныхСредств и СписаниеБезналичныхДенежныхСредствПриобретениеТоваровИУслуг (для расчетов с поставщиками)РеализацияТоваровИУслуг (для расчетов с клиентами)ОперацииВВалюте и другие ручные операцииВажно: Отменяем проведение, а не просто перепроводим. Это позволит очистить большую часть движений, но, как мы выяснили ранее, не все.
Как мы уже выяснили, документ РегистраторРасчетов играет ключевую роль в блокировке удаления или пересчета курсовых разниц. Его движения необходимо очистить вручную. Для этого мы будем использовать специальную обработку:
РасчетКурсовыхРазниц: Используем стандартный поиск мест использования (например, через ПКМ на документе РасчетКурсовыхРазниц в списке или через обработку) для тех документов РасчетКурсовыхРазниц, которые система не дает удалить. В списке мест использования мы найдем ссылки на объекты типа РегистраторРасчетов.УниверсальныйРедакторРеквизитов.epf (это распространенный инструмент, который можно найти на ИТС или в открытых источниках).РегистраторРасчетов: В обработке УниверсальныйРедакторРеквизитов.epf по очереди открываем документы РегистраторРасчетов, которые были найдены на шаге 1. В этих документах нам необходимо удалить движения (строки), в которых есть ссылка на те документы РасчетКурсовыхРазниц, которые система не даёт удалить. Будьте крайне внимательны на этом шаге, удаляйте только те движения, которые явно ссылаются на "проблемные" расчеты курсовых разниц.После того как удалось выборочно удалить проводки и блокирующие движения из РегистраторРасчетов, мы сможем продолжить очистку.
Теперь, когда блокирующие ссылки удалены, мы можем:
РасчетКурсовыхРазниц за проблемные периоды и пометим их на удаление.На этом этапе мы полностью очищаем систему от старых, некорректных расчетов курсовых разниц.
Теперь, когда "поле чисто", мы приступаем к воссозданию корректных данных. Нам необходимо повторно провести все валютные документы, проведение которых было отменено на Шаге 2. Критически важно соблюдать хронологический порядок проведения документов. Начинайте с самого раннего документа в проблемном периоде и двигайтесь к поздним.
После того как все валютные документы проведены в правильном порядке, мы можем заново выполнить процедуру закрытия месяца для всех затронутых периодов, начиная с самого раннего. Убедитесь, что все этапы, в том числе:
Переоценка денежных средствПереоценка расчетов с клиентамиПереоценка расчетов с поставщикамибудут выполнены. Система заново сформирует документы РасчетКурсовыхРазниц и рассчитает их исходя из текущих настроек и корректных движений.
Процесс принудительного пересчета курсовых разниц в 1С:ERP может быть сложным и требовать глубокого понимания внутренних механизмов системы. Следуя этим подробным инструкциям, вы сможете добиться корректного результата.