Случайное изменение данных в закрытых периодах — один из самых неприятных сценариев в работе бухгалтера и системного администратора 1С. Достаточно одному пользователю изменить ключевой реквизит в карточке справочника или первичном документе годовой давности, а затем согласиться на предложение системы перепровести документы, как вся цепочка последовательности нарушается. В результате «плывет» себестоимость, искажается финансовый результат и меняются тысячи проводок в уже сданных периодах.
В этой статье мы детально разберем реальную ситуацию: пользователь перепровел закрытие месяца за прошлый год из-за корректировки карточек основных средств (ОС). Мы проанализируем, почему это происходит с технической точки зрения, рассмотрим пошаговые методы восстановления данных (даже если у вас остался всего один актуальный бэкап) и настроим надежную систему защиты базы от подобных инцидентов в будущем.
Для начала проанализируем взаимосвязь между справочником основных средств и расчетом себестоимости в программе 1С:Бухгалтерия. Проблема кроется в механизме работы периодических регистров сведений и логике начисления амортизации:
Параметры амортизации ОС, Состояния ОС организаций и другие.20, 23, 25). Из-за отсутствия этих сумм себестоимость выпускаемой продукции или услуг искусственно занижается. При закрытии последующих месяцев программа по цепочке пересчитывает стоимость списания номенклатуры (по ФИФО или средней стоимости), финансовый результат и налог на прибыль за весь последующий год.Прежде чем приступать к восстановлению проводок, необходимо зафиксировать текущую картину и выявить виновные объекты. Для этого мы рекомендуем использовать встроенный инструмент Журнал регистрации. Настроим отбор следующим образом:
Данные.Изменение).ОсновныеСредства и документы группы РегламентнаяОперация.Проанализировав журнал регистрации, мы сможем точно определить, какие карточки ОС были изменены, какой пользователь совершил это действие, а также какие именно документы закрытия месяца были принудительно перепроведены.
Если в информационной базе была предварительно включена подсистема Версионирование объектов (раздел Администрирование — Общие настройки), обязательно откроем историю изменений по пострадавшим карточкам ОС. Это позволит нам мгновенно увидеть исходные правильные значения реквизитов (включая дату ввода в эксплуатацию) и вручную вернуть их в первоначальное состояние перед проведением восстановительных работ.
Если у вас есть копия базы данных, сделанная до момента ошибочного перепроведения закрытия месяца, восстановить правильные движения документов можно без ручного вмешательства. Для этого используется специализированная сервисная обработка ВыгрузкаЗагрузкаДанныхXML.
Разберем этот процесс по шагам:
ВыгрузкаЗагрузкаДанныхXML через меню Функции для технического специалиста.РегламентнаяОперация (или конкретный вид документа, отвечающий за расчет амортизации и закрытие затратных счетов).К сожалению, на практике часто выясняется, что регламентное резервное копирование было настроено некорректно, и единственный файл бэкапа содержит уже поврежденную базу данных. Рассмотрим альтернативные методы поиска исходных данных:
1Cv8.1CD) и расположена на Windows-сервере или обычном ПК, кликнем правой кнопкой мыши по папке с базой данных, выберем Свойства и перейдем на вкладку Предыдущие версии. С большой долей вероятности операционная система хранит автоматические снимки папки за прошлые дни, из которых можно извлечь копию файла базы данных до сбоя..ldf), который позволяет восстановить состояние таблиц базы данных на любую конкретную минуту до момента изменения карточек ОС и запуска регламентных операций.%temp% и каталогов в AppData\Local\1C на предмет наличия файлов с расширением .dt или архивных копий папок баз данных.Если найти бэкап не удалось ни одним из способов, придется перезакрывать месяцы в копии базы данных, сопоставлять полученные результаты с ранее сданной бумажной отчетностью и корректировать расхождения ручными проводками (документ Операция, введенная вручную) в текущем открытом периоде в соответствии с правилами исправления ошибок в бухучете.
Чтобы исправить допущенные ошибки в параметрах начисления амортизации ОС, категорически нельзя править исторические документы принятия к учету задним числом. В системе предусмотрены штатные документы корректировки. Рассмотрим пример программного создания документа изменения параметров амортизации:
// Создание документа для изменения параметров амортизации в текущем периоде
НовыйДокумент = Документы.ИзменениеПараметровАмортизацииОС.СоздатьДокумент();
НовыйДокумент.Дата = ТекущаяДата();
НовыйДокумент.Организация = Справочники.Организации.НайтиПоРеквизиту("ИНН", "7701010101");
НовыйДокумент.ОтражатьВБухгалтерскомУчете = Истина;
НовыйДокумент.ОтражатьВНалоговомУчете = Истина;
// Заполнение табличной части основными средствами
НоваяСтрока = НовыйДокумент.ОС.Добавить();
НоваяСтрока.ОсновноеСредство = Справочники.ОсновныеСредства.НайтиПоНаименованию("Дорогостоящий производственный станок");
НоваяСтрока.СрокПолезногоИспользованияБухгалтерскийУчет = 84; // Новый срок в месяцах
НовыйДокумент.Записать(РежимЗаписиДокумента.Проведение);
Использование документов группы Изменение параметров амортизации ОС гарантирует, что новые параметры вступят в силу со следующего месяца после проведения документа, а вся история начислений за прошлые периоды останется в целости и сохранности.
Для предотвращения подобных критических ситуаций в будущем необходимо настроить комплексную систему безопасности и резервирования данных.
Администрирование — Настройки пользователей и прав — Даты запрета изменения. Включим эту опцию и установим дату запрета на последний день закрытого квартала или года. Для обычных бухгалтеров период должен закрываться жестко сразу после сдачи отчетности. Для главного бухгалтера можно настроить индивидуальную отсрочку на несколько дней, но прошлые периоды должны быть закрыты для редактирования абсолютно для всех, включая администраторов.Основные средства и документов их движения. Изменять эти данные должен только ответственный сотрудник бухгалтерской службы.