Остановить, отозвать, сторнировать: отмена операций в 1С 8.3

· 11 мин

Содержание

Долгий отчёт или обработку в 1С прерывают сочетанием Ctrl+Break. Проведённый документ отменяют командой «Отмена проведения» в списке, а если период закрыт — сторнируют или корректируют. Зависшее фоновое задание снимают в Администрирование → Обслуживание → Регламентные операции, а запрос, который висит на сервере, — через консоль кластера или средствами СУБД.

С отправкой сложнее. Отчёт, ушедший в ФНС или СФР, отозвать нельзя: можно только отправить корректировку. Документ ЭДО, который контрагент ещё не подписал, отзывают, а подписанный — аннулируют по соглашению сторон. Ниже — каждый случай по порядку, от безопасного к радикальному.

Что именно вы хотите отменить

Слово «запрос» в 1С означает разное. Бухгалтер имеет в виду отправку отчёта или документа, программист — запрос к базе данных, администратор — задание на сервере. Способ отмены зависит от того, на каком этапе операция сейчас.

Что нужно остановить или отменить?

Как отменить отправку отчёта или документа ЭДО из 1С

Регламентированная отчётность через 1С-Отчётность

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

Если отчёт ушёл, отозвать его у контролирующего органа нельзя. Так устроен документооборот с ФНС, СФР и Росстатом: файл принят оператором связи, дальше его обрабатывает инспекция.

Что делать после отправки:

  1. 📥 Дождитесь квитанции о приёме или уведомления об отказе. Оба документа появятся в журнале обмена.
  2. ❌ Если пришёл отказ в приёме, отчёт считается непредставленным. Исправьте ошибку и отправьте первичный отчёт заново.
  3. ✏️ Если отчёт принят, но в нём ошибка, создайте новый отчёт за тот же период и укажите номер корректировки 1, затем 2 и так далее.
  4. 🔁 Если отправили не тот отчёт, например за другой квартал, тоже подавайте корректировку. Повторная отправка «первички» обычно заканчивается отказом.

Не удаляйте из базы отправленный отчёт, даже ошибочный. В нём хранится история: квитанции, протоколы, дата отправки. Без неё сложно доказать, что отчёт был сдан в срок.

Документы ЭДО

С электронными документами контрагентам вариантов больше. Всё зависит от того, на какой стадии документ.

СтадияЧто можно сделатьКто участвует
Создан, не подписанИзменить или удалитьТолько вы
Подписан и отправлен, ответа нетОтозвать или ждать отклоненияВы, контрагент видит отзыв
Контрагент отклонилИсправить и отправить новыйВы
Подписан обеими сторонамиАннулироватьОбе стороны

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

💡 Если ошибка в подписанном УПД касается суммы или количества, аннулирование не всегда лучший путь. Часто проще выставить корректировочный документ: он не требует согласия контрагента на отмену, а отражает изменение.

Платёжки, отправленные в банк

Платёжное поручение из 1С уходит через «1С:ДиректБанк» или выгрузку файла. Отменить его можно только в банке и только пока он не исполнил платёж. Обычно это делают в интернет-банке или звонком в поддержку. Документ в 1С при этом остаётся, и его стоит пометить, чтобы не провести списание дважды.

Как прервать долгий запрос, отчёт или обработку

Самый частый случай: запустили отчёт за пять лет без отборов, и программа «повисла». На самом деле она работает, просто очень долго.

Прерывание с клавиатуры

Нажмите Ctrl+Break. Платформа спросит, прервать ли выполнение. После подтверждения операция останавливается, данные не меняются: отчёт ничего не записывает в базу.

Если Ctrl+Break нет на ноутбуке, используйте замену:

  • ⌨️ Ctrl+Fn+B или Ctrl+Fn+Pause — на многих ноутбуках;
  • ⌨️ экранная клавиатура Windows (osk.exe) — там есть клавиша Pause.

В клиент-серверном варианте прерывание срабатывает не мгновенно. Сервер должен дойти до места, где проверяется флаг прерывания. Тяжёлый запрос к СУБД может завершаться ещё несколько минут.

Когда окно не отвечает совсем

Если 1С не реагирует ни на Ctrl+Break, ни на закрытие окна:

  1. Подождите 3–5 минут. Часто клиент «оживает», когда сервер вернёт ответ.
  2. Снимите процесс 1cv8.exe или 1cv8c.exe в диспетчере задач. Это закроет клиентское окно.
  3. Помните, что снятие процесса на компьютере пользователя не останавливает запрос на сервере. Он может работать дальше и держать блокировки. Как его остановить — в разделе про сервер ниже.

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

Обработки, которые пишут данные

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

Что проверить после прерывания:

  • 📄 журнал документов за период — какие перепроведены, какие нет;
  • 🧮 оборотно-сальдовую ведомость по ключевым счетам;
  • 🔁 при закрытии месяца — статус операций в помощнике: прерванную операцию запустите повторно.

Отмена проведения и сторно проводок

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

СпособКогда подходитРиски
Отмена проведенияПериод открыт, документ не нужен в учётеДокументы-основания и последующие документы теряют связь с движениями
Исправить и перепровестиПериод открыт, ошибка в сумме или реквизитеНужен повторный расчёт себестоимости и закрытие месяца
Сторно или корректировкаПериод закрыт, отчётность сданаТребует аккуратного выбора: сторно влияет на текущий период

Отменить проведение

  1. Откройте список документов, например Покупки → Поступление (акты, накладные, УПД).
  2. Выделите документ.
  3. В меню Ещё выберите «Отмена проведения». Документ останется в базе, но без движений.

Если документ больше не нужен, после отмены проведения поставьте пометку удаления. Окончательно его удалит обработка удаления помеченных объектов. Она находится в Администрирование → Обслуживание, в группе «Корректировка данных».

💡 Сразу удалять не стоит. Пометка удаления обратима, а удалённый объект восстанавливается только из резервной копии.

Если период закрыт

Если на дату документа установлена дата запрета изменения, программа не даст отменить проведение. Дату задают в Администрирование → Пользователи и права → Даты запрета изменения.

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

Правильный путь — исправление текущим периодом:

  • 🔴 Сторно. В 1С:Бухгалтерии 8 ред. 3.0 есть документ «Сторно документа». Создают его в Операции → Операции, введённые вручную через команду создания. Он формирует те же проводки с минусом.
  • 🟡 Корректировка реализации или поступления. Подходит, когда меняется сумма или количество по согласованию с контрагентом. Документ вводят на основании исходного.
  • 🟢 Ручная операция. Для разовых исправлений проводок, когда нет подходящего документа. Делайте только с пояснением в комментарии.

Сторно и корректировка — бухгалтерские решения. Ошибку прошлых лет в налоговом учёте по правилам НК РФ отражают в зависимости от того, привела ли она к переплате или недоплате налога. Если сомневаетесь, согласуйте способ с главным бухгалтером.

Фоновые и регламентные задания: как остановить и снять из очереди

Многие операции 1С выполняет не в окне пользователя, а в фоне: обмен с сайтом, загрузку курсов валют, обновление полнотекстового индекса, отправку отчётов. Иногда такое задание зависает и тормозит базу.

Где их найти

Откройте Администрирование → Обслуживание → Регламентные операции и перейдите к регламентным и фоновым заданиям. Там две вкладки:

  • 🕒 Регламентные задания — расписание: что и когда запускается автоматически;
  • ⚙️ Фоновые задания — то, что выполняется прямо сейчас или выполнялось недавно, со статусом и временем начала.

Как отменить

  1. На вкладке фоновых заданий найдите строку со статусом «Активно» и подозрительно ранним временем начала.
  2. Выделите её и отмените задание командой в панели списка.
  3. Если задание регламентное, откройте его на соседней вкладке и снимите флажок «Включено». Иначе оно стартует снова по расписанию.

После отмены статус сменится на «Отменено». Если задание выполняло долгий запрос, оно завершится, когда сервер обработает прерывание.

💡 Для ИТ-специалиста: в файловом режиме регламентные задания выполняются только в открытом сеансе клиента. Закрыли все окна 1С — задания остановились. В клиент-серверном режиме они работают на сервере независимо от пользователей. Разрешение на их выполнение задаётся в свойствах информационной базы в консоли кластера: флажок «Блокировка регламентных заданий включена».

Отмена запроса на сервере 1С и в СУБД

Это работа администратора. Нужна, когда запрос висит и держит блокировки, а пользователь уже закрыл программу.

Через консоль администрирования серверов 1С

  1. Откройте консоль, подключитесь к центральному серверу.
  2. Раскройте кластер → информационную базу → «Сеансы».
  3. Найдите сеанс по пользователю и колонкам с длительностью вызова и временем ожидания блокировки.
  4. В контекстном меню сеанса есть два действия: прервать текущий серверный вызов (в свежих версиях платформы) или удалить сеанс целиком.

Прерывание вызова мягче: пользователь останется в программе, а операция завершится с ошибкой. Удаление сеанса выбрасывает пользователя полностью.

Из командной строки сеансы смотрят утилитой rac. Список выдаёт rac session list, полный перечень доступных подкоманд — rac help session.

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

Через Microsoft SQL Server

Если запрос дошёл до СУБД и сервер 1С его не прерывает, остановите его на уровне базы. В SQL Server Management Studio найдите процесс:

-- активные запросы к базе 1С
SELECT r.session_id, r.status, r.wait_type, r.total_elapsed_time / 1000 AS sec,
       r.blocking_session_id, DB_NAME(r.database_id) AS db
FROM sys.dm_exec_requests r
WHERE r.database_id = DB_ID('buh_main')
ORDER BY r.total_elapsed_time DESC;

Найденный session_id завершают командой:

KILL 57;

Число 57 — пример, подставьте свой номер. Откат долгой транзакции может занять столько же времени, сколько она выполнялась.

Через PostgreSQL

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

-- запросы дольше 5 минут
SELECT pid, now() - query_start AS dur, state, left(query, 80)
FROM pg_stat_activity
WHERE datname = 'buh_main' AND state <> 'idle'
  AND now() - query_start > interval '5 minutes';

SELECT pg_cancel_backend(12345);    -- отменить запрос
SELECT pg_terminate_backend(12345); -- закрыть соединение

После завершения соединения со стороны СУБД рабочий процесс 1С получит ошибку, а пользователь — сообщение о разрыве связи с базой. Это нормально.

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

Как не доводить до отмены: ограничения и таймауты

Отменять приходится реже, если запросы не разрастаются до бесконечности.

Для пользователей:

  • 📅 Ставьте период отчёта. Отчёт за месяц строится секунды, за всю историю базы — минуты или часы.
  • 🔍 Добавляйте отборы по организации, складу, контрагенту.
  • 🧾 Не открывайте детализацию до документов в оборотно-сальдовой ведомости на всю базу.
  • 🌙 Закрытие месяца и групповое перепроведение запускайте, когда в базе мало людей.

Для администратора:

  • ⏱️ Ожидание управляемой блокировки в 1С ограничено: при превышении операция падает с ошибкой «Превышено максимальное время ожидания предоставления блокировки». Это не повод увеличивать таймаут, а сигнал искать, кто держит блокировку.
  • 🧠 В свойствах кластера задайте «Безопасный расход памяти за один вызов». Вызов, который съест больше, сервер прервёт сам, не дожидаясь падения рабочего процесса.
  • 🔎 Включите технологический журнал на события долгих запросов, чтобы видеть их до жалоб.
  • 🧹 Поддерживайте обслуживание СУБД: обновление статистики и индексов. Без него запросы, которые раньше шли секунду, начинают идти минутами.

Для разработчика:

  • 🧪 В консоли запросов отлаживайте с ВЫБРАТЬ ПЕРВЫЕ 100, а не на всей таблице.
  • ⚙️ Тяжёлые операции выносите в фоновое задание с индикатором и кнопкой отмены. Пользователь видит прогресс и может остановить процесс сам.
  • 📏 Избегайте соединений с виртуальными таблицами без параметров периода: они читают весь регистр.

Частые ошибки при отмене операций

  • ❗ Снимают процесс 1С и считают, что всё остановлено. Запрос на сервере продолжает работать. Проверьте сеансы в консоли.
  • ❗ Повторно отправляют первичный отчёт вместо корректировки. Инспекция отказывает, потому что первичный уже принят.
  • ❗ Отменяют проведение документа, на основании которого созданы другие. Например, поступление, по которому уже есть реализация. Себестоимость в последующих документах станет неверной до перепроведения.
  • ❗ Отключают регламентное задание и забывают включить. Через месяц обнаруживают, что курсы валют не загружались. Записывайте, что отключили и зачем.
  • ❗ Сдвигают дату запрета, чтобы поправить прошлый период. Ломают уже сданную отчётность. Используйте сторно текущей датой.

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

Можно ли отменить отчёт, отправленный в налоговую из 1С?
Нет. Отправленный отчёт отозвать нельзя. Если пришёл отказ в приёме, отчёт считается несданным — исправьте и отправьте заново. Если принят с ошибкой — подайте корректировку.
Что будет с данными, если прервать отчёт через Ctrl+Break?
Ничего. Отчёт только читает данные. Прерывание останавливает построение, база не меняется.
Почему после отмены фонового задания база всё ещё тормозит?
Задание может завершать текущий запрос к СУБД. Подождите несколько минут. Если не помогает — найдите сеанс в консоли кластера и прервите серверный вызов.
Чем сторно отличается от отмены проведения?
Отмена проведения убирает движения задним числом, как будто документа не было. Сторно оставляет исходные проводки и добавляет обратные текущей датой. Для закрытого периода подходит только второй вариант.
Можно ли отменить удаление помеченных объектов?
Нет. Удалённые объекты возвращаются только из резервной копии. Поэтому перед удалением сделайте выгрузку базы или копию средствами СУБД.