Как остановить отчет в 1с
Перейти к содержимому

Как остановить отчет в 1с

  • автор:

Прервать формирование отчёта в 1С:БП 8.3

Был задан такой вопрос в 1С: почему нет возможности прервать исполнение ошибочно запущенного отчёта? Приходится аварийно завершать сеанс работы с приложением.
Это СЪЕДАЕТ РАБОЧЕЕ ВРЕМЯ ПОЛЬЗОВАТЕЛЕЙ ПРОГРАММЫ.
1С:БП8.3(8.3.5.1383) ред.3.0(3.0.38.51)

Вчера получен ответ от разработчиков:

«Формирование отчета происходит на сервере, а прерывание доступно только на клиенте

В серверном режиме работы формирование отчетов не блокирует интерфейс, и если отчет запущен ошибочно, то его можно просто закрыть или изменить его настройки и запустить формирование заново, не дожидаясь пока он сформируется»

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

Формирование отчета, занимающее продолжительное время, может быть прервано пользователем нажатием клавиши Esc. При этом отчет сформирован не будет. Эта возможность применяется для того, чтобы отказаться от формирования отчета после начала его формирования.

После нажатия клавиши Esc выводится вопрос: «Прервать выполнение обработки?». При нажатии кнопки «Да» формирование отчета прекращается. При нажатии кнопки «Нет» формирование отчета продолжается дальше.

Заметим, что выдача вопроса может произойти не в сам момент нажатия клавиши Esc, а несколько позже. Это объясняется тем, что прерывание формирования отчета может выполняться системой только на определенных стадиях.

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

В зависимости от устройства конкретной обработки та часть действий, которая уже выполнена до нажатия клавиши Esc, будет отменена или наоборот записана. При прерывании проведения документа отменяется весь процесс проведения, и документ возвращается к состоянию до начала проведения. То есть документ не может быть проведен частично.

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

Другие материалы по теме:

Нас находят: как отменить формирование отчета в 1с 8 2, как остановить формирование отчета в 1с 8 2, как остановить обработку в 1с 8 2, как остановить формирование отчета в 1с, остановить обработку в 1с 8 2, как отменить формирование отчета в 1с, как остановить проведение документов в 1с, отменить формирование отчета в 1с, остановить формирование отчета в 1с, как отменить обработку в 1с 8 2

Прервать выполнение отчета или обработки

Это можно сделать с помощью оператора ОбработкаПрерыванияПользователя(), рекомендуется использовать внутри циклов. При нажатии пользователем комбинации клавиш Ctrl+Break, происходит прерывание выполнения и выдается соответствующее сообщение. Например:

Пока Выборка.Следующий() Цикл
ОбработкаПрерыванияПользователя();

КонецЦикла;

О нашем блоге

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

Как прервать обработку в 8.2?

«Нажать» Ctrl-Break программно не вариант? Либо использовать любую программу для автоматизации (Я н.п. обычно пользую AC Tool).

Либо написать скрипт на VB, что-то типа:

  • Скопировать ссылку
  • Перейти

8.
kalimehtar
02.01.12 15:29

(1) yuriyscr,
А экранная клавиатура не спасает?

  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти
  • Скопировать ссылку
  • Перейти

В коде есть ОбработкаПрерыванияПользователя(). На клиенте.

«Прерывание работы модуля клавишами Ctrl+Break может быть выполнено пользователем, только если в процессе работы модуля выполняется вызов процедуры глобального контекста ОбработкаПрерыванияПользователя(). Данная процедура проверяет, не было ли нажатия пользователем клавиш Ctrl+Break, и если было, прерывает работу модуля.
Вызов этой процедуры имеет смысл выполнять внутри циклов, выполнение которых может занять продолжительное время.

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

Прерывание работы модуля возможно не во всех обработчиках, а только в тех, которые сопровождают явно вызываемые пользователем действия в формах или в глобальном командном интерфейсе. Например, возможно прерывание обработчика Нажатие() элемента управления Кнопка, но невозможно прерывание обработчика формы ПриОткрытии().

Следует учитывать, что прерывание выполняется только в момент вызова процедуры ОбработкаПрерыванияПользователя(). Выполнение длительных операций вызываемых из модулей, например, запросов, не может быть прервано.»

Так ведь дело в том, что нету клавиши «Пауз\Брэйк».
А с экранной клавиатуры не получится — т.к. фокус (активное окно/задача) — не обработка.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *