Отмена проведения, движений и правок в базе 1С

· 9 мин

Содержание

Чтобы откатить проведение документа, откройте его и нажмите кнопку «Отменить проведение» на верхней панели — движения по регистрам пропадут сразу, а сам документ останется в базе непроведённым. Если документов много, их отменяют пачкой прямо из списка, через Ещё → Отменить проведение.

Но «отменить изменения» для разных людей означает разное: кто-то хочет убрать проводки, кто-то — стереть следы в журнале событий, а кто-то откатить правку в Конфигураторе. Ниже разберём все эти случаи по отдельности, от самого безопасного действия к самому тяжёлому — восстановлению из копии.

Сначала определитесь, что именно нужно вернуть назад.

Что именно нужно отменить в 1С?

Снятие проведения одного документа

Самый частый случай — провели документ не глядя, он сформировал лишние движения. Проведение отменяется в два клика.

  1. Откройте нужный документ двойным щелчком из списка.
  2. На верхней командной панели найдите кнопку «Отменить проведение» (рядом с кнопкой «Провести и закрыть»). Если её не видно, она прячется под Ещё.
  3. Нажмите — статус документа сменится с проведённого на непроведённый.

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

Стоит различать три близких действия, которые часто путают:

ДействиеЧто происходит с движениямиЧто происходит с документом
Отменить проведениеУдаляютсяОстаётся в базе (непроведённый)
Пометить на удалениеОстаются до обработки удаленияПомечается на удаление
Удалить помеченные объектыУдаляются вместе с документомУдаляется из базы

Если нужно просто убрать влияние документа на учёт — отменяйте проведение. Пометка на удаление и последующая обработка Операции → Удаление помеченных объектов — это уже про полное избавление от документа, и 1С перед удалением проверит, не ссылается ли на него что-то ещё.

Отмена проведения ничего не удаляет из самого документа — ни табличные части, ни реквизиты. Вы просто убираете его влияние на учёт. Это обратимое действие: провести заново можно в любой момент.

Отдельная ситуация — закрытый период. Если месяц уже закрыт и защищён от изменений (Операции → Закрытие периода или настройка даты запрета редактирования), 1С не даст снять проведение, пока дату запрета не сдвинут. Это защита от случайной порчи сданной отчётности, и обходить её без согласования с главбухом не стоит.

Групповая отмена проведения из списка

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

  • Откройте список документов нужного вида (например, Продажи → Реализация (акты, накладные)).
  • Выделите строки: щёлкайте с зажатым Ctrl по отдельным документам или Shift — чтобы захватить диапазон.
  • Нажмите Ещё → Отменить проведение.

1С снимет проведение со всех выделенных документов разом и покажет служебное сообщение, если по какому-то из них отмена не удалась (например, из-за закрытого периода).

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

Для разбора завалов удобна обработка «Групповое изменение реквизитов» и Ещё → Групповое перепроведение документов (в разделе администрирования или сервиса). Но перепроведение — это не отмена, а пересчёт движений заново по текущим настройкам; если цель именно убрать движения, пользуйтесь «Отменить проведение».

Правка движений вручную, когда перепровести нельзя

Иногда перепроводить документ опасно: настройки учёта с тех пор поменялись, и при повторном проведении суммы встанут иначе, чем в сданной отчётности. Тогда проводки правят руками, не трогая проведение.

  1. Откройте документ.
  2. Нажмите кнопку результатов проведения — обычно это «ДтКт» (дебет-кредит) или Ещё → Движения документа.
  3. В открывшейся форме поставьте флажок «Ручная корректировка (разрешает редактирование движений документа)».
  4. Отредактируйте строки: поправьте суммы, счета, субконто или удалите лишние записи по регистрам.

После включения ручной корректировки документ перестаёт автоматически пересчитывать движения при проведении — он держит ровно то, что вы вписали. Это и плюс, и риск.

Включённая ручная корректировка замораживает движения. Если позже вы измените сам документ (добавите строку в накладную), проводки сами не обновятся. Снимайте флажок, когда ручная правка больше не нужна, — тогда 1С снова начнёт считать движения автоматически.

Ручная корректировка — инструмент точечный. Для одной-двух спорных проводок он незаменим, но наводить им порядок в сотнях документов не стоит: потеряете связь между документами и учётом.

Проверка: как убедиться, что движения действительно убраны

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

  • Оборотно-сальдовая ведомость (Отчёты → Оборотно-сальдовая ведомость) покажет, изменились ли обороты и сальдо по нужным счетам за период. Если документ был единственным по операции, соответствующая строка обнулится.
  • Отчёт по проводкам или Анализ субконто помогут найти, не остались ли записи с ручной корректировкой: такие проводки в отчётах обычно помечены отдельно.
  • Для регистров накопления (взаиморасчёты, остатки товаров) используйте универсальный отчёт по регистру или штатные ведомости раздела — убедитесь, что движения снятого документа исчезли.

Если после отмены проведения обороты не изменились, скорее всего, документ и не делал движений — например, был проведён «вхолостую» или его движения перекрыты ручной корректировкой другого документа.

Сверку по закрытым операциям (расчёты с контрагентами, зарплата) логично завершить актом сверки или расчётной ведомостью — так видно итог целиком, а не только по одному документу.

Журнал регистрации: что он фиксирует и можно ли стереть запись

Журнал регистрации — это лог действий в базе: кто и когда вошёл, что провёл, что изменил, какие были ошибки. Открывается он в режиме Конфигуратора через Администрирование → Журнал регистрации, а в пользовательском режиме — из раздела администрирования, если такая команда включена в конкретной конфигурации.

Важный момент: отдельную запись из журнала удалить нельзя. Журнал пишется системой и не редактируется по строкам — в этом его смысл как средства контроля. Что с ним реально можно сделать:

  • Сократить журнал — в Конфигураторе Администрирование → Настройка журнала регистрации задать дату, до которой записи удаляются, либо полностью очистить лог.
  • Ограничить срок хранения — там же выбрать период (неделя, месяц, год), после которого старые события автоматически вычищаются.
  • Снизить детальность — отключить регистрацию части событий, чтобы журнал не рос.

Чистка журнала регистрации уничтожает историю действий всех пользователей, а не только вашу. Если база используется несколькими людьми и журнал ведётся для контроля, сокращать его без ведома администратора не нужно — восстановить удалённые записи штатными средствами невозможно.

Путать журнал регистрации с движениями документа не стоит: первое — служебная история, второе — учётные данные. Отмена проведения правит движения, но запись о том, что вы отменили проведение, в журнале как раз останется.

Откат изменений при работе в Конфигураторе и в коде

Если «изменение» — это правка конфигурации, а не документа, механизмы отмены другие.

Правки, ещё не принятые в базу. Пока вы меняли метаданные или модули, но не нажали «Обновить конфигурацию базы данных», всё лежит в основной конфигурации. Откатить к рабочему состоянию можно командой Конфигурация → Конфигурация базы данных → Вернуться к конфигурации БД. Она сотрёт все несохранённые в базу изменения и вернёт конфигурацию к той, по которой база сейчас работает.

Отмена в редакторе. Обычная связка Ctrl+Z отменяет последние действия в открытом модуле или форме, Ctrl+Y — возвращает. Работает это в пределах текущего сеанса редактирования.

Откат программной транзакции. В коде изменения данных оборачивают в транзакцию, и при ошибке её откатывают целиком:

НачатьТранзакцию();
Попытка
    // запись объектов, движений и т. п.
    ЗафиксироватьТранзакцию();
Исключение
    ОтменитьТранзакцию();
    ВызватьИсключение;
КонецПопытки;

ОтменитьТранзакцию() возвращает базу к состоянию до НачатьТранзакцию() — все записи внутри блока отменяются разом. Это штатный способ не оставить данные в полупроведённом виде, если посреди обработки что-то пошло не так.

Расширения конфигурации . Если изменения внесены через расширение (а не в типовую конфигурацию ), их проще всего откатить, отключив расширение в списке Конфигурация → Расширения конфигурации — функциональность вернётся к типовой без правки основной конфигурации.

Правки конфигурации лучше хранить в хранилище конфигурации или в системе контроля версий — тогда откат к любой прошлой версии становится рутиной, а не аварией.

Возврат базы к прежнему состоянию из копии

Когда ошибку штатно уже не отменить — удалили не то, перепровели пол-базы, испортили данные массово, — остаётся откат на резервную копию. Это самое тяжёлое средство: вместе с ошибкой пропадёт всё, что внесли в базу после создания копии.

Для файловой базы есть два пути:

  • Загрузка выгрузки .dt — в Конфигураторе Администрирование → Загрузить информационную базу, выбрать заранее сделанный файл .dt. Текущие данные полностью заменяются содержимым выгрузки.
  • Замена файла базы — закрыть все сеансы и подменить файл 1Cv8.1CD на копию из бэкапа. Способ грубее, применяйте, только если понимаете, что делаете.

Для клиент-серверной базы восстановление идёт средствами СУБД (например, восстановление бэкапа PostgreSQL или MS SQL) — этим занимается администратор сервера. Подменять что-то в такой базе вручную, в обход СУБД, нельзя.

Отдельно стоит продуманная практика резервного копирования. Чтобы откат на копию вообще был возможен, копии должны делаться регулярно и автоматически:

  • в файловой базе — через Администрирование → Резервное копирование и восстановление (в типовых конфигурациях есть настройка расписания);
  • в клиент-серверной — средствами СУБД по расписанию;
  • перед любой рискованной операцией (обновление, массовая обработка, загрузка данных) — ручная копия «здесь и сейчас».

Хорошая копия — это та, из которой вы хотя бы раз пробовали восстановиться. Непроверенный бэкап в момент аварии часто оказывается пустым или битым.

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

Поэтому к восстановлению из копии прибегают в последнюю очередь. Снятие проведения, ручная корректировка и возврат к конфигурации БД решают 9 задач из 10, не трогая базу целиком.

Перед откатом изменений проверьте
Выполнено: 0 / 5

Частые вопросы

Чем отмена проведения отличается от удаления документа?
Отмена проведения убирает только движения по регистрам, сам документ остаётся в базе и его можно провести заново. Удаление убирает и документ, и его движения — через пометку на удаление и последующую обработку «Удаление помеченных объектов».
Вернутся ли движения, если провести документ заново?
Да, но они пересчитаются по текущим настройкам учёта и курсам, а не восстановятся в прежнем виде. Если настройки с момента первого проведения менялись, суммы могут отличаться.
Почему кнопка «Отменить проведение» неактивна?
Чаще всего документ попал в закрытый период или под дату запрета редактирования. Сдвинуть дату запрета может пользователь с соответствующими правами — без этого снять проведение не выйдет.
Можно ли отменить закрытие месяца?
Да. Документ «Закрытие месяца» (или «Регламентные операции») отменяют так же, как любой другой — снятием проведения. После этого регламентные операции месяца придётся выполнить заново.
Как убрать движения, но оставить документ проведённым?
Включите ручную корректировку движений в форме «ДтКт» и удалите строки вручную. Документ останется проведённым, но без автоматического пересчёта проводок.